Artificial Neural Networks¶
Summary¶
Convolutional Matrix Factorization for Document Context-Aware Recommendation |
|
|
Outer Product-based Neural Collaborative Filtering |
|
DeepFM: A Factorization-Machine based Neural Network for CTR Prediction |
|
Deep Matrix Factorization Models for Recommender Systems. |
Neural Collaborative Filtering |
|
|
AutoRec: Autoencoders Meet Collaborative Filtering (Item-based) |
|
NAIS: Neural Attentive Item Similarity Model for Recommendation |
Neural Collaborative Filtering |
|
|
Neural Factorization Machines for Sparse Predictive Analytics |
|
Neural Personalized Ranking for Image Recommendation (Model without visual features) |
|
AutoRec: Autoencoders Meet Collaborative Filtering (User-based) |
Wide & Deep Learning for Recommender Systems |
ConvMF¶
-
class
elliot.recommender.neural.ConvMF.convolutional_matrix_factorization.
ConvMF
(data, config, params, *args, **kwargs)[source]¶ Bases:
elliot.recommender.recommender_utils_mixin.RecMixin
,elliot.recommender.base_recommender_model.BaseRecommenderModel
Convolutional Matrix Factorization for Document Context-Aware Recommendation
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: ConvMF: 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
ConvNeuMF¶
-
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
DeepFM¶
-
class
elliot.recommender.neural.DeepFM.deep_fm.
DeepFM
(data, config, params, *args, **kwargs)[source]¶ Bases:
elliot.recommender.recommender_utils_mixin.RecMixin
,elliot.recommender.base_recommender_model.BaseRecommenderModel
DeepFM: A Factorization-Machine based Neural Network for CTR Prediction
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: DeepFM: 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')
DMF¶
-
class
elliot.recommender.neural.DMF.deep_matrix_factorization.
DMF
(data, config, params, *args, **kwargs)[source]¶ Bases:
elliot.recommender.recommender_utils_mixin.RecMixin
,elliot.recommender.base_recommender_model.BaseRecommenderModel
Deep Matrix Factorization Models for Recommender Systems.
For further details, please refer to the paper
- Parameters
lr – Learning rate
reg – Regularization coefficient
user_mlp – List of units for each layer
item_mlp – List of activation functions
similarity – Number of factors dimension
To include the recommendation model, add it to the config file adopting the following pattern:
models: DMF: meta: save_recs: True epochs: 10 batch_size: 512 lr: 0.0001 reg: 0.001 user_mlp: (64,32) item_mlp: (64,32) similarity: cosine
GMF¶
-
class
elliot.recommender.neural.GeneralizedMF.generalized_matrix_factorization.
GMF
(data, config, params, *args, **kwargs)[source]¶ Bases:
elliot.recommender.recommender_utils_mixin.RecMixin
,elliot.recommender.base_recommender_model.BaseRecommenderModel
Neural Collaborative Filtering
For further details, please refer to the paper
- Parameters
mf_factors – Number of latent factors
lr – Learning rate
is_edge_weight_train – Whether the training uses edge weighting
To include the recommendation model, add it to the config file adopting the following pattern:
models: GMF: meta: save_recs: True epochs: 10 batch_size: 512 mf_factors: 10 lr: 0.001 is_edge_weight_train: True
ItemAutoRec¶
-
class
elliot.recommender.neural.ItemAutoRec.itemautorec.
ItemAutoRec
(data, config, params, *args, **kwargs)[source]¶ Bases:
elliot.recommender.recommender_utils_mixin.RecMixin
,elliot.recommender.base_recommender_model.BaseRecommenderModel
AutoRec: Autoencoders Meet Collaborative Filtering (Item-based)
For further details, please refer to the paper
- Parameters
hidden_neuron – List of units for each layer
lr – Learning rate
l_w – Regularization coefficient
To include the recommendation model, add it to the config file adopting the following pattern:
models: ItemAutoRec: meta: save_recs: True epochs: 10 batch_size: 512 hidden_neuron: 500 lr: 0.0001 l_w: 0.001
NAIS¶
-
class
elliot.recommender.neural.NAIS.nais.
NAIS
(data, config, params, *args, **kwargs)[source]¶ Bases:
elliot.recommender.recommender_utils_mixin.RecMixin
,elliot.recommender.base_recommender_model.BaseRecommenderModel
NAIS: Neural Attentive Item Similarity Model for Recommendation
For further details, please refer to the paper
- Parameters
factors – Number of latent factors
algorithm – Type of user-item factor operation (‘product’, ‘concat’)
weight_size – List of units for each layer
lr – Learning rate
l_w – Regularization coefficient
l_b – Bias regularization coefficient
alpha – Attention factor
beta – Smoothing exponent
neg_ratio – Ratio of negative sampled items, e.g., 0 = no items, 1 = all un-rated items
To include the recommendation model, add it to the config file adopting the following pattern:
models: NAIS: meta: save_recs: True factors: 100 batch_size: 512 algorithm: concat weight_size: 32 lr: 0.001 l_w: 0.001 l_b: 0.001 alpha: 0.5 beta: 0.5 neg_ratio: 0.5
NeuMF¶
-
class
elliot.recommender.neural.NeuMF.neural_matrix_factorization.
NeuMF
(data, config, params, *args, **kwargs)[source]¶ Bases:
elliot.recommender.recommender_utils_mixin.RecMixin
,elliot.recommender.base_recommender_model.BaseRecommenderModel
Neural Collaborative Filtering
For further details, please refer to the paper
- Parameters
mf_factors – Number of MF latent factors
mlp_factors – Number of MLP latent factors
mlp_hidden_size – List of units for each layer
lr – Learning rate
dropout – Dropout rate
is_mf_train – Whether to train the MF embeddings
is_mlp_train – Whether to train the MLP layers
To include the recommendation model, add it to the config file adopting the following pattern:
models: NeuMF: meta: save_recs: True epochs: 10 batch_size: 512 mf_factors: 10 mlp_factors: 10 mlp_hidden_size: (64,32) lr: 0.001 dropout: 0.0 is_mf_train: True is_mlp_train: True
NFM¶
-
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')
NPR¶
-
class
elliot.recommender.neural.NPR.neural_personalized_ranking.
NPR
(data, config, params, *args, **kwargs)[source]¶ Bases:
elliot.recommender.recommender_utils_mixin.RecMixin
,elliot.recommender.base_recommender_model.BaseRecommenderModel
Neural Personalized Ranking for Image Recommendation (Model without visual features)
For further details, please refer to the paper
- Parameters
mf_factors – Number of MF latent factors
mlp_hidden_size – List of units for each layer
lr – Learning rate
l_w – Regularization coefficient
dropout – Dropout rate
To include the recommendation model, add it to the config file adopting the following pattern:
models: NPR: meta: save_recs: True epochs: 10 batch_size: 512 mf_factors: 100 mlp_hidden_size: (64,32) lr: 0.001 l_w: 0.001 dropout: 0.45
UserAutoRec¶
-
class
elliot.recommender.neural.UserAutoRec.userautorec.
UserAutoRec
(data, config, params, *args, **kwargs)[source]¶ Bases:
elliot.recommender.recommender_utils_mixin.RecMixin
,elliot.recommender.base_recommender_model.BaseRecommenderModel
AutoRec: Autoencoders Meet Collaborative Filtering (User-based)
For further details, please refer to the paper
- Parameters
hidden_neuron – List of units for each layer
lr – Learning rate
l_w – Regularization coefficient
To include the recommendation model, add it to the config file adopting the following pattern:
models: UserAutoRec: meta: save_recs: True epochs: 10 batch_size: 512 hidden_neuron: 500 lr: 0.0001 l_w: 0.001
WideAndDeep¶
-
class
elliot.recommender.neural.WideAndDeep.wide_and_deep.
WideAndDeep
(data, config, params, *args, **kwargs)[source]¶ Bases:
elliot.recommender.recommender_utils_mixin.RecMixin
,elliot.recommender.base_recommender_model.BaseRecommenderModel
Wide & Deep Learning for Recommender Systems
(For now, available with knowledge-aware features)
For further details, please refer to the paper
- Parameters
factors – Number of latent factors
mlp_hidden_size – List of units for each layer
lr – Learning rate
l_w – Regularization coefficient
l_b – Bias Regularization Coefficient
dropout_prob – Dropout rate
To include the recommendation model, add it to the config file adopting the following pattern:
models: WideAndDeep: meta: save_recs: True epochs: 10 batch_size: 512 factors: 50 mlp_hidden_size: (32, 32, 1) lr: 0.001 l_w: 0.005 l_b: 0.0005 dropout_prob: 0.0