{'fraction_non_alphanumeric': 0.029476818375159506, 'fraction_numerical': 0.012122501063377287, 'mean_word_length': 4.558156028368795, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 3, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Deep Learning for Blood Glucose Prediction: CNN vs LSTM

To manage their disease, diabetic patients need to control the blood glucose level (BGL) by monitoring it and predicting its future values. This allows to avoid high or low BGL by taking recommended actions in advance. In this study, we propose a Convolutional Neural Network (CNN) for BGL prediction. This CNN is compared with Long-short-term memory (LSTM) model for both one-step and multi-steps prediction. The objectives of this work are: 1) Determining the best configuration of the proposed CNN, 2) Determining the best strategy of multi-steps forecasting (MSF) using the obtained CNN for a prediction horizon of 30 min, and 3) Comparing the CNN and LSTM models for one-step and multi-steps prediction. Toward the first objective, we conducted series of experiments through parameter selection. Then five MSF strategies are developed for the CNN to reach the second objective. Finally, for the third objective, comparisons between CNN and LSTM models are conducted and assessed by the Wilcoxon statistical test. All the experiments were conducted using 10 patients’ datasets and the performance is evaluated through the Root Mean Square Error. The results show that the proposed CNN outperformed significantly the LSTM model for both one-step and multi-steps prediction and no MSF strategy outperforms the others for CNN.


Introduction
The diabetes mellitus disease occurs when the glucose metabolism is defected. Type 1 and Type 2 of diabetes mellitus (named respectively T1DM and T2DM) are the main types of diabetes. T1DM is due to a shortage in the insulin produced by the pancreas while T2DM is due to an inappropriate use of the produced insulin [1]. This chronic illness may cause serious health complications such as neuropathy, nephropathy, blindness and others [1]. Diabetic patients can prevent or delay the occurrence of these complications by managing their disease and maintaining their blood glucose level (BGL) within the normal range. This can be achieved by monitoring the BGL manually via sticks or automatically via continuous glucose monitoring (CGM) sensors and then predicting the future values of BGL. If the predicted values tend to be outside the normal range, the diabetic patient can act in advance toward avoiding high or low BGL [1,2].
Several data mining based prediction techniques were investigated for the BGL prediction problem counting machine learning and statistical techniques [2]. Nevertheless, machine learning and especially deep learning techniques are gaining more interest as they are achieving promising results [3].
The BGL prediction can be considered as a time series (TS) prediction problem where the past values are provided by a CGM device. The TS forecasting can be: 1) a one-step ahead forecasting (OSF) when the prediction concerns the next value or 2) a multi-steps ahead forecasting (MSF) when the prediction concerns the next H values where H is the prediction horizon [4].
In this work, we are interested in the application of deep learning techniques for BGL prediction especially LSTM and CNN in the context of OSF and MSF for 30 min ahead which is good enough to avoid likely increase or decrease of the BGL [5,6].
In [5], the authors have conducted a comparative study between the five known MSF strategies using the LSTM technique. According to our belief, no similar study was done using the CNN technique and no comparison of the two techniques were performed in the OSF and MSF using the five known MSF strategies. These two points motivate this current study.
The CNN model that we propose in this study is a sequential one using a 1D convolutional layer, followed by a Flatten layer and 2 Dense layers. Regarding the LSTM model, we use the same architecture proposed by [3] as it outperformed significantly a previous LSTM model and an autoregressive model, this LSTM model contains one LSTM Layer tailed by 2 Dense layers.
The objective of the present work is threefold: 1) Getting a performant CNN based on the proposed architecture, 2) Determining the best strategy of MSF using the obtained CNN, and 3) Comparing the CNN and LSTM models for OSF and MSF.
Toward these objectives, we consider the following research questions (RQ): This paper is organized into 7 sections. Section 2 states the time series problem and gives an overview of the CNN and LSTM techniques. Section 3 highlights the related work. In Sect. 4, the experimental design is detailed. Section 5 reports and then discusses the results. Threats to validity are presented in Sect. 6 and finally, conclusion along with future works are presented in Sect. 7.

