File size: 2,010 Bytes
8457837
 
 
5eb9032
8334394
8457837
8334394
8457837
 
 
 
 
8334394
8457837
 
 
 
 
 
 
 
71669e9
8457837
71669e9
 
 
 
 
9ec9841
8457837
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
---
license: apache-2.0
---
### Alzheimer's Disease MRI Image Classifier Report
- 1. Introduction
The goal of this project was to develop a deep learning model capable of classifying MRI images as indicative of Alzheimer's disease or a healthy brain. This report details the approach, methodology, and results of the project.
- 2. Dataset
The project utilized the "Alzheimer_MRI" dataset hosted on Hugging Face Datasets. This dataset contains MRI scans of brains labeled with different stages of Alzheimer's disease. The images are in grayscale and come preprocessed in PIL (Python Imaging Library) format.
Link : dataset
Columns : images, labels
Rows : 5.1k
Labels : {0: 'Mild_Demented', 1: 'Moderate_Demented', 2: 'Non_Demented', 3: 'Very_Mild_Demented'}
- 3. Model Selection and Architecture
Given the constraints of the Hugging Face free tier, the primary consideration was choosing a lightweight and efficient model architecture. The following options were evaluated:
MobileNetV2: Known for its exceptional speed and small model size.
EfficientNet-B0: A good balance between accuracy and efficiency. (5.3 million params)
EfficientNet-B1: A good balance between accuracy and efficiency. (7.8 million params)
SqueezeNet: Very small but less accurate than the other options.
Ultimately, EfficientNet-B0 was chosen due to its balance of accuracy and efficiency. While slightly larger than MobileNetV2, it was expected to fit within the free tier's resource limits and potentially provide better performance for this medical imaging task.
Link : Efficientnet-b0

- #### Hyperparameter Choices:

- - per_device_train_batch_size=32
- - num_train_epochs=25
- - fp16=True : Mixed precision training is enabled to leverage the GPU's Tensor Cores (if available) and speed up training.
- - load_best_model_at_end=True : This ensures that we use the best performing model
- - push_to_hub=True & hub_model_id & hub_strategy = "every_save"
- #. Results and Evaluation
The final model achieved : 
Training:


Validation: