elliot.recommender.neural.NFM package

Submodules

elliot.recommender.neural.NFM.neural_fm module

Module description:

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

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

Neural Factorization Machines for Sparse Predictive Analytics

For further details, please refer to the paper

Parameters
  • factors – Number of factors dimension

  • lr – Learning rate

  • l_w – Regularization coefficient

  • hidden_neurons – List of units for each layer

  • hidden_activations – List of activation functions

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

models:
  NFM:
    meta:
      save_recs: True
    epochs: 10
    batch_size: 512
    factors: 100
    lr: 0.001
    l_w: 0.0001
    hidden_neurons: (64,32)
    hidden_activations: ('relu','relu')
get_recommendations(k: int = 100)[source]
property name
predict(u: int, i: int)[source]
train()[source]

elliot.recommender.neural.NFM.neural_fm_model module

Module description:

class elliot.recommender.neural.NFM.neural_fm_model.NeuralFactorizationMachineModel(*args, **kwargs)[source]

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

call(inputs, training=None, mask=None)[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]

Module contents