# Analysis of the Learning Process through Eye Tracking Technology and Feature Selection Techniques
## 3 Results
### Study with Unsupervised Learning Machine Learning Techniques: Clustering  
Finally, cluster detection was performed on the data with unsupervised learning techniques, ignoring the solving crossword puzzles parameter in order to detect patterns in the instances. Nominal variables were transformed into dummy variables in such a way that a variable with n possible different values was divided into n-1 new binary variables, meaning that each of them indicated belonging to one of the previous values. The data were normalised by normalising the mean of the attributes to 0 and the standard deviation to 1. The following clustering algorithms were used:  
(a) \(k\)-means++ is an algorithm for choosing the initial values of the centroids for the \(k\)-means clustering algorithm. It was proposed in 2007 by [PERSON] and [PERSON] [60] as an approximation algorithm for solving the NP-hard \(k\)-means problem. That is, a way to avoid the sometimes poor clustering encountered by the standard \(k\)-means clustering algorithm. \[D^{2}(\mu_{0})\leq 2D^{2}(\mu_{i})+2||\mu_{i}-\mu_{0}||^{2}\]  
where \(\mu_{0}\) is the initial point selected and \(D\) is the distance between point \(\mu_{i}\) and the nearest centre of the cluster. Once the centroids are chosen, the process is like the classical \(k\)-means. (b) The fuzzy \(k\)-means algorithm combines the methods based on the optimisation of the objective function with those of fuzzy logic [61; 62]. This algorithm performs cluster formation through a soft partitioning of the data. That is, a piece of data would not belong exclusively to a single group but could have different degrees of belonging to several groups. This procedure calculates initial means (\(m_{1}\), \(m_{2}\),..., \(m_{k}\)) to find the degree of membership of data in a cluster. As long as there are no changes in these means, the degree of membership of each data item \(x_{j}\) in cluster \(i\) is calculated. \[u(j,\ i)=\frac{e^{-(||x_{j}-m_{i}||^{2})}}{\sum_{j}e^{-(||x_{j}-m_{i}||^{2})}}\]  
Figure 6: Relationship matrix on the selected characteristics performed with the chi-square algorithm. where \(m_{i}\) is the fuzzy mean of all the examples in cluster \(i\). \[m_{i}=\frac{\sum_{j}^{i}u(j,i)^{2}x_{j}}{\sum_{j}u(j,i)^{2}}\]  
(c) DBSCAN (density-based spatial clustering of applications with noise) [63] is understood as an algorithm that identifies clusters describing regions with a high density of observations and regions of low density. DBSCAN avoids the problem that other clustering algorithms have by following the idea that, for an observation to be part of a cluster, there must be a minimum number of neighbouring observations (minPts) within a proximity radius (epsilon) and that clusters are separated by empty regions or regions with few observations. As all remaining variables were nominal after feature selection, after pre-processing the data, only clustering with binary variables was used, which complicated the processing of the \(k\)-means++ algorithm by placing the centroids at different locations in the space when the number of centroids was bigger than three. For this reason, the parameter value k in the \(k\)-means++ and fuzzy \(k\)-means algorithms was equal to 3. The value of the DBSCAN algorithm parameters was 5 for the minPts variable as it is the default value in the library [64]. To choose the epsilon value, the elbow method was applied. Figure 7 shows the average distance of each point to its nearest neighbouring minPts, and the value 2.97 was chosen for this parameter. The visualisation of the clustering results can be seen in Figure 8, which shows the data after applying dimensionality reduction with the principal component analysis (PCA) method. The clusters selected by the \(k\)-means++ and fuzzy \(k\)-means algorithms are identical, while DBSCAN only found two clusters, leaving instances out of them. These instances labelled as noise in this study are assigned to an additional cluster.