AI Recommendation Engine for Learning Software
A personalized recommendation engine for a Learning Software Client’s AtHome app, using advanced machine learning to match resources with user needs and creating a scalable, dynamic platform for long-term engagement.
The Challenge
A leading Learning Software Client in educational resources for children with autism, envisioned AtHome—a mobile application designed to provide personalized content recommendations to parents, educators, and caregivers. This app would need an intelligent recommendation engine to deliver tailored resources, helping users navigate a vast library of educational content effectively.
Developed before the advent of modern large language models (LLMs), the creation of this recommendation engine required SLIDEFACTORY to create a custom recommendation model from the ground up. Meaning we needed to create a model that could not only learn from and adapt to user interactions, but also offer insightful recommendations based on limited initial data. Additionally, as the app grew, the system would need to automate regular model updates to maintain relevance without overwhelming system resources.
A further challenge lay in sourcing and categorizing the data to build the model. SLIDEFACTORY worked closely with the Client team to define which types of data would be useful, ensuring that information was accurately labeled and organized for optimal use in the recommendation system.
Our Approach
To solve the issues, SLIDEFACTORY collaborated with our Learning Client to develop a hybrid recommendation engine that would serve as the core of AtHome’s Phase 1 MVP. Using AWS, Python and scikit-learn, we designed a sophisticated model leveraging machine learning techniques to ensure accurate, personalized recommendations.
- Custom Hybrid Recommendation Model: We built a hybrid recommendation algorithm using various machine learning techniques, including matrix factorization and stochastic gradient descent. This approach allowed us to analyze user interactions with resources and create meaningful connections between user preferences and content attributes.
- Labeled Data and Predictive Modeling: Our team worked with our Learning Client to build a custom model based on labeled data, mapping known characteristics of users and resources. This model allowed us to make accurate predictions based on specific user needs and resource attributes.
- Python and Scikit-Learn for Algorithm Development: Using Python with scikit-learn, we created a robust recommendation engine that combined content-based filtering and collaborative filtering. The hybrid approach provided flexibility, offering both general recommendations based on content attributes and specific suggestions based on user feedback.
- Automated Model Rebuilds: Due to the three-minute processing time required for each model rebuild, we implemented automated model updates on set intervals. This ensured the recommendation engine stayed current without the need for real-time recalculations.
- Matrix Factorization for Data Analysis: To effectively process user interactions and ratings, we implemented matrix factorization techniques, allowing the model to learn patterns in the data and adjust recommendations accordingly.
Challenges Overcome
Building the AtHome recommendation engine required creative problem-solving and close collaboration with our Clients team to address several complex challenges:
- Data Sourcing and Categorization: Determining which data would provide the most value for recommendations was a foundational step. SLIDEFACTORY worked with the client to identify and label data attributes that could drive accurate recommendations. The collaborative process ensured that data was both relevant and organized for optimal performance.
- Balancing Model Complexity with MVP Requirements: The Phase 1 MVP needed to deliver core recommendation functionality without overwhelming the project scope. We prioritized essential features, ensuring the MVP offered valuable recommendations while establishing a scalable foundation for future expansion.
- Interval-Based Model Rebuilds: Given the processing time required for model recalculations, we implemented interval-based updates, allowing the engine to refresh recommendations on a regular schedule without straining system resources.
- Matrix Factorization and Stochastic Gradient Descent: Leveraging these advanced techniques allowed us to create a recommendation model that could learn from user data and provide accurate, relevant suggestions even with limited initial data.
The Results
SLIDEFACTORY’s work on the AtHome recommendation engine resulted in a robust and adaptive system, positioning our Client to launch its MVP with a powerful recommendation tool. Key results included:
- Curated Content Recommendations: The MVP provided users with relevant, tailored suggestions based on specific user characteristics and resource attributes. This allowed users to quickly access valuable resources that matched their needs.
- Scalable, Automated Model Updates: Our interval-based rebuild schedule ensured the recommendation engine remained up-to-date without straining system resources, setting the foundation for future scalability as the app’s user base grows.
- Enhanced User Engagement: The recommendation system’s adaptability based on user feedback and ratings fostered a more personalized experience, helping users find resources that resonated with their unique roles and preferences.
Conclusion
SLIDEFACTORY’s partnership resulted in a custom-built recommendation engine that brings personalized content discovery to the AtHome platform. By constructing a hybrid recommendation model in Python, utilizing machine learning techniques like matrix factorization and stochastic gradient descent, and strategically managing data sourcing and categorization, we ensured that the recommendation engine would be accurate, scalable, and capable of evolving with the platform.
This collaboration exemplifies how carefully crafted, data-driven solutions can transform user experience in educational applications. SLIDEFACTORY’s tailored approach enabled our Client to launch an MVP that meets immediate needs while providing a flexible, scalable foundation for future growth. Together, we created a solution that will continue to support our Clients mission to provide accessible, effective resources for their diverse community of users.