Background
In this section, we define the TS problem and identify the strategies used for MSF. Then, we present an overview of the two techniques used in this study: LSTM and CNN. And finally, we present the Wilcoxon test and ranking method.

Time Series Prediction
Let y 1 to y N be the N past values of a time series. The TS prediction can be performed for: 1) a single period by determining the next value y N+1 which is called one-step ahead forecasting (OSF), or 2) multiple periods by determining y N+1 to y N+H which correspond to the H next values, this is called multi-step ahead forecasting (MSF) [4]. The MSF problem is more difficult comparatively to the OSF one. In fact, the former is confronted to the accumulation of errors, the decreasing of accuracy and the increasing of uncertainty [4,5].
To perform the MSF, five strategies can be used [4,5]. These strategies are: 1) Recursive, 2) Direct, 3) MIMO (Multi-input Multi-output), 4) DirREC: a combination of Direct and Recursive; and 5) DirMO: a combination of Direct and MIMO. Table 1 presents details about these five MSF strategies.

LSTM and CNN: An Overview
LSTM and CNN are neural networks (NNs) with special architecture allowing a deep learning. This latter is an emerging technique that have the ability to learn the data characteristics and select relevant features automatically [7]. In this subsection, we start by defining the LSTM then the CNN architecture.
LSTM: Hochreiter and Schmidhuber in [8] came up with a novel architecture of recurrent NNs (RNNs), called LSTM NNs, in order to solve the problem of vanishing or exploding gradient met in the traditional RNNs. The LSTM NNs contains memory cells that have a cell state preserved over time and a gate structure for controlling and regulating the information through the memory cell. With this structure, the LSTM NNs can catch long term dependencies and treat serial data [3,8]. Note that r and tanh are respectively the sigmoid and the hyperbolic tangent used as activation functions. Getting the information to be retained Getting the information to be ignored

Output gate
Calculating the output and updating the hidden vector Maintaining the information through cells The origins of the CNNs go back to the neocognitron model proposed in [9]. They are based on the concept developed in [10] related to the simple and complex cells which were inspired from the animal visual cortex. However, the first successful CNN that was trained by backpropagation was proposed by [11]. A CNN is a feed-forward NN whose main layer is a convolutional one performing a convolution operation. This latter consists of applying and sliding a filter over the input data through an elementwise multiplication [12][13][14]. The connection weights represent the kernel of the convolution.
The dimension of the filter depends on the type of input data. In fact, 1D is used for sequential data such as text and time series, 2D is used for images and 3D for videos [7]. Multiple filters can be used to be able to extract more useful features [13].
In the case of time series, the convolution is applied based on the following formula: where C t is the t th element of C which is the vector resulting from the convolution, X is the time series with length T, x is a 1D filter with length l, b is the bias parameter and f represents the activation function [13].

Statistical Test and Ranking
The Wilcoxon statistical test is a non-parametric test used to assess if the difference between the performances of two models is significant. This test is performed considering the null hypothesis (NH) that there is no difference between the compared models. The p-value of the considered NH is calculated, if the p-value is less than a certain significance level a, the difference is considered statistically significant [15].
In the case we need to have a ranking of the models, the sum of ranking differences (SRD) is used. It calculates the ranking of the models by summing up the difference of their ranking and an ideal ranking for a certain number of cases. The ideal ranking can be a reference model or the best known model. If such a model does not exist, the ideal ranking can be defined based on the minimum, the maximum or the average of all the models for each case [16].

