DeepFM : A Factorization - Machine based Neural network for CTR Prediction
Abstract
- CTR(Click Through Rate)를 예측하는 모델로 Low와 High - order interactions 모두 학습 가능
- Factorization Machine의 장점과 Deep Learning의 장점을 모두 합친 모델이 DeepFM
- 추가 featrue engineering 없이 raw featrue를 그대로 사용할 수 있음(fe가 없어서 도메인지식이 필요X)
- 이 부분이 wide&deep 과 deepfm의 중요한 차이점
- deepfm의 최종 목표는 CTR을 높이는 것이고 CTR을 높이는 item을 최종적으로 추천하는 것
Introduction
1. CTR : user가 추천된 항목을 click할 확률을 예측하는 문제
- CTR(estimated probability)에 의해 user가 선호할 item 랭킹을 부여
2. Learn Implicit Featrue Interaction
- 예시
- ex1) App category와 Timestamp 관계 :음식 배달 어플은 식사시간 근처에 다운로드가 많다
- ex2) User gender age 관계 : 남자 청소년들은 슈팅과 Rpg게임을 선호 한다
- ex3) 숨겨진 관계 : 맥주와 기저귀를 함께 구매하는 사람들이 많다.
- low와 high - order feature interaction을 모두 고려해야한다
- Explicit과 Implicit featrues를 모두 모델링 할 수 있다.
Contributions
- DeepFm이라는 모델 구조를 제안
- Low-order(FM)와 High-order(DNN)의 interaction을 모두 포함, END-to END 학습 가능
- 엔드투엔드 학습이 가능하므로 pre-trained 모델이 필요하지 않음
- DeepFM은 다른 비슷한 모델 보다 더 효율적으로 학습 할 수 있음
- Input과 embedding vector를 share 한다
- DeepFM은 benchmark와 커머셜데이터의 CTR prediction에서 의미있는 성능향상을 이뤘음
- Low-order(FM)와 High-order(DNN)의 interaction을 모두 포함, END-to END 학습 가능
Our Approach
- Input (sparse featrue) 및 Dense Embeddings을 모두 공유함
- share한 embedding을 바탕으로 하나는 FM layer(wide) 하나는 Hidden layer(deep)로 만듦
- FM , Hidden을 동시에 활용하여 최종적인 output을 만드는 구조
DeepFM
- sparse feature의 field들 중에 노란색 부분이 embedding vector에 해당되는 부분
- 최종 목표는 Y^을 예측하는 것 (CTR MODEL -> 0과 1을 prediction하는 확률 값)
- y^ 은 FM에서 나온 y값과 DNN에서나온 y값을 합치고 concat해서 시그모이드 취한 값
FM Component
- embedding vector의 내적을 order-2의 가중치로 사용
- (1) sparse feature가 들어오고 (2) embedding값이 넘어와서 dense embedding이 만들어지고 그 dense embedding을 통해서 embedding끼리 내적을 하는 것이 위 수식의 내용이자 FM componenet의 핵심
Deep Component
- 모든 sparse feature들을 모두 합쳐서 하나의 a0라는 것을 만들고 a0를 hidden layer에 태운다
- 한마디로 dense embedding을 전부합쳐서 activation function을 통과해서 sigmoid를 취해줌
Relationship with the other Neural Networks
- FNN ,PNN, Wide & Deep의 장점을 모두 합친 것이 Deep FM
결론 및 정리
1. Deep FM
- deep component와 FM component를 합쳐서 학습한다
- Pre - training이 필요하지 않다
- High와 low - order feature interactions 둘 다 모델링 한다.
- Input과 embedding vector를 share한다
2. From experiments
- CTR task에서 더 좋은 성능을 얻을 수 있다
- 비교적 다른 sota 모델에 비해 학습시간이 덜 걸린다
- 다른 SOTA모델보다 AUC와 LogLoss에서 성능이 뛰어나다
- DeepFM이 가장 efficient한 모델이다
Reference
1) Deep FM 논문 : https://arxiv.org/pdf/1703.04247.pdf
반응형
'논문 리뷰 및 구현' 카테고리의 다른 글
Factorization Machine 논문 리뷰 (0) | 2023.03.27 |
---|