To increase efficacy in traditional classroom courses as well as in Massive
Open Online Courses (MOOCs), automated systems supporting the instructor are
needed. One important problem is to automatically detect students that are
going to do poorly in a course early enough to be able to take remedial
actions. Existing grade prediction systems focus on maximizing the accuracy of
the prediction while overseeing the importance of issuing timely and
personalized predictions. This paper proposes an algorithm that predicts the
final grade of each student in a class. It issues a prediction for each student
individually, when the expected accuracy of the prediction is sufficient. The
algorithm learns online what is the optimal prediction and time to issue a
prediction based on past history of students' performance in a course. We
derive a confidence estimate for the prediction accuracy and demonstrate the
performance of our algorithm on a dataset obtained based on the performance of
approximately 700 UCLA undergraduate students who have taken an introductory
digital signal processing over the past 7 years. We demonstrate that for 85% of
the students we can predict with 76% accuracy whether they are going do well or
poorly in the class after the 4th course week. Using data obtained from a pilot
course, our methodology suggests that it is effective to perform early in-class
assessments such as quizzes, which result in timely performance prediction for
each student, thereby enabling timely interventions by the instructor (at the
student or class level) when necessary.Comment: 15 pages, 15 figure