Source-linked AI summary
The Use of Machine Learning Algorithms in Recommender Systems: A Systematic Review
Ivens Portugal, Paulo Alencar, Donald Cowan
TL;DR
Selecting a machine-learning algorithm for a recommender system is difficult because the literature contains many approaches and provides limited guidance on current usage. The paper conducts a systematic review of implemented recommender systems, finding widespread use of Bayesian and decision-tree algorithms and research opportunities in early development stages.
Problem
The many machine-learning algorithms and variations in the literature make it difficult to choose suitable algorithms and identify software-engineering research priorities for recommender systems.
Method
The paper systematically reviews peer-reviewed recommender-system case studies or implementations using machine-learning algorithms and classifies algorithms and open questions across software-lifecycle stages.
Results
Bayesian algorithms appeared in 7 of 26 reviewed publications, while decision trees were the second most used approach; roughly 80% of reported problems or future work concerned implementation or verification.
Takeaways & Limitations
Requirements, design, and maintenance appear to offer research opportunities, while further studies could examine Bayesian algorithms' implications, performance, and utility.
Takeaways & Limitations
The review includes only publications describing implemented and validated case studies, excluding proposals without testing or validation.
Abstract
from arXiv · showhide
Recommender systems use algorithms to provide users with product or service recommendations. Recently, these systems have been using machine learning algorithms from the field of artificial intelligence. However, choosing a suitable machine learning algorithm for a recommender system is difficult because of the number of algorithms described in the literature. Researchers and practitioners developing recommender systems are left with little information about the current approaches in algorithm usage. Moreover, the development of a recommender system using a machine learning algorithm often has problems and open questions that must be evaluated, so software engineers know where to focus research efforts. This paper presents a systematic review of the literature that analyzes the use of machine learning algorithms in recommender systems and identifies research opportunities for software engineering research. The study concludes that Bayesian and decision tree algorithms are widely used in recommender systems because of their relative simplicity, and that requirement and design phases of recommender system development appear to offer opportunities for further research.
1 Introduction
Recommender systems help users find items or services using information about users or recommended items. The growing number and variety of machine-learning algorithms makes choosing an appropriate algorithm difficult.
- Recommender systems provide users with item or service recommendations based on information about users or recommended items.
- Machine-learning algorithms are used in recommender systems to provide users with better recommendations.
- The large number and variation of machine-learning approaches makes selecting an algorithm that fits a recommender-system need difficult and confusing.
2 Theoretical Background
The theoretical background introduces recommender systems, their filtering categories, and machine learning as the computational basis for acquiring knowledge and improving task performance. Both fields contain multiple classifications and approaches.
- Recommender Systems: Recommender systems use artificial-intelligence methods to provide users with item recommendations.
- Recommender Systems: Recommender systems are classified as collaborative, content-based, or hybrid filtering according to the information driving recommendations.
- Recommender Systems: Collaborative filtering uses user data, whereas content-based filtering uses item attributes; hybrid filtering combines both approaches.
- Machine Learning: Machine learning enables computers to acquire knowledge from the real world and improve performance on tasks using that knowledge.
- Machine Learning: Machine-learning algorithms are numerous and are classified by learning approach, including supervised, unsupervised, semi-supervised, and reinforcement learning.
3 Systematic Review
The systematic review examines implemented and validated recommender systems containing machine-learning algorithms to identify algorithm usage and software-engineering research opportunities. It searches and filters the literature, then classifies algorithms and open questions across software-lifecycle stages.
- Goals and Scope: The review identifies machine-learning algorithms used in recommender systems and software-engineering areas that may address open development questions.
- Goals and Scope: The study restricts its evidence to peer-reviewed publications describing recommender-system case studies or implementations validated with real data.
- Search and Selection: The search query targets recommender-system, machine-learning, and implementation or case-study terms in publication titles, abstracts, and keywords.
- Search and Selection: 35 publications were reduced to 26 retained studies after exclusion criteria and quality assessment.
4 Systematic Review Results
The review categorized machine-learning algorithms, examined their mathematical or statistical methods and implementation domains, and mapped software-engineering research opportunities. Bayesian approaches were most common, while implementation and verification accounted for roughly 80% of reported problems or future work.
- Review process: The authors recorded each publication’s machine-learning algorithm, case-study or implementation domain, and associated problems or open questions.They used a spreadsheet after reading the abstract, introduction, approach, case study, conclusion, and future-work sections.
- Algorithm classification: The review grouped algorithm names into categories based on prior classifications, creating new categories for algorithms that did not fit intuitively.Incremental matrix factorization was treated as a matrix-factorization variant, while Topic Independent Scoring Algorithm received its own TISA category.
- Algorithm usage: Bayesian approaches appeared in 7 of 26 reviewed publications, making them the most-used recommender-system algorithm category.The authors theorize that reduced Bayesian calculation complexity helps explain this usage; decision trees were the second most-used approach.
- Supporting methods: Mathematical or statistical methods included cosine measure, least squares, and Pearson correlation, while four publications used MapReduce environments.These methods were listed separately because machine-learning algorithms use them to generate recommendation parameters; MapReduce supports distributed and parallel computation.
- Software-engineering opportunities: The review classified research problems and future work across requirements, design, implementation, verification, and maintenance.These five areas were taken from the Waterfall software-development model.
- Software-engineering opportunities: Roughly 80% of publications focused on implementation or verification, while only four addressed requirements, design, or maintenance.The authors note that restricting the review to publications with case studies or implementation descriptions affected the reported distribution.
5 Conclusion & Future Work
The review identifies machine-learning algorithm selection in recommender systems as difficult because the literature contains many algorithms with varied characteristics. It highlights requirements, design, and maintenance—especially the early stages—as research opportunities.
- The literature lacks a classification system indicating which machine-learning algorithms are most suitable for particular recommender-system environments.
- The review provides a basis for investigating recommender-system development and future studies of Bayesian algorithms’ implications, performance, and utility.
- Requirements and design stages lack sufficient studies, while maintenance is also identified as an underexamined stage for future research.