Source-linked AI summary

The Use of Machine Learning Algorithms in Recommender Systems: A Systematic Review

Ivens Portugal, Paulo Alencar, Donald Cowan

arXiv:1511.05263v4cs.SEcs.IRcs.LG

TL;DR

Choosing among the many machine-learning algorithms used in recommender systems is difficult, and evidence about their use and open development questions is limited. This systematic review finds Bayesian and decision tree algorithms widely used and identifies requirements and design as areas with opportunities for further research.

  • Problem

    The many algorithm variations in recommender systems make selection challenging, while information about current usage and open software-engineering questions is limited.

    Source: §3 · p. 5
  • Method

    The paper systematically reviews recommender-system studies to identify machine-learning algorithms in use and open development questions relevant to software engineering.

    Source: §3 · p. 5
  • Results

    Bayesian approaches appeared in 7 of 26 reviewed publications, and decision trees were the second most-used approach; the authors suggest their relative simplicity helps explain their use.

    Source: §4 · p. 8
  • Takeaways & Limitations

    The review identifies requirements, design, and maintenance as stages where further research into recommender-system development is needed.

    Source: §5 · p. 12

    The review was restricted to recommender-system approaches that were implemented and tested with real or simulation data.

    Source: §3 · p. 5

Abstract

from arXiv · show

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

The introduction frames a systematic review to clarify how machine-learning algorithms are used in recommender systems and where software engineering could improve their development. It motivates the review by noting the difficulty of choosing and tracking algorithms.

1 Introduction

  • Recommender systems use information about users or items to recommend items or services and can support decision-making.The introduction notes uses ranging from finding books, music, transportation, or people to helping users maximize profits or minimize risks.Source: §1 · p. 1
  • The variety of machine-learning approaches and lack of a clear classification scheme make it difficult to select an algorithm for a recommender system and track its use.The introduction identifies this as a challenge for both developers and researchers.Source: §1 · p. 2
  • The systematic review investigates implemented recommender systems using machine learning, the algorithms they use, and how software engineering can affect their development.It aims to help researchers and practitioners make better-informed implementation and research decisions; the introduction also notes that the relevant software-engineering areas are unclear.Source: §1 · p. 2

2 Theoretical Background

The theoretical background defines recommender systems by the information used for recommendations and outlines machine learning’s learning approaches. It also describes how user data and context shape recommendation methods.

2.1 Recommender System

  • Recommender systems are collaborative, content-based, or hybrid, using user data, item data, or both to drive recommendations.Collaborative systems draw on user profiles; content-based systems find items with similar attributes; hybrid systems combine these approaches.Source: §2.1 · p. 3
  • Collaborative and hybrid systems may gather user information explicitly, through forms or ratings, or implicitly, through browsing data and click or keystroke logs.Source: §2.1 · p. 3
  • Trust-aware recommendations use social links, context-aware recommendations use the user’s current state, and risk-aware recommendations consider critical information such as vital signs.Processing large amounts of context makes context-aware recommendation a challenging research field; risk-aware errors may threaten life or cause damage.Source: §2.1 · p. 3

2.2 Machine Learning

  • Machine learning defines learning as improving task performance through experience, and its concepts date to the 1950s, although it emerged as a separate field in the 1990s.The paper notes applications in business, advertising, and medicine.Source: §2.2 · p. 4
  • Machine learning has four approaches: supervised learning uses correct training answers, unsupervised learning finds patterns without a training set, semi-supervised learning handles missing data, and reinforcement learning uses feedback.Examples include book classification, grouping users, learning from incomplete movie ratings, and repeating game moves that lead to victories.Source: §2.2 · p. 4
  • Machine learning algorithms use mathematical or statistical analysis to learn or infer data, and their growing number of variations and combinations is not governed by field-wide standards.Source: §2.2 · p. 5

3 Systematic Review

Because choosing among growing recommender-algorithm variants affects system rationale, required data, and performance, the authors systematically review implemented ML-based systems and software-engineering research opportunities.

