일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- github
- 정규식
- 파이썬
- git config global
- Restore
- remote repository 생성
- 1330
- 수정사항업데이트
- git
- 1
- git commit
- Push
- commit
- STAGE
- Reset
- local repository 생성
- boostcamp #aI tech #주간리뷰
- ADD
- amend
- GitHub 설치
- python
- Baekjoon
- 두수비교하기
- git push
- 백준
- regExr
- 함수
- 15596
- Today
- Total
Très bien
(Paper Review) A Factorization-Machine based Neural Network for CTR Prediction 본문
(Paper Review) A Factorization-Machine based Neural Network for CTR Prediction
LemonSoda 2022. 3. 22. 23:011. Overview
이 논문은 Factorization machines와 neural network를 합친 형태의 Deep FM(Factorization Mode)을 소개합니다. Uver-Item간 복잡한 상호작용을 학습하는 것은 추천 시스템의 CTR(Click-through rate, 클릭률)을 높이기 위한 좋은 성능입니다. 본 연구는특별한 feature engineering을 하지 않아도 편향되지 않게 user-item 상호작용의 nonlinear한 특성을 학습하기 위한 DeepFM(Factorizatino Machin)을 제안했습니다. 추천 시스템의 FM구조를 Deep learning에 적용하여 feature를 학습한 본 논문의 architecture는 Google 의 Wide & Deep 모델과 비교했을 때, wide term과 deep term의 입력값을 공통으로 적용할 수 있다는 장점이 있습니다.
2. Approaches
2.1. Terminology
$(\chi, y)$ : n dimensional dataset, where $\chi$ is $m$-fields data records usually a pair of user-item and $y$ is associated labeling {0, 1} . (y = 1 is the user clicked the item, and y =0 otherwise) $\chi$ 는 성별, 지역 등의 범주형 정보를 포함할 수 있으며, 나이와 같은 연속형 필드도 포함할 수 있습니다. 각각의 범주형 입력값은 one-hot 인코딩 형태로 표현되어집니다. 각각의 인스턴스는 (x,y) 형태로 전환되며, x는 다음과 같은 형태의 d차원 벡터입니다. 여기서 xfield_j는 $chi$의 j 번째 필드의 벡터 표현입니다. 일반적으로, x는 고차원으로 매우 sparse한 데이터입니다. CTR예측은 \hat{y}=model_{CTR}(x) 형태의 예측 모델을 만들어서 각 유저가 주어진 context에서 특정 아이템을 클릭할 확률값을 예측하는 문제입니다.
2.2 DeepFM (Factorizaion Machine)
사용자-아이템 간 저차원 & 고차원 특성을 학습하기 위해, Factorization-Machine에 Deep Neural-Network를 적용한 DeepFM 구조를 제안했습니다. DeepFM은 크게 FM component와 Deep Component의 두 개의 구조로 구성되어 있으며, 두 컴포넌트는 공통된 입력 feature를 적용합니다. i번째 feature에 대해 $\omega_i$ 는 1차원 가중치가 적용되고, latent vector $V_i$는 서로 다른 feature 간 상호작용 효과를 측정하기 위해 적용됩니다. $V_i$는 2차원의 feature 상호작용을 모델링하기 위한 FM 컴포넌트에 입력되며, deep component가 고차원 특성 간 상호작용을 하기 위한 모델에 적용됩니다. 모든 파라미터들은 결합되어 학습되고, 예측 모델과 통합되어집니다.
2.3 FM Component
FM Component는 추천시스템의 feature간 상호작용을 위한 factorization machine입니다. feature들 간의 선형적 상호작용(1st order) 뿐 아니라, 2차원의 pairwised feature interaction 도 latent vector를 각각 inner product를 적용해 모델링합니다. 각 feature에 대한 latent vector V_i, V_j를 inner prouct함으로써 feature간의 2nd order feature relationship을 모델링에 반영했습니다.
2.4. Deep Component
한편, Deep Component는 고차원의 feature interaction을 모델링하기 위한 Feed-forward Neural Network의 구조입니다. 아래 수식에서 $e_i$는 i번째 필드에 대한 임베딩이며, m은 필드의 개수입니다. m개의 임베딩, ${a}^{(0)}$은 DNN에 입력되고
m개의 임베딩, ${a}^{(0)}$은 DNN에 입력되어 forward process가 적용됩니다. 여기서 $l$은 레이어의 depth이며 $sigma$는 activation function입니다. {a}^{(l)}, {W}^{(l)}, {b}^{(l)} 각각은 $l$번째 layer의 출력, 가중치, 그리고 바이어스를 나타냅니다.
${a}^{(l+1)} = \sigma ({W}^{(l)}{a}^{(l)}+{b}^{(l)})$
각 embedding들이 layer를 거치면 dense한 실제 값의 feature vector가 생성되며, 이것은 최종적으로 sigmoid function에 입력되어 CTR을 예측하는데 적용됩니다.
$y_{DNN}=sigma({W}^{(\left|H\right|+1)}\cdot{a}^{(\left|H\right|)}+{b}^{(\left|H\right|+1)})$
N. References
- DeepFM: A Factorization-Machine based Neural Network for CTR Prediction, Huifeng Guo et al.
- Wide & Deep Learning for Recommender Systems
- Factorization Machines
- Deep Factorization Machines — Dive into Deep Learning
'Study > RecSys' 카테고리의 다른 글
S3 Rec (0) | 2022.03.23 |
---|---|
Context-aware Recommendation (0) | 2022.03.22 |
(Paper Review) Training Deep AutoEncoders for Collaborative Filtering (0) | 2022.03.20 |
(Paper Review) Autoencoders Meet Collaborative Filtering (0) | 2022.03.19 |
(Paper Review) Deep Neural Networks for YouTube Recommendations (0) | 2022.03.19 |