추천 시스템의 CTR을 극대화를 위해 정교한 feature interactions를 학습하는 것이 중요해짐
현재 존재하는 방법들의 문제점
Google의 최신 와이드 & 딥 모델과 비교했을 때, DeepFM은 피처 엔지니어링이 필요하지 않음
기존 CTR 예측 모델에 비해 DeepFM의 효과와 효율성을 입증
추천시스템에서 click-through rate (CTR)의 예측은 중요 → 사용자가 추천 항목을 클릭할 확률을 추정
대부분의 추천시스템에서 목표는 클릭률을 최대화하는 것
추정되는 CTR에 의해 아이템 랭킹을 알 수 있고 이를 사용자에게 추천할 수 있음
온라인 광고 → CTR * bid로 랭킹 전략을 세울 수 있음 → CTR을 정확하게 추정하는 것이 핵심
(bid는 사용자가 아이템을 클릭 했을 때 시스템이 얻는 수익)
일반적으로 사용자 클릭 행동 뒤의 이러한 상호작용은 매우 정교하며, low- and high-order feature interactions은 매우 중요한 역할을 한다.
구글의 Wide & Deep 모델에 따르면, low- and high-order feature interactions를 동시에 고려하는 것은 하나만 고려하는 것보다 더 나은 성능을 보인다.
Figure 1: DeepFM의 Wide & deep 구조. wide and deep 모델은 동일한 입력값의 feature vector를 공유 → DeepFM은 low-order와 high-order feature interaction을 동시에 학습할 수 있음
주요 과제는 feature interaction들을 효과적으로 모델링하는 것
쉽게 이해 가능한 상호작용일지라도 기능의 수가 많은 경우 전문가가 이를 철저하게 모델링하기란 쉽지 않다.
FTRL(2013)과 같은 generalizaed linear model은 간단함에도 괜찮은 성능 → 그러나, 선형 모델은 feature interaction을 학습하는 능력이 부족: 그냥 feature 페어를 하나로 포함시킬 뿐 일반화하기 어려움)
Factorization Model(FM)(2010)은 latent vector의 inner product로 feature interaction 학습 가능. 그러나, 실제로 order2-interaction만 거의 고려된다(복잡성의 이유)
feature interaction 잡는 powerful한 방법 → DNN(CNN,RNN,FNN,PNN,Wide&Deep) 간단히 소개
하지만 위 모델들은 다음 문제 중 하나 이상을 포함함(초고에서도 언급된 이유)
1. biased to low- or high-order feature interaction
2. rely on feature engineering
⇒ 이걸 해결하는 게 DeepFM
DeepFM : FM(low order feature interactions)+DNN(high-order feature interactions)
low- and high-order feature interactions을 모두 학습하는 것이 목표
⇒ Factorization-Machine based neural network (DeepFM)을 제안
Figure 1에서 볼 수 있듯이 DeepFM은 동일한 입력을 공유하는 두 가지 구성 요소, 즉 FM component와 deep component로 구성됨
feature 에 대해서,
는 FM component에서는 order-2(2차원) feature interactions을 모델링, deep component에서는 고차원 feature interactions을 모델링
, 및 네트워크 매개변수()를 포함한 모든 매개변수가 공동으로 학습됨:
0과 1로 구성되는 은 예측된 CTR
은 FM component의 결과
은 deep component의 결과
FM의 구조
FM은
FM의 출력:
Addition unit (<>): order-1 features의 중요도를 반영
Inner Product units: order-2 feature interactions의 중요도를 반영
deep component는 feed-forward 신경망으로, 고차원의 feature interactions를 학습하는 데 사용됨
그림 3에서 볼 수 있듯이 데이터 레코드(벡터)가 신경망에 공급됨
따라서 첫 번째 hidden layer에 입력하기 전에 입력 벡터를 저차원의 밀도가 높은 실제값 벡터로 압축하는 임베딩 레이어가 필요
그림 4는 입력 계층에서 임베딩 계층까지의 하위 네트워크 구조를 보여줌
이 네트워크 구조의 흥미로운 특징:
1) 서로 다른 입력 필드 벡터의 길이는 다를 수 있지만 임베딩의 크기(k)는 동일하다는 점
2) FM의 잠재 특징 벡터(V)는 이제 네트워크 가중치로 사용되어 학습되고 입력 필드 벡터를 임베딩 벡터로 압축하는 데 사용된다는 점
본 연구에서는 FM의 잠재 특징 벡터를 사용하여 네트워크를 초기화하는 대신, 다른 DNN 모델과 함께 전체 학습 아키텍처의 일부로 FM 모델을 포함
따라서 FM에 의한 사전 훈련이 필요하지 않으며 대신 전체 네트워크를 end-to-end 방식으로 공동으로 훈련
end-to-end 방식
: 입력에서 출력까지 파이프라인 네트워크(전체 네트워크를 이루는 부분적인 네트워크) 없이 신경망으로 한 번에 처리한다는 의미
임베딩 레이어의 출력은 다음과 같음:
ei 는 i 번째 필드의 임베딩이고 m은 필드의 수
a(0)을 심층 신경망에 입력하면 forward 프로세스가 진행됨:
l은 레이어 깊이이고 σ는 활성화 함수
a(l), W(l), b(l)는 l번째 레이어의 출력, 모델 가중치, 바이어스
그 후 real-value feature vector가 생성되고, 이 feature vector는 최종적으로 CTR 예측을 위한 시그모이드 함수에 입력됨
|H| 는 hidden layer의 수
FM component와 deep component는 동일한 피처 임베딩을 공유하므로 두 가지 중요한 이점 존재
CTR 예측에 존재하는 딥러닝 모델과 DeepFM과의 비교
FNN(FM-initialized feedforward neural network)
FM 사전 훈련 전략에는 두 가지 한계가 있음:
반면, DeepFM은 사전 학습이 필요하지 않으며 high- and low-order feature interactions을 모두 학습
PNN
high-order feature interaction을 포착하기 위해 PNN은 임베딩 레이어와 첫 번째 hidden layer 사이에 product layer를 부과
제품 작동 유형에 따라 세 가지 변형이 있습니다:
IPNN, OPNN, PNN∗가 있으며, IPNN은 벡터의 내적분, OPNN은 외적분, PNN∗는 내적분과 외적분 모두에 기반
보다 효율적인 계산을 위해 저자는 내적과 외적의 근사값을 모두 계산하는 방법을 제안:
Wide & Deep
반면, DeepFM은 입력된 raw features에서 직접 학습하여 입력을 처리하기 때문에 이러한 전문 지식이 필요하지 않음
Summarizations
DeepFM은 사전 학습과 피처 엔지니어링이 필요 없고 low- and high-order feature interactions을 모두 포착하는 유일한 모델
LR, FM, FNN, PNN (three variants), Wide & Deep, and DeepFM.
본 논문에서는 CTR 예측을 위한 새로운 심층 신경망을 제안
CTR 예측
추천 시스템에서의 딥러닝
CTR 예측 이외의 추천 작업에서도 여러 딥러닝 모델이 제안되고 있음
본 논문에서는 최신 모델의 단점을 극복하고 더 나은 성능을 달성하기 위해 CTR 예측을 위한 Factorization-Machine 기반 신경망인 DeepFM을 제안
DeepFM은 deep 컴포넌트와 FM 컴포넌트를 함께 학습함
다음과 같은 장점을 통해 성능을 향상시킴
두 가지 실제 데이터 세트(Criteo dataset and a commercial App Store dataset)를 대상으로 광범위한 실험을 진행하여 DeepFM과 최신 모델의 효과와 효율성을 비교
실험 결과
1) 두 데이터 세트 모두에서 DeepFM이 AUC와 Logloss측면에서 최신 모델보다 우수한 성능을 보임
2) DeepFM의 효율성은 최신 모델 중 가장 효율적인 deep model과 비슷한 수준으로 나타남
향후 연구 방향의 흥미로운 점