Neighborhood-based Models

Summary

item_knn.item_knn.ItemKNN(data, config, …)

Amazon.com recommendations: item-to-item collaborative filtering

user_knn.user_knn.UserKNN(data, config, …)

GroupLens: An Open Architecture for Collaborative Filtering of Netnews

attribute_item_knn.attribute_item_knn.AttributeItemKNN(…)

Attribute Item-kNN proposed in MyMediaLite Recommender System Library

attribute_user_knn.attribute_user_knn.AttributeUserKNN(…)

Attribute User-kNN proposed in MyMediaLite Recommender System Library

ItemKNN

class elliot.recommender.knn.item_knn.item_knn.ItemKNN(data, config, params, *args, **kwargs)[source]

Bases: elliot.recommender.recommender_utils_mixin.RecMixin, elliot.recommender.base_recommender_model.BaseRecommenderModel

Amazon.com recommendations: item-to-item collaborative filtering

For further details, please refer to the paper

Parameters
  • neighbors – Number of item neighbors

  • similarity – Similarity function

  • implementation – Implementation type (‘aiolli’, ‘classical’)

To include the recommendation model, add it to the config file adopting the following pattern:

models:
  ItemKNN:
    meta:
      save_recs: True
    neighbors: 40
    similarity: cosine
    implementation: aiolli

UserKNN

class elliot.recommender.knn.user_knn.user_knn.UserKNN(data, config, params, *args, **kwargs)[source]

Bases: elliot.recommender.recommender_utils_mixin.RecMixin, elliot.recommender.base_recommender_model.BaseRecommenderModel

GroupLens: An Open Architecture for Collaborative Filtering of Netnews

For further details, please refer to the paper

Parameters
  • neighbors – Number of item neighbors

  • similarity – Similarity function

  • implementation – Implementation type (‘aiolli’, ‘classical’)

To include the recommendation model, add it to the config file adopting the following pattern:

models:
  UserKNN:
    meta:
      save_recs: True
    neighbors: 40
    similarity: cosine
    implementation: aiolli

AttributeItemKNN

class elliot.recommender.knn.attribute_item_knn.attribute_item_knn.AttributeItemKNN(data, config, params, *args, **kwargs)[source]

Bases: elliot.recommender.recommender_utils_mixin.RecMixin, elliot.recommender.base_recommender_model.BaseRecommenderModel

Attribute Item-kNN proposed in MyMediaLite Recommender System Library

For further details, please refer to the paper

Parameters
  • neighbors – Number of item neighbors

  • similarity – Similarity function

To include the recommendation model, add it to the config file adopting the following pattern:

models:
  AttributeItemKNN:
    meta:
      save_recs: True
    neighbors: 40
    similarity: cosine

AttributeUserKNN

class elliot.recommender.knn.attribute_user_knn.attribute_user_knn.AttributeUserKNN(data, config, params, *args, **kwargs)[source]

Bases: elliot.recommender.recommender_utils_mixin.RecMixin, elliot.recommender.base_recommender_model.BaseRecommenderModel

Attribute User-kNN proposed in MyMediaLite Recommender System Library

For further details, please refer to the paper

Parameters
  • neighbors – Number of item neighbors

  • similarity – Similarity function

  • profile – Profile type (‘binary’, ‘tfidf’)

To include the recommendation model, add it to the config file adopting the following pattern:

models:
  AttributeUserKNN:
    meta:
      save_recs: True
    neighbors: 40
    similarity: cosine
    profile: binary