commit 8aa7de25b342c5fbe2f85dcf68918eb5614b92c8
parent 9b8cf40297e4e0bee41e3a7697bb063c04ae7335
Author: Vineet Kumar <git@vineetk.net>
Date: Wed, 22 Apr 2026 09:44:03 -0400
add original proposal presentation and move into assignment/
Diffstat:
7 files changed, 95 insertions(+), 3 deletions(-)
diff --git a/.gitignore b/.gitignore
@@ -4,6 +4,5 @@ guix-root
guix-root-1-link
*.pth
venv/
-report.tex
-report.pdf
-report.bbl
+*.tex
+*.bbl
diff --git a/assignment/proposal.org b/assignment/proposal.org
@@ -0,0 +1,93 @@
+#+TITLE: Diabetic Retinopathy Classification
+#+AUTHOR: Vineet Kumar
+#+DATE:
+#+OPTIONS: H:2 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
+#+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc
+#+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:https://orgmode.org/org-info.js
+#+EXPORT_SELECT_TAGS: export
+#+EXPORT_EXCLUDE_TAGS: noexport
+#+HTML_LINK_UP:
+#+HTML_LINK_HOME:
+#+startup: beamer
+#+LaTeX_CLASS: beamer
+#+LaTeX_CLASS_OPTIONS: [aspectratio=169,bigger]
+#+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %4BEAMER_col(Col) %10BEAMER_extra(Extra)
+#+BEAMER_THEME: metropolis
+#+latex_header: \usepackage{fontspec}
+#+latex_header: \setsansfont{Comic Neue}
+
+* Objective
+** Objective
+- Classifying diabetic retinopathy into 5 classes
+ 1. Healthy retina
+ 2. Mild nonproliferative diabetic retinopathy
+ 3. Moderate nonproliferative diabetic retinopathy
+ 4. Severe nonproliferative diabetic retinopathy
+ 5. Proliferative diabetic retinopathy
+- Input would be a picture of a retina (like those from an optometrist
+ when they scan your eye)
+
+* Materials and Method
+** Materials
+- Using a dataset from Kaggle ("Diabetic Retinopathy Arranged") that
+ has all the labelled images:
+ - There is a class imbalance (73% / 25k images are of healthy
+ retinas), would be accounted for with the loss function when
+ training
+ - Class 0: 25k images
+ - Class 1: 2.4k images
+ - Class 2: 5.2k images
+ - Class 3: 800 images
+ - Class 4: 700 images
+
+** Image Examples
+*** figure
+:PROPERTIES:
+:BEAMER_col: 0.5
+:END:
+#+ATTR_LATEX: :width 0.8\textheight
+#+CAPTION: Class 0: Healthy retina
+[[./retina_class0.jpg]]
+
+*** figure 2
+:PROPERTIES:
+:BEAMER_col: 0.5
+:END:
+#+ATTR_LATEX: :width 0.8\textheight
+#+CAPTION: Class 4: Proliferative diabetic retinopathy
+[[./retina_class4.jpg]]
+
+
+** Method
+- Training a CNN model for classification
+ - There exists a few that can be finetuned on a dataset such as
+ Microsoft's ResNet-50 (2015) and Google's EfficientNet-B0 (2019)
+ - I would be comparing with both models
+- Preprocessing
+ - Resize images to 224x224 (input size that EfficientNet uses)
+ - Apply CLAHE (Contrast Limited Adaptive Histogram Equalization) on
+ luminosity channel of LAB
+ - there is more usable information for a retina in the luminosity
+ channel than the chrominance (colour) channel
+ - I would also compare without CLAHE to see how that affects
+ metrics
+ - Normalize with ImageNet's mean and std
+ - Perform random flips and rotations of the images so that the model
+ can generalize across orientations
+
+** Metrics
+*** Primary
+- Weighted F1-score (to account for class imbalance)
+*** Additional
+- Per-class precision and recall
+- Confusion matrix
+
+* Timeline
+** Timeline
+- Day 1-3: dataset setup, make preprocessing pipeline, perform baseline
+ training on both models
+- Day 4-6: evaluate and compare outputs, tune weighted loss function,
+ maybe train with additional epochs for better metrics (depending on
+ how long it takes)
+- Day 7-9: gather final metrics, start preparing final report and
+ presentation slides
diff --git a/assignment/proposal.pdf b/assignment/proposal.pdf
Binary files differ.
diff --git a/report.org b/assignment/report.org
diff --git a/assignment/report.pdf b/assignment/report.pdf
Binary files differ.
diff --git a/assignment/retina_class0.jpg b/assignment/retina_class0.jpg
Binary files differ.
diff --git a/assignment/retina_class4.jpg b/assignment/retina_class4.jpg
Binary files differ.