Transfer learning using VGG16, Keras and TensorFlow to detect pneumonia-like X-ray images.
The input data is fed into the model using 220 chest X-ray images taken from Kaggle where 110 labeled normal and 110 labeled with pneumonia to output the probability of each thoracic disease.
We reserved 80% of the data for training (20% of 80% for validation) and 20% for testing:
For this network we used VGG16 and built new FC layers for our model:
The tendency for training and validation loss is to drop to a close value to '0' whereas the training and validation accuracy is to approach to the value of '1'/ 100%. As we can see our model is not overfitting despite the number of images we input and we obtained an accuracy of 95%.
To evaluate classifier output quality we also achieved a larger area under the curve (AUC=0.99):
We can also visualize the performance of the algorithm by computing the confusion matrix:
We notice that the model doesn't detect any False Negative test result.
Using the model trained for normal-pneumonia dataset we tested other 20 COVID-19 chest X-ray images (taken from radiopedia with following results:
AUC = 1.00
Confusion Matrix for COVID-19 samples- Windows 10
- Python 3.7
- Keras,Tensorflow
1.Clone the file
This work was conducted by Cristina Manoila and Alexe Ciurea