Huifeng Guo, Ruiming Tang, Yunming Ye, Zhenguo Li, Xiuqiang He의 DeepFM: A Factorization-Machine based Neural Network for CTR Prediction을 번역했습니다.


초록

추천 시스템의 CTR을 극대화하려면 사용자 행동에 담긴, 변수 간의 복잡한 상호 작용을 학습하는 것이 중요하다. 지금까지 큰 발전이 있어 왔지만 기존 방법들은 여전히 저차 또는 고차 상호 작용에 대해 편향이 크거나 전문적인 특성 공학 작업을 필요로 한다. 본 논문은 변수 간 저차와 고차 상호 작용 모두에 중점을 두는 종단 간 학습 모형을 도출해낸다. 제안할 모형 DeepFM은 팩토라이제이션 머신의 추천 성능과 신경망 구조를 통해 변수 학습하는 심층 학습 기법을 결합한다. Google의 Wide & Deep 최신 모형과 비교할 때 DeepFM은 “넓은”과 “깊은” 부분이 입력을 공유하며 원천 변수 외에는 특성 공학이 따로 필요없다. 기존 CTR 예측 모형 대비 DeepFM 효과와 효율성을 입증하기 위해 벤치마크 데이터와 상용 데이터 모두를 사용해 종합적인 실험을 수행했다.

1. 서론

추천한 품목을 사용자가 클릭할지 확률을 추정해내야 하는 추천 시스템에서 CTR(Click-Through Rate) 예측은 매우 중요하다. 대다수 추천 시스템의 목표는 클릭 수를 극대화하는 것으로 사용자에게 노출할 품목은 추정 CTR을 기준으로 순위를 정할 수 있다. 온라인 광고와 같은 다른 애플리케이션 시나리오에서는 수익 향상이 중요하므로 순위 전략을 광고 후보에 대한 CTR × 입찰가 기준으로 조정할 수 있다. 여기서 “입찰가”는 사용자가 품목을 클릭할 경우 광고 시스템이 받는 수익이 된다. 두 경우 모두 CTR을 정확히 추정하는것이 핵심이다.

CTR 예측에서 사용자 클릭 행동에 담긴, 변수 간의 암시적 상호 작용을 학습하는 것이 중요하다. 주요 앱 시장에 대해 연구한 바에 따르면 사람들은 식사 시간에 음식 배달을 위해 관련 앱을 다운로드하는 경우가 많다. 이는 앱 카테고리와 시간대와의 (2차) 상호 작용이 CTR 예측 신호로 사용될 수 있음을 의미한다. 두 번째 사례로 슈팅 게임과 RPG를 좋아하는 10대 남성의 경우라면 앱 카테고리, 사용자 성별과 연령의 (3차) 상호 작용이 CTR의 또 다른 예측 신호임을 의미한다. 일반적으로 사용자 클릭 동작에 담긴 이러한 변수 간의 상호 작용은 매우 복잡할 수 있으며 변수 간 저차와 고차 상호 작용 모두 중요한 역할을 한다. Google의 Wide & Deep 모형 연구에 따르면 변수 간 저차와 고차 상호 작용을 동시에 고려할 때 단독인 경우 대비 추가적인 성능 개선이 이뤄진다.

주요 과제는 변수 간 상호 작용을 효과적으로 모델링하는 것이다. 변수 간 상호작용 중 일부는 쉽게 이해 가능하며 위의 예처럼 전문가가 직접 설계할 수 있다. 그러나 변수 간 상호작용의 대부분은 데이터에 숨겨져 있어 선험적으로 알아내긴 어렵고(예를 들어 그 유명한 연관 규칙 “맥주와 기저귀”를 전문가가 발견한게 아니라 데이터 마이닝 기법으로 찾아냈듯이) 기계학습을 통해 자동적으로 잡아낼 수 있다. 설령 이해하기 쉬운 상호작용이라고 하더라도 변수의 개수가 많다면 전문가가 제대로 모델링하긴 어려울 것이다.

FTRL 같은 일반화 선형 모형의 경우 단순하지만 실제 성능이 뛰어나다. 그러나 선형 모형은 변수 간 상호 작용을 학습하지 못하기 때문에 보통은 변수 벡터에 변수 쌍의 상호 작용을 수동으로 포함시킨다. 이 방법은 변수 간 고차 상호 작용, 아니면 훈련 데이터에 전혀 또는 거의 나타나지 않은 것을 모델링하여 일반화시키긴 어렵다. 팩토라이제이션 머신(FM) 은 변수 간 잠재 벡터의 내적으로 변수 쌍의 상호 작용을 모델링하며 매우 훌륭한 결과를 보여준다. 이론적으로 FM은 변수 간 고차 상호 작용까지 모델링할 수 있지만 복잡도가 매우 높아지기 때문에 실제로는 변수 간 2차 상호 작용만 고려한다.

