Recommender Algorithms

Simple Collaborative Filtering Model

class recommenders.cf.CollaborativeFiltering(name, users_col, items_col, similarity_metric=None)[source]
convert_dataframe(df)[source]

Convert pandas DataFrame to “scalable, tabular, column-mutable dataframe object that can scale to big data.

Parameters

None

Return type

SFrame

fit(data)[source]

Model calculates similarity between users using the observations of tags/items interacted between users. The model scores an user ‘j’ for item ‘k’ using a weighted average of the items previous observations. By default, cosine will be used to measure the similarity between two users.

Parameters

- pd.DataFrame (data) – input pandas dataframe

Factorization Machines

class recommenders.factorization_machines.RankingFactorizationRecommender(name, users_col, items_col, extra_cols=None)[source]
convert_dataframe(df)[source]

Convert pandas DataFrame to “scalable, tabular, column-mutable dataframe object that can scale to big data.

Parameters

None

Return type

SFrame

fit(data)[source]

Fit ranking factorization recommender to learn a set of latent factors for each user and item and uses them to rank recommended items according to the likelihood of observing those pairs.

Assumption: implicit data (e.g. solver = implicit Alternating Least Squares)

Parameters

- pd.DataFrame (data) – input pandas dataframe

Matrix Factorization

class recommenders.matrix_factorization.MatrixFactorization(unique_users, unique_items, embedding_dim=None, epochs=None, batch_size=None)[source]
build_model(x, y)[source]

Build Deep Matrix Factorization Model

Parameters
  • x (np.ndarray) – input training data; example input: [use_id,item_id,features]

  • y (np.ndarray) – input target; example movie ratings

train(X_train, Y_train)[source]

Helper function to train model

Parameters
  • x (np.ndarray) – input training data; example input: [use_id,item_id,features]

  • y (np.ndarray) – input target; example movie ratings

class recommenders.matrix_factorization.DeepMatrixFactorization(unique_users, unique_items, embedding_dim=None, epochs=None, batch_size=None, layers=None, dense_units=None, dropout=None)[source]
build_model(x, y)[source]

Build Deep Matrix Factorization Model

Parameters
  • x (np.ndarray) – input training data; example input: [use_id,item_id,features]

  • y (np.ndarray) – input target; example movie ratings

train(X_train, Y_train)[source]

Helper function to train model

Parameters
  • x (np.ndarray) – input training data; example input: [use_id,item_id,features]

  • y (np.ndarray) – input target; example movie ratings

Hybrid Deep Neural Network

class recommenders.hybrid.HybridRecommender(unique_users, unique_items, tfidf_features, epochs, dense_units, dropout, batch_size, embedding_dim)[source]
build_model(x, y)[source]

Build Hybrid Model This helper function for generating the model can be extended to incorporate additional hidden features.

Parameters
  • x (np.ndarray) – input training data; example input: [use_id,item_id,features]

  • y (np.ndarray) – input target

train(X_train, Y_train)[source]

Helper function to train model

Parameters
  • x (np.ndarray) – input training data; example input: [use_id,item_id,features, *args]

  • y (np.ndarray) – input target; example movie ratings

Candidate Generator (Tensorflow)