A neural network for COVID-19 detection Blog
Domain : Computer Vision, Machine Learning
Sub-Domain : Deep Learning, Image Recognition
Techniques : Deep Convolutional Neural Network, Transfer Learning, VGG19
Application : Image Classification, Medical Imaging, Bio-Medical Imaging
Description
- Identification of COVID-19 pneumonia positive chest X-rays from other non COVID-19 viral pneumonia chest X-rays.
- COVID19 positive images were collected from covid-chestxray-dataset and viral pneumonia images were collected from NIH Chest X-ray dataset.
- 28 COVID-19 chest X-rays and 30 non-COVID-19 viral chest X-ray images were set aside as test data.
- ~150 of the remaining COVID-19 chest X-rays were augmented and the increased their size to ~600.
- Employed transfer learning and fine-tuned the pretrained VGG19 Convolutional Neural Network weights to distinguish COVID-19 positive chest X-rays from other viral chest X-rays.
- Used Tensorflow 2.0 for model training. Incrementally unfroze and tuned all layers in the network.
- Attained a loss (categorical crossentropy) 0. 227 and an accuracy 97% on the test data
Dataset Name :covid-chestxray-dataset, chest X-ray Original Publication: Identifying Medical Diagnoses and Treatable Diseases by Image-Based Deep Learning
Number of Classes : 2
Languages : Python
Tools/IDE : Jupyter. Notebook
Libraries : TensorFlow 2.0, VGG19
| precision |
recall |
f1-score |
support |
---|---|---|---|---|
COVID | 0.98 | 0.97 | 0.97 | 60 |
non COVID | 1.00 | 1.00 | 1.00 | 553 |
accuracy | 1.00 | 613 | ||
macro avg | 0.99 | 0.98 | 0.99 | 613 |
weighted avg | 1.00 | 1.00 | 1.00 | 613 |
| precision |
recall |
f1-score |
support |
---|---|---|---|---|
COVID | 1.00 | 0.93 | 0.96 | 28 |
non COVID | 0.94 | 1.00 | 0.97 | 30 |
accuracy | 0.97 | 58 | ||
macro avg | 0.97 | 0.96 | 0.97 | 58 |
weighted avg | 0.97 | 0.97 | 0.97 | 58 |
Parameter | Value |
---|---|
Base Model | VGG19 |
Optimizer | RMSProp, Stochastic Gradient Descent |
Loss Function | Categorical Crossentropy |
Learning Rate | 0.0001 |
Batch Size | 32 |
Number of Epochs | Round #15 & #2: 15 epochs, Round#3: 25 epochs |