deepctr.models.nfm module

Author:
Weichen Shen,wcshen1994@163.com
Reference:
[1] He X, Chua T S. Neural factorization machines for sparse predictive analytics[C]//Proceedings of the 40th International ACM SIGIR conference on Research and Development in Information Retrieval. ACM, 2017: 355-364. (https://arxiv.org/abs/1708.05027)
deepctr.models.nfm.NFM(linear_feature_columns, dnn_feature_columns, dnn_hidden_units=(128, 128), l2_reg_embedding=1e-05, l2_reg_linear=1e-05, l2_reg_dnn=0, init_std=0.0001, seed=1024, bi_dropout=0, dnn_dropout=0, dnn_activation='relu', task='binary')[source]

Instantiates the Neural Factorization Machine architecture.

Parameters:
  • linear_feature_columns – An iterable containing all the features used by linear part of the model.
  • dnn_feature_columns – An iterable containing all the features used by deep part of the model.
  • dnn_hidden_units – list,list of positive integer or empty list, the layer number and units in each layer of deep net
  • l2_reg_embedding – float. L2 regularizer strength applied to embedding vector
  • l2_reg_linear – float. L2 regularizer strength applied to linear part.
  • l2_reg_dnn – float . L2 regularizer strength applied to DNN
  • init_std – float,to use as the initialize std of embedding vector
  • seed – integer ,to use as random seed.
  • biout_dropout – When not None, the probability we will drop out the output of BiInteractionPooling Layer.
  • dnn_dropout – float in [0,1), the probability we will drop out a given DNN coordinate.
  • dnn_activation – Activation function to use in deep net
  • task – str, "binary" for binary logloss or "regression" for regression loss
Returns:

A Keras model instance.