# Personalized E-Learning Recommender System Based on Autoencoders
## 5 Experiments
### Compared Methods  
We compared our proposed model based on the autoencoder algorithm with traditional methods, including the following:  
* KNN  
The objective of the collaborative filtering system is to propose elements that are of high interest to a user, either by presenting the predicted rating that a user could give to an element or by providing a probabilistic estimate of the user-element interaction. In other words, the objective of the recommendation system based on collaborative filtering is to determine the top N items for which a user u would give the highest ratings. These items are then proposed to this user. Mathematically, this can be expressed as follows:  
\[\text{top}(\text{u},\,\text{N})=\underset{\text{i}\in\text{I}}{\text{argmax}} \left(\hat{\text{r}}_{\text{ui}}\right) \tag{4}\]  
where:  
* I is the list of items that can be recommended. * N refers to the number of items to recommend. * \(\hat{\text{r}}_{\text{ui}}\) represents the \"prediction of the rating that the recommender system provides to user u for item i\". Figure 4: Distribution of course evaluations. Figure 3: Distribution of ratings for each user. The fundamental goal of KNN-based CF is to identify K users who share similar behavior to user u and then to suggest items liked by these similar users. The following formula is used to predict user u's rating of item i:  
\[\hat{\tau}_{ui}=\ \bar{\tau}_{u}+\left(\frac{\sum_{v\in U_{ui}^{K}}\text{sim}(u,v)( \tau_{vi}-\ \bar{\tau}_{v})}{\sum_{v\in U_{ui}^{K}}\text{sim}(u,v)\ |}\right) \tag{5}\]  
* U\({}_{ui}^{K}\) represents the \"K-nearest neighbors\" of the user named u who evaluated the item named i. * r\({}_{vi}\) denotes the \"actual rating given by the neighbor\" user v, which concerns item i. * \(\bar{\tau}_{u}\) is the average rating relative to user u, which is calculated according to the rating history. * \(\bar{\tau}_{v}\) represents the average rating relative to user v, which is calculated according to the rating history. * \(\text{sim}(u,v)\) is the calculation of the similarity between users u and v based on distance metrics, such as cosine and Pearson's correlation coefficient. However, the value of K in the KNN method is determined before the recommendation procedure. This can be less than optimal, as users have different preferences and similarity levels, resulting in unsatisfactory recommendations. In addition, this method may not be effective for large datasets or when there are few interactions between the user and the item [44]. * SVD  
Great dimensionality and data sparsity are common problems in recommender systems. Therefore, dimensionality reduction should be addressed immediately. A powerful method to do this is SVD, which is an MF-specific algorithm [29; 45]. According to this SVD approach, an original data matrix can be decomposed into three matrices, shown as:  
\[\text{DataMatrix}_{m\times n}=\text{U}_{m\times m}\Sigma_{m\times n}\text{V}_{ n\times n}^{T} \tag{6}\]  
\[\text{A}=\text{U}\Sigma\text{V}^{T} \tag{7}\]  
U represents the matrix m \(\times\) m, \(\Sigma\) is an m \(\times\) n matrix with zero elements, except for the values of the diagonal, called \"singular values\", V is a matrix with n \(\times\) n elements and V\({}^{T}\) defines the transposed matrix of V.  
* SVD++  
This technique is a derivative of SVD. The latter uses the information contained in the user-item matrix, which consists of explicit types (ratings or votes), while ignoring implicit information, for example, clicks, purchases and browsing [46]. SVD++ was suggested by [47]. Ref. [48] considers for example a 2D user-item matrix, where p represents rows of users, and q denotes the columns of items. The user rating value for items is r\({}_{u,i}\). The recommender system aims to predict the items likely to be of interest to users. In fact, the dataset is generally large, and many users can leave items unrated, which poses a data sparsity problem for recommender systems.