<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Ensemble Machine Learning System for Student Academic Performance Prediction</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Yinkai Wang</string-name>
          <email>ywang88@gmu.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Aowei Dingy</string-name>
          <email>ading@gmu.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Kaiyi Guany</string-name>
          <email>kguan@gmu.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Yuanqi Duy</string-name>
          <email>ydu6@gmu.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>George Mason University</institution>
        </aff>
      </contrib-group>
      <abstract>
        <p>Educational data mining is essential to our lives, as it provides the tools for us to analyze education-related problems and achieve better education. Particularly under COVID19, the transition from in-person classes to online learning mode leads to a surge in educational data, and increasing attention has been drawn to educational data mining. However, many long-lasting problems in educational data analysis have not been properly solved due to various challenges. We identify several challenges in the student performance prediction task: (1) Good indicators for the nal grade are hard to nd and the nal grades are only highly correlated to the grades in the previous terms. (2) The lack of one automatic and stable system that automates the data analysis cycle and produces satisfying prediction results. To tackle these two challenges, we implement an ensemble-based machine learning system for the student academic performance prediction task which automates the data analysis cycle in the absence of students' grades from previous terms. Specifically, our model consists of two components, ensemble feature engineering module and ensemble prediction module. Extensive experiment results have shown the superiority of our model over other traditional machine learning models, both in stability, e ciency and accuracy. Speci cally, our model outperforms the best traditional machine learning algorithms by up to 14.8% in prediction accuracy.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Ensemble Machine Learning</kwd>
        <kwd>Classi cation Model</kwd>
        <kwd>Machine Learning System</kwd>
        <kwd>Student Performance Prediction</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. INTRODUCTION</title>
      <p>
        ∗equal contribution
