elliot.recommender.latent_factor_models.BPRSlim package

Submodules

elliot.recommender.latent_factor_models.BPRSlim.bprslim module

Module description:

class elliot.recommender.latent_factor_models.BPRSlim.bprslim.BPRSlim(data, config, params, *args, **kwargs)[source]

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

BPR Sparse Linear Methods

For further details, please refer to the paper

Parameters
  • factors – Number of latent factors

  • lr – Learning rate

  • lj_reg – Regularization coefficient for positive items

  • li_reg – Regularization coefficient for negative items

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

models:
  AMF:
    meta:
      save_recs: True
    epochs: 10
    batch_size: 512
    factors: 10
    lr: 0.001
    lj_reg: 0.001
    li_reg: 0.1
get_recommendations(k: int = 10)[source]
get_single_recommendation(mask, k, *args)[source]
property name
predict(u: int, i: int)[source]

Get prediction on the user item pair.

Returns

A single float vaue.

restore_weights()[source]
train()[source]

elliot.recommender.latent_factor_models.BPRSlim.bprslim_model module

Module description:

class elliot.recommender.latent_factor_models.BPRSlim.bprslim_model.BPRSlimModel(data, num_users, num_items, lr, lj_reg, li_reg, sampler, random_seed=42)[source]

Bases: object

get_model_state()[source]
get_user_recs(user, mask, k=100)[source]
load_weights(path)[source]
predict(u, i)[source]
save_weights(path)[source]
set_model_state(saving_dict)[source]
train_step(batch)[source]

Module contents

Module description: