alpenglow.offline.models package

Submodules

alpenglow.offline.models.AsymmetricFactorModel module

class alpenglow.offline.models.AsymmetricFactorModel.AsymmetricFactorModel(**parameters)[source]

Bases: alpenglow.offline.OfflineModel.OfflineModel

AsymmetricFactorExperiment(dimension=10,begin_min=-0.01,begin_max=0.01,learning_rate=0.05,regularization_rate=0.0,negative_rate=0,number_of_iterations=9)

Implements the recommendation model introduced in [Paterek2007].

Parameters:
  • dimension (int) – The latent factor dimension of the factormodel.
  • begin_min (double) – The factors are initialized randomly, sampling each element uniformly from the interval (begin_min, begin_max).
  • begin_max (double) – See begin_min.
  • learning_rate (double) – The learning rate used in the stochastic gradient descent updates.
  • regularization_rate (double) – The coefficient for the L2 regularization term.
  • negative_rate (int) – The number of negative samples generated after each update. Useful for implicit recommendation.
  • number_of_iterations (int) – Number of times to iterate over the training data.

alpenglow.offline.models.FactorModel module

class alpenglow.offline.models.FactorModel.FactorModel(**parameters)[source]

Bases: alpenglow.offline.OfflineModel.OfflineModel

FactorExperiment(dimension=10,begin_min=-0.01,begin_max=0.01,learning_rate=0.05,regularization_rate=0.0,negative_rate=0.0,number_of_iterations=9)

This class implements the well-known matrix factorization recommendation model [Koren2009] and trains it via stochastic gradient descent. The model is able to train on implicit data using negative sample generation, see [X.He2016] and the negative_rate parameter.

Parameters:
  • dimension (int) – The latent factor dimension of the factormodel.
  • begin_min (double) – The factors are initialized randomly, sampling each element uniformly from the interval (begin_min, begin_max).
  • begin_max (double) – See begin_min.
  • learning_rate (double) – The learning rate used in the stochastic gradient descent updates.
  • regularization_rate (double) – The coefficient for the L2 regularization term.
  • negative_rate (int) – The number of negative samples generated after each update. Useful for implicit recommendation.
  • number_of_iterations (int) – Number of times to iterate over the training data.

alpenglow.offline.models.NearestNeighborModel module

class alpenglow.offline.models.NearestNeighborModel.NearestNeighborModel(num_of_neighbors=10)[source]

Bases: alpenglow.offline.OfflineModel.OfflineModel

Item based nearest neighbor.

Parameters:num_of_neighbors (int) – Number of neighbors to consider.

alpenglow.offline.models.PopularityModel module

class alpenglow.offline.models.PopularityModel.PopularityModel(**parameters)[source]

Bases: alpenglow.offline.OfflineModel.OfflineModel

Recommends the most popular item from the set of items.

alpenglow.offline.models.SvdppModel module

class alpenglow.offline.models.SvdppModel.SvdppModel(**parameters)[source]

Bases: alpenglow.offline.OfflineModel.OfflineModel

Module contents