†corresponding author
Copyright ©2021 for this paper by its authors. Use permitted under
Creative Commons License Attribution 4.0 International (CC BY 4.0)
From traditional lectures to novel E-learning, education
quality is a long-lasting problem that we aim to improve [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
While developing new tools for better education, student
performance analysis is an essential yet challenging problem.
During COVID-19, online education has been advanced and
a large number of accumulated data has drawn tremendous
attention [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. Educational data mining community is
growing to improve the education quality by better algorithms
and larger datasets [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. However, there are still many
challenges left unsolved. (1) The high dependency between nal
grades and past grades. Even though past grades are good
indicators for nal grades, it lowers the explainability of the
features, which we like to explore whether some indirect
factors (e.g. internet access) could have an implicit e ect on
the grades. (2) The ine ciency and repeatable process of
the manually-tuned models for analysis. Manually
processing the data analysis cycle is very ine cient; an automatic
system could highly speed up the data analysis process and
make the process more stable. To solve the aforementioned
challenges, we implement an ensemble-based automatic
machine learning system for student performance prediction.
Our model consists of two components, feature engineering
and predicting, of each is an ensemble of multiple reliable
algorithms. Our model is capable of analyzing the data and
making predictions on student performance automatically,
with more stability, e ectiveness, accuracy and
explainability. Our contributions are summarized as follows:
A new machine learning system is proposed to improve
the accuracy of student performance prediction tasks.
Our model consists of two components, feature
engineering, data sampling and predicting, to process and
analyze the data.
      </p>
      <p>An ensemble-based feature engineering algorithm is
proposed to enhance the acceptability and accuracy
of the feature engineering phase.</p>
      <p>A graph-based ensemble prediction model is proposed
to make a more stable and accurate student
performance prediction.</p>
      <p>Extensive quantitative evaluations and qualitative
analysis are performed to show the superiority of our
proposed model in stability, e ciency, accuracy and
explainability.</p>
      <p>The road map of this paper is shown as follows. First, a brief
summary of related works is explained in section 2. Then,
we introduce the details of the proposed system in section 3.
Next, the set-up and results of the experiment are detailed
and analyzed in section 4. Finally, we conclude this paper
with future works in section 5.</p>
    </sec>
    <sec id="sec-2">
      <title>2. RELATED WORKS</title>
    </sec>
    <sec id="sec-3">
      <title>2.1 Classification Model</title>
      <p>
        Classi cation task is critical in many areas and has
numerous applications, such as spam email detection, face
classi cation, object classi cation, etc [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. A large number of
classi cation models have also been proposed to classify
different types of data, such as K-nearest-neighbor, Random
Forest, XGBoost, Neural Networks, etc [
        <xref ref-type="bibr" rid="ref1 ref3">1, 3</xref>
        ]. Many works
[
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] have proven the e ectiveness of those well-known
classi cation models in multiple data types. In this work, we
introduce the idea of ensemble learning which takes multiple
reliable prediction models and make nal predictions based
on the combined predictions from those models. We
implement a graph-based ensemble classi cation model which
constructs a bipartite graph by the selected classi cation
models and make predictions over the propagation of the
bipartite graph.
      </p>
    </sec>
    <sec id="sec-4">
      <title>2.2 Ensemble Machine Learning</title>
      <p>
        Ensemble machine learning is based on the idea to combine
and take advantages of multiple models and achieve better
and more stable performance. Two popular ensemble ideas
are bagging and boosting, which bagging aggregates the
results over multiple models, while boosting creates a stronger
model by multiple weak models. Two well-known instances
for bagging and boosting are Random Forest [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] and
XGBoosting [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], respectively. We integrate the idea of bagging
throughout our system, in all three modules. We aggregate
the results of multiple feature engineering, data sampling
and prediction models and make our nal predictions.
      </p>
    </sec>
    <sec id="sec-5">
      <title>2.3 Student Performance Prediction</title>
      <p>
        Student performance prediction is a long-lasting problem in
the educational data mining eld [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. Most of the recent
works focus on applying the rising deep learning models to
the problem [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], while rare people continue to explore the
capability of traditional machine learning models. Another
interesting research topic is the explainability of the models
and the feedback to improve educational quality is exciting.
Our model explores the capability of traditional machine
learning models via an ensemble learning idea and the
explainability of our approach by analyzing the features and
results.
      </p>
    </sec>
    <sec id="sec-6">
      <title>3. METHODOLOGY</title>
    </sec>
    <sec id="sec-7">
      <title>3.1 Ensemble Feature Engineering Module</title>
      <p>We implement an ensemble-based iterative feature selection
algorithm which takes all the features from the beginning
and iteratively search for better feature sets. The idea of
this algorithm implements the greedy algorithm which
follows the problem-solving heuristic to make an optimal choice
every single step. Speci cally, the algorithm takes
measurement (i.e. importance) of each feature weighted by a list
of reliable classi cation models. Every time, each feature
I
Xi;j = Xi;j + X
i=1</p>
      <p>PjJ=1 Xi;j</p>
      <p>J</p>
      <p>I
Li = argmax Xi;j
j
is dropped from the feature set and the classi cation
performance (accuracy) change indicates the importance of the
feature. To make the feature importance more reliable, we
ensemble multiple classi cation models and take the best
one as the current best score. Then, it drops the worst
negatively-a ecting feature every iteration. Additionally, to
leverage the side e ect of the algorithm being too greedy,
we set a stop mechanism, parameterized by k, which stops
after a continuous lower performance in k iterations and
rollback to the previous best feature set. After experiments
with di erent values of k, the result showed that if drop
positively-a ecting feature more than 3 times, the accuracy
will keep decreasing. In practice, we set this parameter to
3 and the list of classi cation models selected are [Random
Forest, SVM, XGBoost]. The pseudo-code for the algorithm
is shown in code block 1.</p>
    </sec>
    <sec id="sec-8">
      <title>3.2 Ensemble Prediction Module</title>
      <p>We implement a graph-based ensemble classi cation model,
which takes several reliable classi cations and clustering
models and aggregates the results by the message propagation
over a bipartite graph to achieve better performance. The
idea is to ensemble over several reliable algorithms to achieve
more accurate and stable results. It is very common (e.g. in
Kaggle competitions) to ensemble the results of supervised
learning models, while it is not that common to study how
unsupervised learning models, such as clustering algorithms,
can help in the ensemble process. Here, we aim to assist the
prediction from the supervised classi cation learning
models with certainty from the unsupervised clustering models.
We rst initialize all our models (classi cation, clustering)
with Grid-searched parameters. We construct the graph
G = (V; E), where nodes V represent objects (either a data
point X or a group Y ), and edges E represent the connection
between a data point and a group (class/cluster) determined
by the classi cation/clustering algorithms. Empirically, we
utilize three classi cation models and two clustering models.
The total groups are 20 for classi cation models. We leave
all of the groups on the right side of the bipartite graphs
(i.e. 40 groups) because there is no consistent
correspondence between di erent clustering models. Speci cally, each
edge is built if one classi cation model predicts the class of
the sample or clustering algorithms cluster the samples
together to one group. Because there is no supervision for the
clustering algorithm, we utilize it to enhance the con dence
of the classi cation models. We do so by calculating a
condence matrix C 2 XI;J , where I is the total number of
the samples and J is the total number of the groups. Each
entry Xi;j represents the con dence score of a sample being
in a group, which is initially measured by the predicting
accuracy of the classi cation models. The con dence score is
calculated via propagation over the graph:
(1)
(2)
Finally, the prediction class is determined by taking the label
with the maximum probability, or certainty.</p>
      <p>The groups are shown on the left and the bipartite graph is
shown is the right of Fig. 1</p>
      <sec id="sec-8-1">
        <title>Data: Student Performance Data Set</title>
        <p>Initialize a list of all classi cation models M , model
scores P M , all features G, scores for all features P as
0s, a stop counter K, parameterized by k, an empty
list of temp features T , a best feature set B, a best
accuracy A;
for model m in the model list M do</p>
        <p>Run the model m;</p>
        <p>Record the prediction accuracy to P M ;
end
Record best accuracy A with highest score in P M ;
Record best feature set B with highest score in P M ;
Initialize stop counter K = 3;
while condition K == 0 is not satis ed do
for feature f in the feature list F do</p>
        <p>Drop feature f ;
for model m in the model list M do</p>
        <p>Run the model m;
Record max(P M; prediction accuracy) to
P M ;</p>
        <p>Record max(P M; prediction accuracy) to P ;
end</p>
        <p>Add feature f ;
end
if K == 0 then</p>
        <p>Resume the best feature set B;
Resume the best accuracy A;
return the best feature set B, best accuracy A;
else
if all scores in P &gt; 0 then</p>
        <p>Drop the feature with the highest score P
drop;
if highest score &gt; best accuracy A then</p>
        <p>Record best accuracy A with highest
score P M ;
Record best feature set B with highest
score P M ;
Drop the feature with the lowest score P
drop;
K = 1;
Continue;
end
else
end</p>
        <p>end
end</p>
        <p>Algorithm 1: Ensemble Feature Engineering Module
%
!$
⋯ ⋯


⋯ ⋯
%
!$$
%
⋮
!
⋮
"#
⋮
!$
⋮
%$$
⋮
!$$
%
!
⋮
&amp;
%$
⋮ 
⋮</p>
      </sec>
    </sec>
    <sec id="sec-9">
      <title>4. EXPERIMENTS</title>
    </sec>
    <sec id="sec-10">
      <title>4.1 Experiment Set-up</title>
      <p>
        Dataset Description. We take one commonly used
benchmark dataset, Student Performance Data Set [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], from the
UCI Machine Learning Repository1. The dataset consists
of student achievements in secondary education of two
Portuguese schools. It contains many important factors,
including student grades, demographic, social and other
schoolrelated features. The detailed features are shown in 5. We
analyze the dataset by visualizing the correlation among all
features, in 3. Notably, rst-period grade and second-period
grade are highly correlated to the nal grade.
Interestingly, we nd father education level is highly correlated with
mother's education level. Mother's education level is highly
correlated with mother's job, too. However, father's
education level is not correlated with father's job. This provides
some statistical insights about the correlations between
father/mother education levels and their jobs. Additionally,
workday alcohol consumption is highly correlated with
weekend alcohol consumption. It is worth noting that the
correlations among di erent term grades are extremely high and
the distributions are close to a Gaussian distribution (Fig.
2. We aim to dig into other "hidden" features rather than
the grade-related features in our setting.
Comparison Methods Details. We take ve reliable classi
cation models, K-nearest-neighbor, SVM, Random Forest,
XGBoost and Multi-layer Perceptron (MLP) as our
baselines. We take the implementation of them from the
scikitlearn library2. In terms of evaluation metrics, we take
accuracy scores to evaluate the prediction performance of our
1https://archive.ics.uci.edu/ml/index.php
2https://scikit-learn.org/
model. For a fair comparison, the models that we use in our
ensemble system are exactly the same as the baselines, i.e.
with the same parameters. We run a grid-search to nd the
best setting of each model's parameter setting. We divide
the train/validation/test set by 6=2=2.
      </p>
    </sec>
    <sec id="sec-11">
      <title>4.2 Experiment Results</title>
      <p>
        4.2.1 Ensemble Feature Engineering Evaluation
The nal selected features by our model are school, sex,
age, address, famsize, Pstatus, Fedu, Mjob, Fjob, reason,
guardian, traveltime, studytime, failures, schoolsup,
famsup, paid, activities, nursery, higher, internet, romantic,
famrel, freetime, Dalc, Walc and health. The de nition and
details of each feature are shown in Table 5. We show the
prediction accuracy of all the baseline models on data
provided by di erent feature selection algorithms in table 1.
Clearly, our ensemble feature selection model outperforms
the raw data in all baseline models. To compare with other
feature selection techniques, such as Principle Component
Analysis (PCA) [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], and tree-based feature selection
algorithm. For most of the cases, our model achieves the best
performance. While the tree-based approach is also
competitive while pairing with KNN or SVM. We suspect the reason
is that our model is a little dominated by the best classi
cation models during the feature selection phase. KNN and
SVM are normally the worst models across all the models.
Therefore, our selected features are not perfectly aligned
with these two models. Besides higher accuracy, our model
provides more explainability for researchers with a stronger
feature selection module.
      </p>
      <sec id="sec-11-1">
        <title>4.2.2 Data Sampling Evaluation</title>
        <p>
          In order to see whether popular data re-sampling techniques
are suitable for our problem, we select three well-known data
re-sampling algorithms and take the implementation from
the imblearn library 3. To be speci c, we take one
oversam3https://imbalanced-learn.org/stable/
pling, one undersampling and one combined-sampling
algorithm, respectively. Speci cally, we utilize SMOTE [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ] for
oversampling, TomekLinks for undersampling and
SMOTETomek for combined sampling [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ]. The results are shown
in table 2. Even though the feature re-sampling techniques
show some promises in some cases, it is still not statistically
reliable for us to incorporate into our system.
4.2.3 Ensemble Prediction Evaluation
We study the e ectiveness of our ensemble prediction model
by comparing it with other baseline models mentioned above.
The results in table 3 suggest that our model is the best
model, either with the presence of the grade features, or
with the absence of the grade features. It is also worth
noting that XGBoost ranks second in both settings which
shows the great power of the algorithm. Random forest also
achieves stable performance compared to KNN, SVM and
MLP. Finally, KNN performs the worst in our testing.
Additionally, table 3 suggests that our model is more stable as
it achieves the best performance in both settings.
        </p>
      </sec>
      <sec id="sec-11-2">
        <title>4.2.4 Ablation Study</title>
        <p>In table 4, we show the ablation study of our system, in
which we take out one component and see whether the other
component improves the performance, compared to the
baseline models. Clearly, both the feature engineering module
and ensemble prediction module improve the result of our
system.</p>
      </sec>
    </sec>
    <sec id="sec-12">
      <title>5. CONCLUSION</title>
      <p>In this paper, we implement an automatic ensemble machine
learning system for student academic performance
prediction, which consists of ensemble feature engineering and
ensemble prediction modules. The extensive experiments have
shown that each component of our system outperforms the
traditional machine learning methods. Overall, the system
further improves the prediction accuracy, up to 14.8%. In
the future, we plan to investigate how data augmentation
could help in the task. We also hope that our proposed
system can inspire others to reinvent traditional machine
learning models which can work more e ciently, stably and
accurately.</p>
      <p>
        Figure 4: Feature distributions of the dataset [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <sec id="sec-12-1">
        <title>Feature</title>
        <p>school
sex
age
address
famsize
Pstatus
Medu
Fedu
Mjob
Fjob
reason
guardian
traveltime
studytime
failures
schoolsup
famsup</p>
        <p>paid
activities
nursery
higher
internet
romantic
famrel
freetime
goout
Dalc
Walc
health
absences</p>
        <p>G1
G2
G3
Meaning
School
gender</p>
        <p>Age</p>
        <p>Address</p>
        <p>Family Size
Parent's Cohabitation Status
Mother's Education
Father's Education</p>
        <p>Mother's Job</p>
        <p>Father's Job
Reason to Choose this School</p>
        <p>Student's Guardian
Home-to-School Travel Time</p>
        <p>Weekly Study Time
# of Past Class Failures
Extra Education Support</p>
        <p>Family Education Support
Paid Classes (Math or Portuguese)
Extra-curricular Activities</p>
        <p>Attended Nursery School
Wants to Take Higher Education</p>
        <p>Internet Access at Home
with a Romantic Relationship
Quality of Family Relationship
Freetime after School</p>
        <p>Going out with Friends
Workday Alcohol Consumption
Weekend Alcohol Consumption
Current Health Status</p>
        <p># of Absences
First Period Grade
Second Period Grade</p>
        <p>Final Grade</p>
      </sec>
      <sec id="sec-12-2">
        <title>Value</title>
        <p>Gabriel Pereira - 'GP' or Mousinho da Silveira - 'MS'
Female(F) or Male(M)</p>
        <p>from 15 to 22</p>
        <p>Urban - 'U' or Rural - 'R'
less or equal to 3 - 'LE3' or greater than 3 - 'GT3'</p>
        <p>living together - 'T' or apart - 'A'
none - 0, primary - 1, 5th-9th grade - 2, secondary - 3, higher - 4
none - 0, primary - 1, 5th-9th grade - 2, secondary - 3, higher - 4
'teacher', 'health' care related, civil 'services', 'at home', 'other
'teacher', 'health' care related, civil 'services', 'at home', 'other
close to 'home', school 'reputation', 'course' preference, 'other'
'mother', 'father', 'other'
&lt;15min - 1, 15-30min - 2, 30-60min - 3, &gt;60min - 4)
&lt;2hrs - 1, 2-5hrs - 2, 5-10hrs - 3, &gt;10hrs - 4
n if n &lt;= 3 else 4
yes or no
yes or no
yes or no
yes or no
yes or no
yes or no
yes or no
yes or no
from 1 - very bad to 5 - excellent
from 1 - very low to 5 - very high
from 1 - very low to 5 - very high
from 1 - very low to 5 - very high
from 1 - very low to 5 - very high
from 1 - very bad to 5 - very good
from 0 to 93
from 0 to 20
from 0 to 20
from 0 to 20</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>L.</given-names>
            <surname>Breiman</surname>
          </string-name>
          .
          <article-title>Random forests</article-title>
          .
          <source>Machine learning</source>
          ,
          <volume>45</volume>
          (
          <issue>1</issue>
          ):5{
          <fpage>32</fpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>N. V.</given-names>
            <surname>Chawla</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. W.</given-names>
            <surname>Bowyer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. O.</given-names>
            <surname>Hall</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W. P.</given-names>
            <surname>Kegelmeyer</surname>
          </string-name>
          .
          <article-title>Smote: synthetic minority over-sampling technique</article-title>
          .
          <source>Journal of arti cial intelligence research</source>
          ,
          <volume>16</volume>
          :
          <fpage>321</fpage>
          {
          <fpage>357</fpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>T.</given-names>
            <surname>Chen</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Guestrin</surname>
          </string-name>
          .
          <article-title>Xgboost: A scalable tree boosting system</article-title>
          .
          <source>In Proceedings of the 22nd acm sigkdd international conference on knowledge discovery and data mining</source>
          , pages
          <volume>785</volume>
          {
          <fpage>794</fpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>D.</given-names>
            <surname>Dua</surname>
          </string-name>
          and
          <string-name>
            <surname>C. Gra .</surname>
          </string-name>
          <article-title>UCI machine learning repository</article-title>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>A.</given-names>
            <surname>Karim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Azam</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Shanmugam</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Kannoorpatti</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Alazab</surname>
          </string-name>
          .
          <article-title>A comprehensive survey for intelligent spam email detection</article-title>
          .
          <source>IEEE Access</source>
          ,
          <volume>7</volume>
          :
          <fpage>168261</fpage>
          {
          <fpage>168295</fpage>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>A.</given-names>
            <surname>More</surname>
          </string-name>
          .
          <article-title>Survey of resampling techniques for improving classi cation performance in unbalanced datasets</article-title>
          .
          <source>arXiv preprint arXiv:1608.06048</source>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>C.</given-names>
            <surname>Romero</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Ventura</surname>
          </string-name>
          .
          <article-title>Educational data mining: A survey from 1995 to 2005</article-title>
          .
          <article-title>Expert systems with applications</article-title>
          ,
          <volume>33</volume>
          (
          <issue>1</issue>
          ):
          <volume>135</volume>
          {
          <fpage>146</fpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>C.</given-names>
            <surname>Romero</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Ventura</surname>
          </string-name>
          .
          <article-title>Educational data mining and learning analytics: An updated survey</article-title>
          .
          <source>Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery</source>
          ,
          <volume>10</volume>
          (
          <issue>3</issue>
          ):e1355,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>S. A.</given-names>
            <surname>Salloum</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Alshurideh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Elnagar</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>Shaalan</surname>
          </string-name>
          .
          <article-title>Mining in educational data: review and future directions</article-title>
          .
          <source>In Joint European-US Workshop on Applications of Invariance in Computer Vision</source>
          , pages
          <volume>92</volume>
          {
          <fpage>102</fpage>
          . Springer,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Su</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q.</given-names>
            <surname>Liu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q.</given-names>
            <surname>Liu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Huang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Yin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Chen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Ding</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Wei</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Hu</surname>
          </string-name>
          .
          <article-title>Exercise-enhanced sequential modeling for student performance prediction</article-title>
          .
          <source>In Proceedings of the AAAI Conference on Arti cial Intelligence</source>
          , volume
          <volume>32</volume>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>S.</given-names>
            <surname>Wold</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Esbensen</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Geladi</surname>
          </string-name>
          .
          <article-title>Principal component analysis</article-title>
          .
          <source>Chemometrics and intelligent laboratory systems</source>
          ,
          <volume>2</volume>
          (
          <issue>1</issue>
          -3):
          <volume>37</volume>
          {
          <fpage>52</fpage>
          ,
          <year>1987</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>Z.</given-names>
            <surname>Wu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Ramsundar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. N.</given-names>
            <surname>Feinberg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Gomes</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Geniesse</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. S.</given-names>
            <surname>Pappu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Leswing</surname>
          </string-name>
          , and
          <string-name>
            <given-names>V.</given-names>
            <surname>Pande</surname>
          </string-name>
          .
          <article-title>Moleculenet: a benchmark for molecular machine learning</article-title>
          .
          <source>Chemical science</source>
          ,
          <volume>9</volume>
          (
          <issue>2</issue>
          ):
          <volume>513</volume>
          {
          <fpage>530</fpage>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>