Skip to main content

DeepFM (Neural Scoring)

warning

This is an article from the Shaped 1.0 documentation. The APIs have changed and information may be outdated. Go to Shaped 2.0 docs

Description

The DeepFM (Deep Factorization Machine) policy combines a Factorization Machine (FM) component and a deep neural network (DNN) component, sharing input feature embeddings.

  • FM Component: Models low-order interactions (linear features and pairwise/2nd-order interactions) efficiently using the dot product of feature embeddings.
  • Deep Component: An MLP that learns high-order, non-linear feature interactions implicitly from the shared embeddings.

This avoids the need for manual feature crossing (unlike the wide part of Wide & Deep) and captures a spectrum of interactions. Outputs from both components are combined for the final prediction.

Policy Type: deepfm Supports: scoring_policy

Configuration Example

policy_configs:
scoring_policy:
policy_type: deepfm
# Architecture
embedding_dim: 16 # Dimensionality of feature embeddings (shared)
deep_hidden_units: [128, 64, 32] # Layer sizes for the deep MLP component
activation_fn: "relu" # Activation for deep layers
dropout: 0.2 # Dropout rate for deep layers
# Training Control
learning_rate: 0.001 # Optimizer learning rate

References