## 3 Methods
### Dataset Preprocessing  
In the simulated student learning dataset, the data structure of each student's learning behavior was unbalanced, with the same or similar session records being collected multiple times, and some missing values and outliers in the 1200 records. In order to improve the quality of the data and ensure that the weights of different modal data in the model were consistent, the data were cleaned by processing missing values and outliers [38]. There were some missing values with a small proportion in the dataset. Delete the records with missing key fields (HRV or learning outcomes). For numerical features with a large proportion (such as HRV), use the mean to fill in the missing HRV values. The formula \begin{table}
\begin{tabular}{c c c c c c c c c} \hline \hline
**Session** & **HRV Normalized** & **Skin Temperature** & **Emotion** & **Activity Level** & **Learning** & **HRV** & **Skin Temperature** & **Duration** \\
**ID** & **Value** & **Normalized Value** & **Emotional Value** & **Emotional Value** & **Emotional Value** & **Emotional Value** & **Emotional Value** & **(s)** \\ \hline
1 & \(-0.1735\) & \(-0.3441\) & Interest & 4 & Successful & 7.8160 & 3.7490 & 32 \\
2 & \(0.7774\) & \(0.3941\) & Interest & 3 & Un Successful & 47.8436 & 59.4098 & 59 \\
3 & \(-0.0214\) & \(-3.3592\) & Happiness & 3 & Un unsuccessful & 8.2793 & 30.6678 & 23 \\
4 & \(0.7037\) & \(-1.5830\) & Happiness & 5 & Un unsuccessful & 38.8349 & 8.7093 & 27 \\
5 & \(0.5281\) & \(0.4854\) & Happiness & 5 & Successful & 23.0746 & 13.2039 & 35 \\
6 & \(-0.2991\) & \(1.0487\) & Interest & 4 & Successful & 61.9034 & 50.5175 & 31 \\
7 & \(0.6567\) & \(0.3053\) & Happiness & 5 & Successful & 15.1268 & 33.2545 & 37 \\
8 & \(0.2459\) & \(-0.2113\) & Boredom & 1 & Un unsuccessful & 36.6938 & 50.2494 & 42 \\
9 & \(1.3426\) & \(1.0377\) & Happiness & 5 & Successful & 57.1328 & 23.8455 & 31 \\
10 & \(0.5660\) & \(0.3408\) & Contusion & 2 & Un unsuccessful & 38.8951 & 25.1325 & 15 \\
11 & \(-0.1454\) & \(2.7732\) & Boredom & 5 & Successful & 15.7034 & 17.3874 & 50 \\
12 & \(0.4775\) & \(0.4498\) & Interest & 2 & Un unsuccessful & 45.9768 & 50.1321 & 24 \\
13 & \(-0.6007\) & \(2.4128\) & Boredom & 1 & Un unsuccessful & 17.9678 & 33.5412 & 15 \\
14 & \(-0.4285\) & \(1.6461\) & Contusion & 4 & Successful & 39.4914 & 1.1429 & 31 \\
15 & \(-1.1320\) & \(-1.2935\) & Happiness & 5 & Successful & 9.1104 & 44.6995 & 57 \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Fifteen samples of partial learning behavior data in the simulated student learning dataset. is shown in Equation (1). Use the most frequent value to fill in categorical features (such as emotions). \[X_{\text{filled}}=\frac{\sum X_{i}}{n} \tag{1}\]  
In Formula (1), \(X_{i}\) is the non-missing value in the original data, and \(n\) is the number of samples from the data. In the dataset, the same student can have multiple conversation records, and the repeated conversation data can be deleted. For outliers, the IQR (interquartile range) method was used for detection. For numerical features, such as HRV and skin temperature, the IQR method calculates the quartiles of the data and sets the outliers as points that exceed 1.5 times the IQR range. Data normalization was used to provide different features with the same scale. For numerical data, especially features with different dimensions, such as HRV and skin temperature, the Z-score method was used to normalize the features, as shown in Equation (2):  
\[Z=\frac{X-\mu}{\sigma} \tag{2}\]  
In Equation (2), \(x\), \(\mu\), and \(\sigma\) represent the raw data, mean, and standard deviation. For categorical data, such as emotions, learning outcomes, and engagement, they can be converted to numerical types. Here, the four emotional features, interest, happiness, boredom, and confusion, were digitized into labels 0-3. Data normalization [39] was used to scale numerical data to a fixed interval, which is very useful when processing data with different units and dimensions.