변수 표현 학습에 대한 강력한 접근 방법으로 심층 신경망이 있다. 이는 변수 간 복잡한 상호 작용도 학습할 수 있는 잠재력을 지니고 있다. CTR 예측을 위해 CNN과 RNN을 확장한 사례가 있다. 그러나 CNN 기반 모형은 인접한 변수 간의 상호 작용에 주로 편향되고 RNN 기반 모형은 클릭 데이터가 순차적인 종속성을 가질 때 더욱 적합하다. 논문1은 변수 표현을 연구하여 팩토라이제이션 머신 지지 기반의 신경망(FNN)을 제안한다. 이 모형은 DNN을 적용하기 전 FM으로 사전 훈련한 다음 해당 FM으로 모형 용량에 제한을 건다. 또 다른 논문2은 임베딩 층과 완전 연결 층 사이에 승법 층을 도입한 승법 기반 신경망(PNN) 을 제안한다. 그러나 다른 심층 모형과 마찬가지로 PNN과 FNN은 CTR 예측에 필수적인 변수 간 저차 상호 작용을 거의 잡아내지 못한다. 논문3은 변수 간 저차와 고차 상호 작용 모두 모델링하기 위해 선형(“넓은”) 모형과 심층 모형을 결합한, 흥미로운 혼합 네트워크 구조(Wide & Deep)를 제안한다. 해당 모형의 “넓은 부분”과 “깊은 부분”은 두 종류의 각기 다른 입력을 필요로 하며 “넓은 부분” 입력은 여전히 전문적인 특성 공학 작업에 의존한다.

기존 모형들이 변수 간 저차 또는 고차 상호 작용에 편향되어 있거나 특성 공학 작업에 의존하고 있음을 알 수 있다. 본 논문은 원천 변수 외에는 특성 공학 작업 없이 변수 간 모든 차수의 상호 작용을 종단 간 학습할 수 있는 모형을 도출해낸다. 본 논문이 주되게 기여하는 바를 다음 같이 요약할 수 있다.

  • FM과 심층 신경망(DNN)의 구조를 통합한, 새로운 신경망 모형 DeepFM(그림 1)을 제안한다. 변수 간 저차 상호 작용을 FM처럼 모델링하고 변수 간 고차 상호작용을 DNN 처럼 모델링한다. Wide & Deep 모형과 달리 DeepFM은 특성 공학 작업 없이 종단 간 학습을 수행할 수 있다.

  • DeepFM은 Wide & Deep 모형과 달리 넓은 부분과 깊은 부분이 동일한 입력과 임베딩 벡터를 공유하므로 효율적인 학습을 수행할 수 있다. Wide & Deep 모형은 넓은 부분의 입력 벡터로, 수동 설계한 변수 쌍의 상호 작용을 포함하기 때문에 입력 벡터 크기가 무척 커질 수 있다. 즉 복잡도가 크게 증가할 수 있다.

  • DeepFM 평가를 위해 벤치마크 데이터와 상용 데이터 모두 사용했고 CTR 예측 면에서 기존 모형들을 일관되게 개선시켰다.

그림1 그림 1: 넓은 부분과 깊은 부분을 갖는 DeepFM 구조. 넓은 부분과 깊은 부분 구성 요소가 동일한 입력 원천 변수 벡터를 공유하므로 DeepFM은 입력 원천 변수로부터 동시에 변수 간 저차와 고차 상호 작용을 학습할 수 있다.

2. 접근법

훈련을 위한 데이터셋은 \(n\) 개의 인스턴스 (χ, y)로 구성되어 있고, 여기서 χ는 일반적으로 한 쌍의 사용자와 항목을 포함하는 m- 필드 데이터 레코드이고 y ∈ {0, 1}은 관련된 레이블을 나타내는 사용자입니다. 클릭 동작 (y = 1은 사용자가 항목을 클릭했음을 의미하고 그렇지 않으면 y = 0을 의미) χ 범주 형 필드 (예 : 성별, 위치) 및 연속 필드 (예 : 연령)를 포함 할 수 있습니다. 각 범주 형 필드는 one-hot 인코딩의 벡터로 표시되며 각 연속 형 필드는 값 자체 또는 one-hot 인코딩 후의 벡터로 표시됩니다. 그런 다음 각 인스턴스는 (x, y)로 변환됩니다. 여기서 x = [xfield1, xfield2, …, xfiledj, …, xfieldm]은 d 차원 벡터이며 xfieldj는 j의 벡터 표현입니다. χ의 두번째 필드. 일반적으로 x는 차원이 높고 매우 희박합니다. CTR 예측의 임무는 사용자가 주어진 상황에서 특정 앱을 클릭 할 확률을 추정하기 위해 예측 모델 y = CTR 모델 (x)을 구축하는 것입니다.

  1. Yin Zheng, Yu-Jin Zhang, and Hugo Larochelle. A deep and autoregressive approach for topic modeling of multimodal data. IEEE Trans. Pattern Anal. Mach. Intell., 38(6):1056–1069, 2016. 

  2. Yanru Qu, Han Cai, Kan Ren, Weinan Zhang, Yong Yu, Ying Wen, and Jun Wang. Product- based neural networks for user response prediction. CoRR, abs/1611.00144, 2016. 

  3. Heng-Tze Cheng, Levent Koc, Jeremiah Harmsen, Tal Shaked, Tushar Chandra, Hrishi Aradhye, Glen Anderson, Greg Corrado, Wei Chai, Mustafa Ispir, Rohan Anil, Zakaria Haque, Lichan Hong, Vihan Jain, Xiaobing Liu, and Hemal Shah. Wide & deep learning for recommender systems. CoRR, abs/1606.07792, 2016.