Problem Scenario
Machine Learning has been showing promising results in various applications. Healthcare is one of them. Machine Learning can accurately help doctors diagnose patients. In this use case, we are trying to use machine learning algorithms to predict progression of diabetes of patients.
Description
In this paper, they collected baseline measurements: Age, Sex, BMI, BP, and 6 Serum Measurements (S1, S2,...S6) of 422 patients. One year after that, a measure of diabetes progression was collected. Our goal is to teach the machine to predict the diabetes progression based on these 10 measurements.
Below screenshot is the preview of this dataset. There are 10 measurements and diabetes progression represented as $Y which is rightmost field.
The live demo is available at our Machine Learning Showcase.
Objectives
- Cross Validation: Use Cross Validator (Regression) Snap from ML Core Snap Pack to perform 10-fold cross validation with Linear Regression algorithm. K-Fold Cross Validation is a method of evaluating machine learning algorithms by randomly separating a dataset into K chunks. Then, K-1 chunks will be used to train the model which will be evaluated on the last chunk. This process repeats K times and the average error and other statistics are computed.
- Model Building: Use Trainer (Regression) Snap from ML Core Snap Pack to build the linear regression model based on the training set of 392 samples; then serialize and store.
- Model Evaluation: Use Predictor (Regression) Snap from ML Core Snap Pack to apply the model on the test set containing the remaining 50 samples and compute error.
- Model Hosting: Use Predictor (Regression) Snap from ML Core Snap Pack to host the model and build the API using Ultra Task.
- API Testing: Use REST Post Snap to send a sample request to the Ultra Task to make sure the API is working as expected.
...