Seuqential Click Prediction for Sponsored Search With Recurrent Neural Networks(AAAI2014)

GunosyDM 연구회 #90의 발표 자료

소개된 논문


[1404.5772]Sequential Click Prediction for Sponsored Search with Recurrent Neural Networks
SRA 인턴의 성과처럼 최초의 3인은 인턴이었죠.

Introduction


기계 학습을 이용하여 연동형 광고의 클릭 편의성을 예측하다.
그 특징으로 사용되는 대표적인 것은 다음과 같은 두 가지가 있다
  • 과거 CTR(query, 사용자 등)
  • 조회와 광고의 의미 접근
  • 이 연구는 더 많은 데이터를 조합하여 예측을 진행할 것이다
    예를 들어 어떤 사용자가 광고를 눌렀지만 바로 꺼지면 다음에 이 광고를 볼 때 클릭할 확률이 낮아진다
    이 연구에서 Recurrent Neural Network(RNN)를 사용하여 클릭 확률을 예측하다
    데이터는 시간 서열 데이터이기 때문에 시간 서열 분석을 사용하는 것이 비교적 적합하다
    일반적으로 시간 서열 분석은 주로 추세나 주기 모델의 모델링이다.
    광고 데이터는 복잡하고 동적이어서 적합하지 않다.
    RNN은 최근 몇 년 동안 각종 시리즈 데이터에 대한 임무에서 우수한 성과를 거두었다.
    RNN의 모형을 사용하여 전통적인 LR과 NN 방법에 대해 높은 개선을 이루었다
    중요한 것은 예측 작업에 sequential dependency를 넣는 것이다.

    Data Analysis on Sequential Dependency


    첫 번째 클릭 시 로그인 페이지(LP)의 체류 시간과 다음imp 시 조회수

    Quick back에서 지나간 시간과 CTR
    quick back: 사용자가 LP 20초 이내에 반환

    사용자는 일정 시간 후에 안전하지 않은 체험을 잊어버릴 것이다
    첫 번째 및 다음 검색 CTR

    The Proposed Framework


    Model


    특별한 변화가 없는 RNN.
    h(t) =  f(i(t)U^T + h(t-1)R^T) \\
    y(t) = \sigma(h(t)V^T) 
    
    f(z) = tanh(z) =\frac{1-e^{-2z}}{1+e^{-2z}} \\
    \sigma(z) = sigmoid(z) = \frac{1}{1+e^{-z}}
    

    Feature Construction


    많이 사용되었다. 상세하고 구체적으로 서술하지 않았다. 3개 조로 나뉜다.
    1) Ad features consist of information about ad ID, ad display position, ad text relevance with text
    2) User features include user Ud and query related semantic information
    3) sequential features include time interval since the last impression, dwell time on the landing page of the last click event, and whether the current impression is the head of sequence
    동일한 세션에 표시되는 광고는 표시 순서대로 정렬됩니다.

    Learning


    Loss function
    averaged cross entropy
    L = \frac{1}{M} \sum_{i=1}^M (-y_i log(p_i) - (1-y_i)log(1-p_i))
    
    $M$: 트레이닝 데이터 수
    $ y_i$: 탭 ${0,1}$로 표시
    $ p_i$: 예측된 클릭 확률
    BPTT 학습용

    Experiments


    Data Setting


    비즈니스 검색 엔진 로그, 2013/11/9-2013/11/22 무작위 표본 추출
    훈련 1주차 데이터, 테스트 2주차 데이터

    Evaluation Metrics

  • Area Under ROC Curve(AUC)
  • Relative Information Gain(RIG)
  • Compared Methods

  • Logistic Regression(LR)
  • Neural Network(NN)
  • Experiment result


    overall perfomance
    grid search
  • the coefficient of L2 penalty: 1e-6
  • the number of training epochs: 3
  • the hidden layer size: 13
  • the number of unfolding steps for RNN: 3

  • Performance on Specific Ad Positions
  • mainline이 가장 수익을 내기 때문에 RNN이 여기서 높다
  • sidebar의 조회수가 적기 때문에rare상황에 과도하게 반응하여 LR이 낮아진다
  • Effect of Recurrent State for Inference
    RNN으로 학습한 후 일반적인 NN으로 추정됨
    이전 일련의 데이터를 사용하지 않는 숨겨진 레이어의 값 상태
    AUC: 88.25%
    RIG: 18.95%
    Table2에 비해 성능이 저하됩니다.
    recurrent structure는 추정에 대해 효과적으로 일하고 있다고 할 수 있다.
    Performance with Long vs. Short History
    한도값 T 이상의 sequence를 가진 데이터를 수집하여 T로 숨겨진 층에 데이터를 저장하고 나머지는 테스트합니다.
    T에 대한 RNN의 길이가 robust인지 확인

    T가 클수록 성능이 좋아집니다.
    Effect of RNN Unfolding Step
    Unfolding Step: BPTT의 학습 단계
    (BPTT를 잘 몰라서 이번에 잘 알아봐)
    AUC, RIG의 최적 값은 3이며, 이보다 큰 값이면 수치가 떨어진다(3까지 상승)
    값이 3보다 크면 역방향 전파 오류가 사라짐
    이로써 이 모델은 다음과 같이 계열 데이터를 처리할 것이라고 추측할 수 있다
  • short-span dependency: 비교적 적은 단위로 현식 학습
  • long-span dependency: 긴 데이터를reccurent 구조에 은밀하게 저장하여 정밀도를 높인다
  • Future Work

  • 이번에는 사용자 수준의 sequential 데이터(user,ad)와(user,query) 등을 처리하여 더욱 다양한 형식으로 배우고 싶다
  • 이번에 배운 Recurrent 부분의 특징을 활용하여 더욱 최적화된 형식으로 처리하고 싶다
  • Deep Recurrent Neural Network(DRNN) [Hermans+2013]
  • 시도

    감상

  • 간단한 RNN으로 여기까지 개선하는 게 대단하다(진짜 기분도 나겠다)
  • 피처링을 완전히 숨겼지만 이런 논문도 성립될 수 있을까
  • sequential이 특징인 곳에 지나치게 의존할 수도 있다
  • 이런 미션이 많을 것 같아서 해보고 싶어요
  • RNN의 특성에 대한 분석은 매우 깊으니 참고할 만하다.
  • 좋은 웹페이지 즐겨찾기