DeepFM: A Factorization-Machine based Neural Network for CTR Prediction

Digest (CISELQ)

  • Context: CTR(Click-Through Rate) 예측은 추천·광고 시스템의 핵심 태스크로, 사용자 클릭 확률을 정확히 추정하려면 저차(low-order) 및 고차(high-order) feature interaction을 모두 학습해야 한다. 기존 접근들은 한쪽에 치우치거나(로지스틱 회귀, FM → 저차 위주) 별도 feature engineering이 필요하다(Wide & Deep).
  • Issue: Wide & Deep은 wide 파트에 expert feature engineering(수동 cross-product)을 요구하고, FM만으로는 고차 상호작용을 포착하기 어렵다. 저차와 고차를 end-to-end로 자동 학습하는 통합 아키텍처가 필요하다.
  • Solution: FM 컴포넌트(저차 interaction)와 Deep 컴포넌트(고차 interaction)를 공유 임베딩(shared embedding) 으로 병렬 결합한 DeepFM을 제안. raw feature 외 추가 feature engineering 없이 end-to-end 학습 가능.
  • Evidence: Criteo(공개)와 Company(사내 앱스토어) 데이터셋에서 LR, FM, FNN, PNN, Wide & Deep 대비 AUC/Logloss 모두 개선. Criteo AUC ≈ 0.8007, Company AUC ≈ 0.8715 수준으로 최고 성능.
  • Limitation: 임베딩 차원·레이어 하이퍼파라미터 민감성, 초대규모 희소 도메인에서 메모리 비용, 정형(tabular) CTR 외 도메인으로의 직접 일반화는 제한적.
  • Question: 공유 임베딩이 FM과 DNN의 학습 signal을 상호 강화하는가, 아니면 한쪽이 병목이 되는가? 최근 DCN/xDeepFM 계열 대비 어디까지 경쟁력이 있는가?

섹션별 요약

Introduction

CTR은 광고·추천 수익에 직결되므로 feature interaction을 정확히 포착하는 것이 중요하다. 예: “식사 시간에 배달 앱 클릭”(order-2, 시간×앱카테고리)과 “10대 남성이 슈팅게임 선호”(order-3, 연령×성별×카테고리) 같은 다차 상호작용이 혼재한다. LR은 수작업 cross-feature에 의존하고, FM은 효율적으로 order-2를 학습하지만 고차는 약하다. CNN/RNN 기반 CTR 모델은 인접 feature에 편향되거나 시퀀셜 구조 가정이 필요하고, Wide & Deep은 wide 쪽 feature engineering이 병목이다. DeepFM은 (1) pre-training 불필요, (2) 저차+고차 모두 모델링, (3) FM과 DNN이 동일 임베딩 공유라는 세 장점을 제공한다.

Methods

입력은 여러 field(유저 ID, 아이템 ID, 카테고리 등)의 one-hot 벡터이며, 각 field는 embedding layer에서 저차원 dense 벡터로 매핑된다. 이 임베딩이 FM과 Deep 두 컴포넌트에 동시에 입력된다.

  • FM 컴포넌트: order-1 항(선형)과 order-2 항(임베딩 내적)으로 interaction 점수 산출.
  • Deep 컴포넌트: 동일 임베딩을 concat하여 수 개의 fully-connected layer(ReLU) 통과 → 고차 interaction 학습.
  • 통합 예측: , sigmoid로 CTR 확률 출력. Loss는 binary logloss.

end-to-end backprop으로 임베딩이 FM·DNN 양쪽 gradient를 동시에 받아 학습되어, Wide & Deep의 수작업 wide feature가 필요 없다.

Results

  • Criteo: AUC 0.8007 / Logloss 0.45083 — LR, FM, FNN, IPNN, OPNN, PNN*, LR+DNN, FM+DNN, Wide&Deep 모두 능가.
  • Company: AUC 0.8715 / Logloss 0.02618 — 동일하게 최고 성능.