3 Systematic Review

  • The review asks which ML algorithms are used in recommender systems and which software-engineering areas could address open development questions.The questions are RQ1 and RQ2, respectively.Source: §3 · p. 5
  • The review restricted its scope to recommender-system approaches containing ML algorithms that were implemented and tested with real or simulation data.The authors sought case studies or implementations validated with real data, excluding proposals that were never tested or validated.Source: §3 · p. 5
  • To locate software-engineering opportunities, the authors classified problems from publications’ conclusions and future-work sections into five waterfall lifecycle stages, including requirements, design, implementation, verification, and maintenance.The authors aimed to identify which lifecycle areas could support recommender-system implementation.Source: §3 · p. 6
  • Eligibility required peer review, sufficient algorithm description, implementation, English-language publication, eligible publication type, and uniqueness.Books, letters, notes, patents, non-peer-reviewed work, and duplicate publications were excluded.Source: §3 · p. 6
  • The review pool fell from 35 publications to 26; 30 remaining publications were downloaded and assessed, excluding one for no case-study description (EC3) and three for poor approach/ML-algorithm description (EC2).Source: §3 · p. 7

4 Systematic Review Results

The review found Bayesian and decision tree algorithms widely used, while software engineering problems and future work in recommender-system development concentrate on implementation and verification; requirements, design, and maintenance remain comparatively underreported.

4 Systematic Review Results

  • The authors recorded each publication’s algorithm, application domain, and problems or open questions, then grouped algorithms by category, creating named categories when an approach did not fit intuitively.They read abstracts and introductions, then approach and case-study descriptions, and finally conclusions or future work; algorithm categories were based on.Source: §4 · pp. 7–8
  • Bayesian approaches appeared in 7 of 26 publications, and Decision Trees were the second most-used approach; the authors attribute their prevalence partly to simpler calculations.Both approaches have similar underlying calculations and had recently become popular, according to the authors.Source: §4 · p. 8
  • Neural networks appeared in four publications, while Bandit algorithms and Ensemble approaches had few publications, with complexity identified as a possible adoption barrier.The authors note that researchers do not fully understand why some neural networks make particular decisions, and that more recommender-system work using neural networks is possible; they identify complexity in Bandit calculations and in implementing and generating Ensemble results as apparent impediments.Source: §4 · pp. 8–9
  • Movies had 10 occurrences among the 26 publications’ case studies or implementations, while Documents and Product reviews had four each.The authors link the movie domain’s prevalence to accessible datasets such as MovieLens and IMDb, and the text-heavy domains’ ranking to popular text processing and extraction algorithms.Source: §4 · p. 9
  • Four publications described MapReduce use, while mathematical or statistical methods—including cosine measure [18], least squares, and Pearson correlation [18]—were treated as recommendation-supporting calculations.The authors expected most publications to describe such methods because machine learning has roots in mathematics and statistics, and interpreted MapReduce [17] use as a sign of Big Data’s likely future importance to recommender systems.Source: §4 · p. 9
  • Roughly 80% of publications reported implementation or verification problems or future work, while only four addressed requirements, design, or maintenance.The authors note that restricting the review to publications with a case study or implementation description affected the problems and future work reported; they suggest the less-covered areas may contain open questions.Source: §4 · pp. 10–11

5 Conclusion & Future Work

The review found Bayesian and decision-tree approaches predominated in recommender systems, while requirements, design, and maintenance emerged as areas needing further software engineering research.

Conclusion & Future Work

  • 26 publications were reviewed; Bayesian or decision-tree approaches appeared in most cases, partly because of their recent popularity and low calculation and implementation complexity.Most approaches also described algorithms mathematically or statistically.Source: §5 · p. 11
  • Four publications proposed MapReduce-based recommender systems, and the review linked this to Big Data’s relevance for more personalized recommendations.The review also noted that most approaches gave mathematical or statistical descriptions of algorithms.Source: §5 · p. 11
  • Movies, documents, and product reviews were the three most common validation domains, largely because test data were readily accessible and text suits many algorithms.MovieLens and IMDb were cited as online movie-rating datasets.Source: §5 · p. 11
  • Implementation and verification had more reported problems and open questions, but the search’s focus on case studies or implementation descriptions may have affected this finding.The lack of reported issues in requirements, design, and maintenance may indicate research opportunities.Source: §5 · pp. 11–12
  • Further studies should examine Bayesian algorithms’ implications, performance, and utility, and investigate open questions in requirements, design, and maintenance.The review identifies these early and late development stages as lacking research.Source: §5 · p. 12
Loading 1511.05263v4…