Inspiration
The inspiration behind our machine learning app that can diagnose blood diseases runs deep within us. Both of us, as teammates, have been touched by the impact of blood diseases within our own families. Witnessing our loved ones facing the challenges posed by these conditions ignited a passion to create a tool that could potentially alleviate the suffering of others. Our personal connections served as a powerful driving force, propelling us to combine our technical expertise with our heartfelt motivations. Through this app, we aim to provide timely and accurate diagnoses, ultimately contributing to better healthcare outcomes for those at risk and underscoring the importance of empathy-driven innovation.
What it does
The web application prompts the user to upload an image of their blood cells. The application will then utilize machine learning to identify possible diseases and inform the user of their diagnosis. The possible diagnoses include sickle cell disease, thalassemia, and leukemia. If there were no distinguishable features of a listed disease, the application will inform the user that their blood cells are healthy. It also includes a very brief explanation of the diseases and their symptoms.
How we built it
First, we used fast.ai libraries to create a machine-learning model built within Kaggle. This first step uses ResNet-18 as a neural network to train our specified model. ResNet-18 is a convolutional neural network that holds millions of reference photos in thousands of different categories and works to identify objects. Next, we trained our specific model using 8000 images of the diseases and healthy blood cells with various conditions and edge cases. This model was then implemented into a second file that uses our pre-trained model to apply to our web application. To create the web application, we used Gradio to locally host a website that could apply the machine learning model. We then refined the UI and added text to guide the user through the process.
Challenges we ran into
One of the biggest challenges that we ran into was learning how to implement our model into Gradio. Having never applied a model to Gradio in the past, we were tasked with learning the development process and application of Gradio. Eventually, we were able to overcome the difficulties by lots of trial and error and various video tutorials regarding model application and the syntax of Gradio in python.
Accomplishments that we're proud of
We are extremely proud of the accuracy rate yielded by our model and the intuitive nature of the web application. Having yielded an approximate 95% accuracy from our test trial images, we are thrilled with the high rate of correctness that our machine learning app has achieved. The app's user-friendly interface is designed with accessibility in mind, ensuring that individuals, medical professionals, and caregivers can navigate it with ease. Seeing our project come to fruition has deepened our conviction in the potential of technology to bridge gaps in healthcare, and it reinforces our commitment to applying our skills to causes that hold personal significance.
What we learned
As a whole, we expanded our knowledge regarding maching learning models and web application development as a whole. Having gone through the process of creating a functioning application required the use of new concepts such as using Gradio and increasing error rate percentage rates within the model.
What's next for Blood Cell Disease Identifier using Machine Learning
We hope to expand the web application in the future. While easy and simple to use as of now, we hope to add more to the app to increase accuracy, information retention, and advice. One of the biggest improvements to be made is increasing the variety of blood diseases detectable by our model. With more time available after this event, we will be able to advance our front regarding the number of detectable diseases.
Log in or sign up for Devpost to join the conversation.