A recommendation system is a software system that aims to make a prediction that quantifies how strong a user’s interest in an object is, in order to recommend to the user exactly those objects from the set of all existing objects that they are likely to be most interested in. Typical objects of a recommendation service are, for example, products of a webshop, pieces of music or artists or films. A recommendation service is designed to help manage information overload by recommending a subset to the user from a confusing set of objects. To determine the appropriate recommendations, a recommendation service uses methods of machine learning and information retrieval.
Recommendation services are used whenever there is a large set of objects (e.g. products, music, movies, news articles) from which a small subset is to be recommended to the user. The aim is usually to make it easier for the user to discover new and interesting objects. The aim of the operator of a referral service is to increase sales (e.g. when recommending products) or to increase the number of hits or, more generally, to increase the use of its offer.
The simplest type of recommendation service identifies other, similar objects to the object you are currently using (for example, similar news articles to the one you are reading). The majority of recommendation services in research consider the user to be the central entity for whom a personalized referral set is to be determined. For this purpose, the user’s interest in objects that have already been used is recorded. Interest in an object is quantified by a rating from the user. The rating can be explicit or implicit. Explicit rating asks the user to rate an object, for example, by clicking on one to five stars. The implicit determination of the rating is done by analyzing user behavior. At its simplest, this is a binary valuation (used/didn’t use the object). This score data can be used to calculate similarities between users or to teach mathematical models to predict user interests.
---
Differentiation by Data Basis
Recommendation services are differentiated primarily according to the data basis they use to determine the amount of recommendations. The two classic types of recommendation services are content-based and collaborative. Other types of recommendation services include, for example, context (context-sensitive recommendation services), time-aware recommender systems or demographic data of the user as well as characteristics about the objects.
Content-based recommendation services
Content-based recommendation services recommend objects that are similar to the objects that the user has already rated highly. To do this, it is necessary to be able to determine the similarity between two objects.
Collaborative referral services
Collaborative recommendation services (also known as collaborative filtering) recommend the objects that users with similar rating behavior (similar users) are most interested in. To do this, you do not need to have any further knowledge about the object itself. The recommendation service includes the user-based and element-based algorithms, as well as the model- and memory-based method.

Image credit: https://quepinch.com/s/recommender-system-9899
There are two basic learning methods for recommendation services if we think of prediction based model: memory-based and heuristic-based. Memory-based recommendation services use all stored score data to estimate the score of unrated user-object combinations using calculated similarities between users or objects. Model-based recommendation services use the score data as learning data to use machine learning methods to learn a mathematical model that can be used to predict a user’s interest in an object.
Tagged With recommender system