A Course Recommender System

The project, Course Recommender System, is a recommendation system which can help students of the Computing and Software Systems (CSS) at the University of Washington, Bothell with their academic decisions, by predicting the grades they will receive for the different courses.

The data for the system comprised of old students records from the CSS department. The dataset contains 318 student and the grades they received for 30 different courses. This data is divided into 2 sets: training and testing. Training data set is used to build the Predictive model and the Test data is used to validate the prediction.  Fig: 1 shows an overview of the working of the predictive model.

Course Recommender System Model
Figure 1: Course Recommender System Model

After a detailed study ,Collaborative filtering technique [Jannach; et al, 2011] using the K-nearest Neighbor (KNN) Machine Learning Algorithm was identified as the best suitable approach to build the predictive model. KNN is a method for classifying objects based on closest sample in the entire data set. In the case of Course Recommender system, KNN is used to identify and classify all the students who have chosen the same courses and received similar grades. Then, the Pearson Correlation coefficient (PCC) is calculated for each of the student pair, so as measure the similarity or dissimilarity between the 2 students. Depending on the PCC value, a weight is assigned to each sample. A weighted average of the all the student yield the predicted grade for a student, for a particular course.

Both, the predictive model and the GUI for the Course Recommender system are developed using the Python programming language.

This capstone project has been a tremendous learning experience. The following are some of the things that were learned over the course of the 2 quarters:

  • Learned numerous Machine Learning algorithms
  • Data acquisition and pruning
  • Software development using Python Programming language and MATLAB.

The future aspiration for this project is that, the course recommender system would be extended to the whole of CSS department. Once the recommender system is developed for the CSS department, it can quite easily be extended to the entire university and be integrated to the MY UW website.

Back to top

Project Info

Susan Papali

Susan Sheela Papali

Faculty Advisors
William Erdly
Jeffry Howbert