모델Criteo AUCCriteo LoglossCompany AUCCompany Logloss
LR0.76860.477620.86400.02648
FM0.78920.460770.86780.02633
FNN0.79630.457380.86830.02629
PNN (best)0.79870.453890.86890.02627
Wide & Deep0.79900.453620.87120.02619
DeepFM0.80070.450830.87150.02618

효율성 면에서도 DeepFM은 pre-training이 필요 없어 FNN 대비 학습 파이프라인이 단순하며, CPU/GPU 학습 시간이 경쟁 모델과 유사하거나 빠름.

Discussion

공유 임베딩 설계가 핵심이다. 임베딩은 FM의 저차 interaction loss와 DNN의 고차 loss를 동시에 backprop 받아, 한 쪽만 학습했을 때보다 더 일반화 가능한 representation을 얻는다. 하이퍼파라미터 연구: (1) 활성화 함수 — ReLU/tanh가 sigmoid보다 우수, (2) dropout 0.60.9 최적, (3) neurons/layer 200400 sweet spot, (4) layer 수 3 부근 최적, (5) network shape — constant(동일 너비)가 increasing/decreasing/diamond보다 안정적.

Insights

  • 저차와 고차 interaction은 상보적이며, 하나의 모델에서 동시에 학습하는 것이 분리 학습보다 우수.
  • 공유 임베딩 + joint training이 Wide & Deep의 수작업 feature engineering을 대체할 수 있다.
  • FM은 단순한 선형 모델이 아닌, DNN과 연결되는 구조적 inductive bias(pairwise 상호작용 prior)로 기능한다.

Discussion Points

  • 공유 임베딩이 FM/DNN 중 한쪽에 편향되어 학습될 위험은 없는가? (실험상 없지만 도메인별 확인 필요)
  • xDeepFM(CIN), DCN, AutoInt 등 후속 모델 대비 여전히 강한 baseline인가?
  • 초대규모 field(수억 카테고리)에서 임베딩 테이블 sharding 전략은?

메타데이터

항목내용
저자Huifeng Guo, Ruiming Tang, Yunming Ye, Zhenguo Li, Xiuqiang He
발표IJCAI 2017
연도2017
arXiv1703.04247
과제CTR Prediction (binary classification)
데이터Criteo (공개), Company (Huawei 앱스토어)
평가AUC, Logloss
코드커뮤니티 구현 다수(DeepCTR 등)

왜 이 연구를 하는가?

광고·추천에서 CTR 정확도 1%p 개선이 막대한 매출로 이어지기 때문에, feature interaction을 자동으로 학습하는 end-to-end 모델이 필수다. 기존 FM은 저차에 국한되고, Wide & Deep은 도메인 전문가의 수작업 cross-feature에 의존한다. DeepFM은 이 두 한계를 동시에 해결하여 production CTR 시스템의 표준 baseline으로 자리잡는 것을 목표로 한다.

방법 (Method)

flowchart TB
    X[Raw Sparse Features<br/>Field1..FieldN] --> E[Shared Embedding Layer]
    X --> L[Order-1 Linear Weights w]
    E --> FM[FM Component<br/>Order-2 Inner Product]
    E --> D1[Dense Layer 1]
    D1 --> D2[Dense Layer 2]
    D2 --> D3[Dense Layer L]
    D3 --> DNN[DNN Output y_DNN]
    L --> SUM((+))
    FM --> SUM
    DNN --> SUM
    SUM --> SIG[sigmoid]
    SIG --> Y[CTR y_hat]

핵심 수식:

  • FM order-1:
  • FM order-2:
  • DNN:
  • 최종:

발견

발견증거함의
DeepFM이 전 모델 대비 AUC/Logloss 모두 최고Criteo 0.8007 / Company 0.8715공유 임베딩 + joint 학습의 효과
Pre-training 불필요FNN은 FM pre-training 요구, DeepFM은 random init학습 파이프라인 단순화
ReLU + dropout 0.6~0.9 + 3 layer + constant shape가 최적하이퍼파라미터 sweepproduction 튜닝 가이드
Wide & Deep 대비 feature engineering 불필요wide 쪽 수작업 cross 없음엔지니어링 비용 절감

