Diabetic Retinopathy Winner's Interview: 1st place, Ben Graham
Diabetic Retinopathy Winner's Interview: 1st place, Ben Graham
Ben Graham finished at the top of the leaderboard in the high-profileDiabetic Retinopathy competition. In this blog, he shares his approach on a high-level with key takeaways. Ben finished 3rd in the National Data Science Bowl, a competition that helped develop many of the approaches used to compete in this challenge.

Ben's Kaggle profile
The Basics
What made you decide to enter this competition?
I wanted to experiment with training CNNs with larger images to see what kind of architectures would work well. Medical images can in some ways be more challenging than classifying regular photos as the important features can be very small.
Let's Get Technical
What preprocessing and supervised learning methods did you use?
For preprocessing, I first scaled the images to a given radius. I then subtracted local average color to reduce differences in lighting.
For supervised learning, I experimented with convolutional neural network architectures. To map the network predictions to the integer labels needed for the competition, I used a random forest so that I could combine the data from the two eyes to make each prediction.
Were you surprised by any of your findings?
I was surprised by a couple of things. First, that increasing the scale of the images beyond radius=270 pixels did not seem to help. I was expecting the existence of very small features, only visible at higher resolutions, to tip the balance in favor of larger images. Perhaps the increase in processing times for larger images was too great.
I was also surprised by the fact that ensembling (taking multiple views of each image, and combining the results of different networks) did very little to improve accuracy. This is rather different to the case of normal photographs, where ensembling can make a huge difference.
Which tools did you use?
Python and OpenCV for preprocessing. SparseConvNet for processing. I was curious to see if I could sparsify the images during preprocessing; however, due to time constraints I didn't get that working. SparseConvNet implements fractional max-pooling, which allowed me to experiment with different types of spatial data aggregation.
Bio
Ben Graham is an Assistant Professor at the University of Warwick, UK. His research interests are probabilistic spatial models such as percolation, and machine learning.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)