Filtering data sets

The process of creating recommendations is an example of selecting items from a set of items. As such it is an example of filtering; although often rather complex filtering, with behaviour like 'recommend the two items in geomorphology most borrowed by student X's class cohort.'
Typically recommenders apply some selection criteria to pick out which items to recommend, and then order the results, and display a certain number or all of the results. E.g.
  • As above, find all items on geomorphology borrowed by a student's class cohort, and order them according to the number of times borrowed. Then display just the top two.
  • Or, in a system to discover students at risk, find all students whose activity matches the risk indicator, order the results in some way (alphabetically, or in order of perceived risk) and display all of them in some way. Raising an alert is much the same as displaying.
The algorithm to produce recommendations may be relatively easy to implement (for example the RISE Project produced three different recommenders during the time available for the Programme). Alternately, the algorithm may, as in the case of the Facebook Edge Rank Algorithm, be exceedingly complex.
Considerable variation in recommender algorithms is possible. For example the RISE Project used a third party system to perform some of it's processing by passing a parameter to the EBSCO API so that the results listed only those items where full text was available. The earlier MOSAIC Project performed its recommendations by a customisation of index table formats and the ranking algorithm in a Solr search engine.