Medical device integrations
Apollo is a medical data analysis platform for physicians and patients. Over the course of PennApps, I built wireless integrations with a number of medical devices, including:
- blood pressure monitor
- heart rate monitor
- pulse oximeter
- glucose monitor
I also built integrations with a few wearables to track activity, sleep, and weight, including:
- Fitbit Charge HR wristband
- Aria weight scale
Over the weekend, I tracked all of these aspects of my health, and have transferred the data to the Apollo platform. We've also built an outlier detection system that flags readings that are abnormal - physicians can receive configurable alerts when a high risk patient is detected.
Population health diagnostics
Another exciting prospect of having this data is the ability to do population level analysis. I built a machine learning system to predict diabetes diagnoses based on 8 commonly measured factors.
I built a system to analyze 768 patient data profiles from the National Institute of Diabetes, Digestive, and Kidney Disease. Implemented in the
sckit-learn wrapper to
libsvm, I built a support vector machine to predict patients diagnoses with diabetes by analyzing 8 factors, including:
- Plasma glucose concentration 2hrs in oral glucose tolerance test
- Diastolic blood pressure (mm Hg)
- Triceps skin fold thickness (mm)
- 2-hour serum insulin (mu U/ml)
- BMI (weight in kg/(height in m)^2)
- Diabetes pedigree function (developed in Smith et al. - a tool to quantify family history of diabetes)
Using scikit-learn's grid search helper, I tuned hyperparameters of the model and determined that using a linear kernel function and a C constant of 10 achieved a favorable balance between computational efficiency and predictive accuracy. For performance optimization, all data structures were implemented as numpy arrays, which provides a Python-wrapper to arrays implemented in C++. Using a randomly partitioned 5-fold cross validation metric, accuracy of 77.662% was achieved.