Description

Guide: Mr. Aravindan RS (Co-Founder and CTO at Nittio Learn)

I was allotted the task of building a complete Course Recommendation Engine for the company. The purpose of the recommendation engine is to automatically suggest courses to the users based on the learning history of similar users. This will drastically reduce the time spent by trainers on mapping online learning courses to the right set of learners in the organization and allow users to discover learning content based on the learning history of other users in a similar role, designation, and grade.

I was provided with two very big datasets: user data and course learning history data. These datasets contained data with a duration of over 8 Years.

  • Merged the two given datasets on the basis of a set of criteria.
  • After obtaining the combined dataset, I performed several data preprocessing techniques in order to make the dataset suitable for training the machine learning models.
  • Since in this project, the main goal is to predict multiple class labels (multiple courses) for any given sample of input data, I identified the need for Multi-Label Classification Technique. This is a predictive modelling technique that can be used for predicting multiple class labels for a given sample at the same time. In this case, the names of different modules will be considered as class labels.
  • The multi-label classification technique is supported by Neural Networks (Deep Learning Concept). So I trained a Multilayer Perceptron Model (MLP) on the combined Dataset.
  • I kept on working towards updating the dataset as well as the MLP model. I also continued to improve the accuracy of the MLP model using different methods like: making certain changes in the dataset, hyperparameter tuning of the model, etc.
  • In the end, I was able to arrive at a model that had a very high accuracy of around 98%. This model was able to accurately recommend the right set of courses to the users.