Healthcare today is not the healthcare we deserve. This is largely due to a lack of education and a lack of information. We were inspired to tackle this problem by building something both educational and impactful, so we set out to build the Global Symptom Project.
What it does
We provide an easy way for people to log their symptoms and receive insights into their health using machine learning. Not only can this data be used personally, it is completely de-identified and open sourced so the entire world can query and discover new insights that can impact public health.
How I built it
iOS app and Apple watch app using the latest and greatest xCode 7.1 utilizing swift and a WatchKit 2 extension.
The web app was built with apache web server on an Azure Ubuntu VM using CartoDB, D3, and sci-kit. The map uses a symptom name and the lat/long it gets from the apple watch or phone. We can set this to display a snapshot or a time-lapse. For the insights, we created both a regression and classification algorithm to predict when symptoms might occur, as well as what diseases a person might have. These results are displayed in an intuitive way on the web app.
Challenges I ran into
One of the biggest challenges was using ML. We didn’t have a lot of actual data so we had to simulate a lot of the data, which skewed the predictions. However, once we get more actual data, we can plug it directly into our existing models and keep iterating.
Another challenge was using WatchKit. we had getting it paired with device, getting session from device, and getting navigation not to crash when popping to root controller.
Accomplishments that I'm proud of
We am proud to say that we built a WatchKit 2 app over the weekend and handle logging symptoms to a Microsoft Azure server.
We used ML on Azure!!!
What I learned
While building the iOS/watchkit app, we learned how to manage sessions on the apple watch, how to communicate between the watch and the phone, WatchKit 2 API, and Stay away from cocoa pods with watch extensions.
What's next for Global Symptom Project
During the next month, we hope to polish up the mobile and web apps, build out more insights, and launch the Global Symptom Project. We hope to make a campaign out of this in order for large amount of people to become aware of what we’re doing and download the app. Once we have collected a significant amount of data, we hope to release more data visualizations, improve our models, and work with leading government and academic institutions to figure out how this data can be used effectively.