이론적 의의

DeepFM은 “feature interaction learning은 저차 구조적 prior(FM)와 고차 비선형 표현(DNN)의 additive ensemble로 분해 가능하며, 두 컴포넌트가 동일 임베딩 공간을 공유할 때 representation이 정규화된다”는 설계 원리를 확립했다. 이는 이후 xDeepFM, DCN, AutoInt, FiBiNET 등 다수 후속 CTR 모델의 공유 임베딩 + multi-branch 설계 패러다임의 시초가 된다. 또한 FM을 단독 모델이 아닌 modular building block으로 재해석한 점에서 이론적 기여가 크다.

재현성 및 신뢰도 평가

항목평가근거
데이터 공개BCriteo 공개, Company는 비공개
코드 공개B원저자 공식 repo 제한적이나 커뮤니티 구현(DeepCTR 등) 광범위
하이퍼파라미터 기술A활성화·dropout·layer·shape sweep 상세
통계적 유의성B단일 split 결과 위주, 분산·CI 미보고
재현 용이성B공개 데이터로 재현 가능하나 Company 결과는 검증 불가
전체 EvidenceA강한 baseline 우위 + 풍부한 ablation

관련 연구

  • FM: Rendle, 2010 — factorized pairwise interaction의 원형.
  • Wide & Deep: Cheng et al., 2016 — wide(수작업 cross) + deep 병렬 구조, DeepFM의 직접 선행.
  • FNN: Zhang et al., 2016 — FM pre-trained embedding을 DNN 입력으로 사용.
  • PNN: Qu et al., 2016 — product layer로 interaction 강조.
  • 후속: xDeepFM(CIN, Lian 2018), DCN(Wang 2017), AutoInt(Song 2019), FiBiNET(Huang 2019) — 공유 임베딩 패러다임을 계승·확장.

원자적 인사이트

  1. 공유 임베딩은 multi-view 정규화기다 — 같은 feature 임베딩이 FM(pairwise prior)과 DNN(비선형 고차) 두 loss로부터 gradient를 받으면 단일 view로 학습했을 때 발생하는 overfitting이 억제되며, 이는 멀티태스크 학습의 특수 사례로 해석 가능하다.
  2. 저차 interaction은 여전히 structural prior로 유효하다 — 충분히 깊은 DNN이 이론적으로 임의 함수를 근사해도, pairwise product 같은 명시적 구조를 명시적으로 주입하면 데이터 효율이 개선된다. 이는 tabular/CTR 도메인에서 inductive bias의 가치를 재확인한다.
  3. End-to-end joint training의 파이프라인 가치 — FNN처럼 FM pre-train → DNN fine-tune 2단계가 아니라 random init에서 한 번에 학습 가능한 점은, production MLOps에서 재학습·A/B 테스트 속도를 크게 개선한다.

핵심 용어 정리

  • CTR (Click-Through Rate): 노출 대비 클릭 확률. 광고·추천 핵심 KPI.
  • Feature Interaction: 여러 feature의 결합이 target에 미치는 비가산(non-additive) 효과. order-k는 k개 feature의 동시 곱.
  • Factorization Machine (FM): pairwise interaction을 latent vector 내적 으로 인수분해하여 에 계산하는 모델.
  • Shared Embedding: FM과 DNN이 동일 임베딩 테이블을 참조하여 파라미터·gradient를 공유하는 구조.
  • Wide & Deep: Google 2016, 수작업 cross-feature(wide) + DNN(deep) 병렬 모델.
  • Logloss: binary cross-entropy, CTR 확률 예측의 calibration까지 포함한 지표.
  • AUC: ROC 곡선 아래 면적, 순위(ranking) 품질 지표.

태그

CTR RecSys DeepFM FactorizationMachine FeatureInteraction WideAndDeep Application IJCAI2017