While malaria preventative efforts have increased in the past few decades, malaria is still contracted by 216 million people each year claiming the lives of 870,000 of those people. Early, accurate diagnosis is paramount to prevent deaths, as the Center for Disease Control (CDC) cites misdiagnosis is the leading cause of death in malaria cases. Malaria, however, is hard to diagnose without lab testing because its symptoms are shared with other diseases. The CDC cites microscopy as the gold standard for malaria diagnosis, but microscopy can take hours for a single patient – in many developing countries this simply isn’t possible due to lack of medical professionals. To achieve high accuracy, sensitivity, specificity and speed, a Convolutional Neural Network (CNN) employing transfer learning capable of edge inferencing was used to conduct binary malaria image classifications. Edge inferencing was a focus of this project as the model must be able to run on the weaker equipment available in most developing countries.
What it does
A webapp platform loads and predicts with a Convolutional Neural Network (CNN) on malaria images. The CNN loaded the NASNetMobile architecture and weights after training on ImageNet then finetuned the model by training the model on the malaria dataset with a low learning rate. The final trained CNN achieved a validation accuracy of 96.2%, a sensitivity of 94.8%, and a specificity of 97.6% after hyperparameter optimization - higher than the performances reported for standard microscopy diagnosis.
How I built it
I used Python, Keras, and Streamlit to develop this app.