SmartGuru: Adaptive Learning platform for Java Developers

NLP

Adaptive learning app for learning java. Gamification and recommendation are key to provide an adaptive learning experience to users.

It's a Smart Learning App for Java including Performance monitor and Recommendation System based on Student performance. Developed the recommendation system using sentimental analysis and Content-based Filtering. The Python(Flask) API catered the services to the react native mobile application. Flask Api is developed using RESTful concepts and hosted on AWS. NLP workflow is designed using NumPy, pandas, sci-kit-learn and nltk Machine learning libraries. React native frontend integrated back end to establish a connection to an online database using SQLAlchemy. Python, Python Flask, AWS, and Git were the technologies and tools used.

An adaptive learning system aims at providing instruction tailored to the current status of a learner, differing from the traditional classroom experience. The latest advances in technology make adaptive learning possible, which has the potential to provide students with high-quality learning benefit at a low cost. A key component of an adaptive learning system is a recommendation system, which recommends the next material (video lectures, practices, and so on, on different skills) to the learner, based on the psychometric assessment results and possibly other individual characteristics. An important question then follows: How should recommendations be made? To answer this question, a mathematical framework is proposed that characterizes the recommendation process as a Markov decision problem, for which decisions are made based on the current knowledge of the learner and that of the learning materials. In particular, two plain vanilla systems are introduced, for which the optimal recommendation at each stage can be obtained analytically.

This Project as carried out through requirement gathering phase through surveys.The software Requirement specification is presented with the project.