elliot.recommender.neural.ConvNeuMF package

Submodules

elliot.recommender.neural.ConvNeuMF.convolutional_neural_matrix_factorization module

Module description:

class elliot.recommender.neural.ConvNeuMF.convolutional_neural_matrix_factorization.ConvNeuMF(data, config, params, *args, **kwargs)[source]

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

Outer Product-based Neural Collaborative Filtering

For further details, please refer to the paper

Parameters
  • embedding_size – Embedding dimension

  • lr – Learning rate

  • l_w – Regularization coefficient

  • l_b – Regularization coefficient of bias

  • cnn_channels – List of channels

  • cnn_kernels – List of kernels

  • cnn_strides – List of strides

  • dropout_prob – Dropout probability applied on the convolutional layers

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

models:
  ConvNeuMF:
    meta:
      save_recs: True
    epochs: 10
    batch_size: 512
    embedding_size: 100
    lr: 0.001
    l_w: 0.005
    l_b: 0.0005
    cnn_channels: (1, 32, 32)
    cnn_kernels: (2,2)
    cnn_strides: (2,2)
    dropout_prob: 0
get_recommendations(k: int = 100)[source]
property name
train()[source]

elliot.recommender.neural.ConvNeuMF.convolutional_neural_matrix_factorization_model module

Module description:

class elliot.recommender.neural.ConvNeuMF.convolutional_neural_matrix_factorization_model.ConvNeuralMatrixFactorizationModel(*args, **kwargs)[source]

Bases: tensorflow.python.keras.engine.training.Model

call(inputs, training=False, **kwargs)[source]
get_recs(inputs, training=False, **kwargs)[source]

Get full predictions on the whole users/items matrix.

Returns

The matrix of predicted values.

get_top_k(preds, train_mask, k=100)[source]
predict(inputs, training=False, **kwargs)[source]

Get full predictions on the whole users/items matrix.

Returns

The matrix of predicted values.

train_step(batch)[source]
class elliot.recommender.neural.ConvNeuMF.convolutional_neural_matrix_factorization_model.ConvolutionalComponent(*args, **kwargs)[source]

Bases: tensorflow.python.keras.engine.training.Model

call(inputs, **kwargs)[source]
class elliot.recommender.neural.ConvNeuMF.convolutional_neural_matrix_factorization_model.MLPComponent(*args, **kwargs)[source]

Bases: tensorflow.python.keras.engine.training.Model

call(inputs, training=False, **kwargs)[source]

Module contents