There are plenty of sites and blog posts out there that claim to be able to diagnose your symptoms and suggest your potential risk for various diseases and ailments. We wanted to create something that could use real, hard data and intelligently calculate any given person's risk for personal disaster so that they might be able to determine with a measure of truth whether or not they should take precautionary measures.
What it does
In the current version, DeepMedX provides two tests, one for predicting a user's risk for Heart Failure and another for a Heart Attack, each of which uses parameters generated by our Machine Learning model to predict with a high degree of accuracy a person's risk of getting a Heart Attack or experiencing Heart Failure.
How we built it
We generated a machine learning model based on data sets from the categories we were testing for, then used those models to design our prediction algorithms that work behind the scenes in our application to deliver results to our user. We created the ML models in the programming language R, and exported those models into flow charts with the specific parameters generated by the model to use in designing our prediction algorithm. We designed our application using Figma, which is an open source design tool. We then created our overall application in Xcode using the swift programming language to build it for IOS devices.
Challenges we ran into
At first, we attempted to use ReactNative to build our application, but then we experienced several issues with missing dependencies, layout configuration, and navigation. After burning several hours attempting to resolve our issues with the ReactNative framework, we decided we would switch to Xcode in favor of it's simpler design interface. Seeing as it was our first time attempting to use ReactNative, we decided it would be better to go with a software we've used before. We also ran into some confusion regarding certain parameters that were affecting the accuracy of our ML models, such as time since previous medical checkup. We were unsure about why certain parameters used in the data set were contributing to prediction accuracy variation simply because we didn't think they would have any real effect on a person's health condition. In the end, we simply decided to go with the variables and parameters that made the most sense to ask for and yielded the best accuracy.
Accomplishments that we're proud of
We're proud to present a result that we built within 24 hours, especially after the countless bugs and errors we had to persevere through and switching application building frameworks midway through. We ended up with a functional, decent looking app, which is all we could really hope for in such a tight time crunch.
What we learned
We should probably test out different frameworks in depth before coming into a hackathon like HackRU next time so that we don't encounter major difficulties like we did this time around. Besides that, we learned that even despite such obstacles, we can have faith that our skills will allow us to present a minimum viable product even in a difficult situation.
What's next for DeepMedX
We're excited to present this product to the organizers of HackRU and see where it takes us in the future!