Related Work
Statistical methods and especially autoregressive models were widely used for the BGL prediction. However, a growing trend has been noticed for the use of the machine learning techniques including deep learning [2,17]. These latter were successfully used in many fields such as image recognition, object detection, sequential data processing, their success is due to their ability to learn automatically the data representation from raw data and extract the relevant features [7].
In the context of BGL prediction, deep learning techniques especially LSTM and CNN were investigated and encouraging results were reached [5]. In fact, the LSTM was used in [3,[17][18][19] and CNN used in [17,20]. In [14] CNN and LSTM were combined.
Regarding the strategies of MSF, Direct strategy is the most used one according to [5] and to the best of our knowledge, no study focused on the comparison of LSTM and CNN in the OSF and MSF taking in consideration all the MSF strategies which motivated the current study. However, in [17] LSTM and CNN were compared with other autoregressive models considering only Direct and Recursive strategies, the study did not conclude on the best technique in all the cases and pointed that Direct strategy for LSTM outperformed the Recursive one. In [5], the authors conducted an exhaustive comparison of the five MSF strategies using the LSTM and concluded that there is no significant outperformance of a strategy over the others and noticed that non-recursive strategies tend to be better than recursive ones.

Experimental Process
In the first part of this section, the dataset and the performance measurement used for experimentation and evaluation are described. Later, the experimental design adopted for this study is presented.

Dataset and Performance Measurement
In the experiments, we considered Ten T1DM patients whose data were extracted from the dataset DirecNetInpatientAccuracyStudy available at the site [21]. This dataset was used by [3,5] and contains the measurements of BGL every 5 min using a CGM device. Note that these patients are taken randomly and a pre-processing of data was required to remove redundant records and outliers between successive records. The dataset of the Ten patients is described in Table 3.
In order to assess the performance of the considered models, we consider the frequently used performance measurement RMSE (root-mean-square error) [2] which is calculated as follows: Where y i andŷ i represent the measured and the estimated value respectively and n represents the size of the considered sample. The RMSE value ranges in the interval [0, +∞[ and the performance is higher when the RMSE value tends to 0.

Experimental Design
The empirical evaluation was conducted by considering the following steps: 1) Construction of the best configuration of the CNN model, 2) Development of MSF strategies for the CNN model and 3) Comparison between the CNN model and the LSTM model.
Step 1: Construction of the best configuration of the CNN model. The CNN model that we propose for the BGL prediction is a sequential one starting with a 1D convolutional layer, followed by a Flatten layer and 2 Dense layers. To determine the best configuration using this architecture, we consider a Search Grid (SG) concerning two hyper-parameters which are the kernel size and the number of filters. This SG is inspired from [3,22] and presented in Table 4. This step is composed of 3 sub-steps which are the following: • Step 1.1: It concerns the data preparation, in fact, the time series is decomposed into couples (X i ,y i ) where X i is a vector of the input values and y i is the output value which corresponds the next value following the values of the vector X i . • Step 1.2: For each value of the Number of Filters in the SG (Table 4) and each patient, the CNN model is trained and tested. Based on the SRD method, the best value of the Number of Filters is fixed.  (Table 4) and each patient, the CNN model with the Number of Filters fixed in Step 1.2 is trained and tested. Based on the SRD method, the best value of the Kernel size is fixed.
Step 2: Development of MSF strategies for the CNN model. This step contains 2 sub-steps which are the followings: • Step 2.1: It concerns the data preparation. Let X = {s(t i )} be a time series where s(t i ) is the BGL recorded at time t i and d the sampling horizon, the time series X is divided to couples (X i , y i ) where X i and y i are the input and the output data respectively. Table 5 presents the decomposition done for each MSF strategy for 30 min ahead prediction.
• Step 2.2: The performance is evaluated for each patient and each strategy using the RMSE. The models are trained on the training data which represents 66% of the dataset and evaluated on the test data which represents 34% of the dataset. If a difference between the performances is noticed, the statistical tests are applied to assess statistically the observed differences.
Step 3: Comparison between the CNN model and the LSTM model. The comparison is performed between our CNN model and the LSTM model proposed by [3] and used in [5]. The LSTM was developed for OSF and for the five MSF strategies using the same steps as for the CNN model namely data preparation and performance evaluation. At this step, we compare first the performance of CNN and LSTM for OSF. Then, considering the MSF, we have to make 5 comparisons, in each one, the performances for each strategy with CNN and LSTM are compared. If a difference is noticed, it is assessed statistically by using the statistical tests.

