# Overcoming Individual Discrepancies, a Learning Model for Non-Invasive Blood Glucose Measurement
## 6 Experiment and Results
### Experiment Results
#### 6.2.3 Comparative Experiment  
To select regression method for glucose estimating is a critical but difficult work, which can only be accomplished contrasts of various methods through experiments. Before we chose the RF as glucose estimator (GE), a comparative test of RF [18], Adaboost [30], kNN [31], SVM [33], and Decision Tree (DT) [32] for glucose estimating has been conducted. This experiment is designed for two causes which are to compare performances of different regression methods and to analyze the performance of ICA. The comparative experiment consists of two parts. The first part is about the selection of the optimal parameters for each regression method. Since the performance of regression method depends on the parameters directly, to make sure the experimental results can represent its peak performance, it is of great importance to select a best group of parameters for regression method before conducting the comparative test. In this paper, we use 5-fold cross-validation to select best parameters for each regression method [34]. First, select a group of parameters for cross-validation. Secondly, use cross-validation to test the accuracy of this group of parameters. In 5-fold cross-validation, the original training data set is randomly partitioned into 5 equal sized subsamples. Of the 5 subsamples, a single subsample is retained as the validation data for testing the model, and the remaining 4 subsamples are used as training data. The cross-validation process is then repeated 5 times, with each of the 5 subsamples used exactly once as the validation data. The 5 results from the folds can then be averaged to produce a single accuracy (correlation coefficient, \(Corr\)) that can be used as the accuracy of this group of parameters. Thirdly, try some other groups of parameters and test their accuracy. Finally, select the group of parameters that has the highest accuracy as the best group of parameters to conduct the next part of the experiment. Column 3 in Table 2 has listed the best parameters settings of different regression methods. All these methods are realized by the scikit-learn [29], which is a Python machine learning program package. The second part of the comparative experiments, like accuracy and convergence experiments, is designed to compare the accuracy of different regression methods with or without ICA. First, randomly select 80% of samples from the dataset acquired from subject #1 as training dataset, and the other 20% of samples is used as testing dataset. Secondly, training various regression methods with the best parameters acquired from the first part of this experiment. Thirdly, calculate the accuracy (\(Corr\)) as the same way in accuracy experiment. Finally, draw the convergence curves of different models. In Table 2, column 4 has listed the best \(Corr\) of different regression methods, and their required number of samples in the training set that can make \(Corr\) reach to 0.5 and the best are listed in column 5 and 6 respectively. It can be noted that using RF with ICA model, it takes 60 times to train the algorithm to achieve an accuracy of \(Corr=0.819\), which means that each patient should pick himself/herself 60 times to inform the algorithm with his/her 60 blood concentration levels before performing non-invasive measurements. Still, this is twice as fast as \(TensorTiP^{TM}\)s 100 times of training. As is presented in Table 2, it is safe to say that RF shows a better performance than other regression methods. Although RF does not seem to have a fast convergence speed as Adaboost do, it does show a better convergence stability and a higher accuracy than Adaboost can provide. Since kNN and DT both put up a much lower accuracy comparing with RF, they can be ruled out of consideration. For glucose estimating, SVM represents a quite terrible performance, of which the possible reason is that we have not found out a proper kernel function.