Results and Discussion
In this section, we present the results of each step defined in the experimental design. Thereafter, we discuss the empirical results.
For the sake of the experimentations, we developed a tool under Windows 10 using Python-3.6 and the framework Keras 2.2.4 with, as backend, Tensorflow 1.12.0.

Results
This section presents the empirical results according to each step.
Step1: Construction of the best configuration of the CNN model. After fixing the architecture of our CNN model which is sequence of a convolutional layer (1D), a Flatten layer and 2 Dense layers, we prepared the data to fit the required input and output. Then, we carried out a set of experiments to answer the RQ1 by varying the two hyper-parameter: 1) the Filters' number in sub-step 1.2, and 2) the kernel size in substep 1.3. Figure 1 shows the results of sub-step 1.2 which corresponds to the RMSE obtained for each patient and for each value of Filters' number from the Table 4. We can observe that with 20 Filters, we have the best RMSE. Furthermore, we used the SRD by considering the ideal ranking as the minimum performance. The results of the SRD are presented in Table 6, it shows that 20 Filters achieves the best ranking. At the end of this sub-step, we fixed the number of Filters to 20.
In sub-step 1.3, the same experiments were conducted by varying the Kernel size with respect to the values determined in Table 4. The results of these experiments are shown in Fig. 2. As there is no clearly dominant value, we use the SRD to rank the obtained models. Table 7 gives the ranking of the models based on SRD method. We can see that a Kernel size equals to 2 had the best ranking.
To summarize and answer the RQ1, 20 Filters and a kernel size equals to 2 give the best configuration of our CNN. This is the configuration of the CNN that will be used in the next steps of our experimental process.
Step 2: Development of MSF strategies for the CNN model. At that step and for each of the five MSF strategies, we started by preparing the data in accordance to the decomposition detailed in Table 5 then we train and validate the corresponding CNN   model (s) based on the configuration that we obtained in the previous step. Figure 3 presents the performance in term of RMSE of the considered MSF strategies. Figure 3 shows that there is no remarkable difference between the performances of the five strategies. Furthermore, considering the average for RMSE, the values are 31.48, 30.84, 31.60, 30.22 and 31.10 respectively for Direct, MIMO, Recursive, Dir-Rec and DirMO. At that point, there is no need to perform a statistical test.
Thus, the answer for RQ2 is the following: there is no MSF strategy that outperforms the others using the proposed CNN. Besides, the five strategies are giving similar performances.
Step 3: Comparison between the CNN model and the LSTM model. To be able to compare the performances of the CNN and the LSTM models, we performed the experiments on the same datasets. We started by comparing the performance of the two models for OSF, and then the performances of the 30 min' forecasting using each of the MSF strategies are compared. The results are shown in Fig. 4. Figure 4.A represents the results for OSF for both CNN and LSTM, while figures Fig. 4.B, Fig. 4.C, Fig. 4.D, Fig. 4.E and Fig. 4.F represent the results for CNN and LSTM using Direct, MIMO, Recursive, DirRec and DirMO strategies respectively. Figure 4 shows that CNN outperforms LSTM in OSF and MSF for all the strategies. To assess these findings statistically, we used the Wilcoxon test. Toward this, we formulate 6 NHs which are the followings: The statistical tests were Two-tailed with 0.05 as a significance level. The calculated p-values are presented in Table 8. As we can see, all the p-values are under the significance level, thus the CNN outperforms significantly the LSTM for OSF and MSF which answers the RQ3 and RQ4.
Concerning the RQ5, we remark from Fig. 4, that CNN is maintaining its performance over LSTM for OSF and all the MSF strategies.

Discussion
In the current study, we propose a CNN model composed of one 1D convolutional layer, one Flatten layer and 2 Dense layers. Our first objective was shaping the best  configuration of the suggested CNN model through the tuning of the two hyperparameters: kernel size and the number of filters. Figures 1 and 2 show that each of these parameters has an influence on the obtained accuracy. Therefore, a careful choice of these parameters is crucial for building a CNN model and other models [5,14]. Our CNN model performed well relatively to the performances found in literature and reported in [2]. Indeed, the minimum, maximum and mean RMSE for our CNN are respectively 3.66, 16.4 and 8.68. Furthermore, these results show that the CNN can perform well in time series prediction and sequential data in general even though it was traditionally conceived for image processing [7].
Concerning the prediction for the 30 min ahead, five strategies for MSF were developed and compared using the RMSE, the CNN model gives similar performances using these five strategies. These results are not consistent with the finding of the previous work using LSTM [5] where it was noticed that non-recursive strategies tend to be better than recursive ones even though there was no strategy significantly better than the others. Thus, further experiments should be carried out in order to refute or confirm this result for CNN. In the case of confirmation, the MSF strategy to consider should be Direct as it needs to train just one model with no iterations.
The third concern of this study is the comparison between CNN and LSTM. In fact, the performances of the CNN and the LSTM were compared in both the OSF and MSF, the results show that CNN outperforms significantly the LSTM in OSF and MSF using the five MSF strategies. This can be explained by the followings: 1) the CNN are using a small number of parameters since it uses shared weights [7], 2) There is no recurrent connections in the CNN contrarily to the LSTM which makes the process of training faster [14], and 3) The use of multiple filters in CNN helps to extract more useful features [13].
Finally, the performance of the CNN over the LSTM in OSF is maintained for MSF using the five strategies. This persistence is important as it gives some confidence in case we enlarge the prediction horizon.

Threats to Validity
We describe in this section the four threats to our study validity. These threats are: • Internal validity: This threat to validity takes in consideration the evaluation approach. This latter should be appropriate so as the findings of the study are valid. Toward that aim, all the models were trained and tested in different datasets. In fact, 66% of each dataset was used in the training phase while the remaining 34% was used for the evaluation phase. • External validity: This concerns the perimeter of the study and its ability to be generalized. To ensure this, we took in a random way the datasets of ten patients from a public dataset. These datasets have different sizes. In fact, the records' number varies from 246 to 923. Note that these datasets were previously used by [3,5]. • Construct validity: The performance is the main criterion to compare the considered models, thus it is essential to use a performance measurement that indicates how far the models are performant. In our study, we used the RMSE since it is a performance measurement used commonly in the BGL prediction [2]. • Statistical validity: In this study, we aim at determining the best model among the proposed ones through their performance's comparison. When a difference between two models is observed, it is essential to assess statistically this difference. Therefore, we used the Wilcoxon statistical test. Besides, the SRD method is used for ranking.

Conclusion and Future Work
This study proposed a CNN model having a 1D convolutional layer, a Flatten layer and two Dense layers. First we had to determine the best configuration by considering the two hyper-parameters: number of filters and kernel size. Then, we developed the MSF strategies using the CNN model to determine the strategy that may outperform the others. And finally, a performance comparison was conducted considering the CNN and LSTM models for one-step ahead forecasting and multi-steps ahead forecasting using the five identified MSF strategies.
The main outcomes of this work were: 1) No MSF strategy outperforms the others for CNN, besides they have similar performances, 2) The proposed CNN outperformed significantly the LSTM model for both one-step and multi-steps prediction.
These propitious results motivate further researches in the use of the CNN model taking in consideration different points such as: tuning other hyper-parameters, considering other input data such as activities and medication and exploring a larger prediction horizon.