STAMP 논문 리뷰
STAMP : Short-Term Attention/Memory Priority Model for Session-based Recommendation
이 논문이 왜 필요한가
기존의 LSTM (Long short-term memory)모델은 유저의 제네럴한 취향을 파악할 수는 있지만 웹상에서 몇 번의 클릭질로도 취향이 확확 바뀌는 현상을 설명하는데는 어려움이 있다. 그래서 가장 최근의 선택에 대해 가중치를 주는 모델이 필요하고, 이 모델은 2015 RecSys Challenge에서 모든 테스트에 대해 SOTA를 찍었다.
논문 기호 설명
- 유저의 과거 세션 S를 데이터화하면 클릭의 연속으로 생각할 수 있다. 는 time i에서 클릭이라고 정의.
- = {} time t에서 세션을 라고 정의한다.
- ={} 시스템내의 유니크한 아이템의 집합
- = {} i번째 아이템 를 임베딩한 벡터
- = {} 모델이 예측한 각 아이템의 점수값
- trilinear product : 세 백터의 내적. 즉, 세 벡터의 모든 원소의 곱의 합 - 식(1)
STMP Model : Attention 없는 모델
- 수식은 설명할 게 별로 없을 정도로 간결하고 잘 정리되어 있다. 이 때 f는 activation function이며, 는 시그모이드 함수, 는 세 벡터의 unNormalized 코사인 유사도이다. 값은 각 V에 속하는 아이템의 예상 점수가 된다.
- Loss function은 다음과 같이 cross entropy를 적용하였다.
- 문제점
- 유저의 general한 취향을 분석할 때 우리는 지금까지 클릭한 아이템들을 모두 동일하게 평균내서 사용하는데 이는 long-term에서 볼 때 좀 이상할 수 있다. 시간이 흐를수록 취향이 변할 수 있는 것처럼 과거의 아이템들은 영향력을 줄여야 할 수도 있고, 잘못 클릭한 아이템일경우 영향력을 줄이는 조정장치가 필요한데, 이를 어텐션 레이어를 둠으로써 해결한다.
Attention Model : STAMP
- 어텐션 레이어는 각 입력들에 가중치를 곱하는 역할을 하는데, 학습이 이루어지면서 각 입력에 곱해질 가중치를 학습한다.
- 대신 어텐션이 들어간 를 사용한다.
평가
- 비교적 단순하면서 취향의 변화에 예민하게 대처할 수 있는 모델
- 성능 평가 지표로는 비교대상이 알고있는 모델이 없어서 성능이 얼마나 뛰어난 것인지는 아직 잘 모르겠다.
Q
- x를 임베딩하는 과정을 해당 모델의 gradient decent로 학습하는가 아니면 이미 학습시켜놓은 벡터 임베딩을 사용하는가. -> gradient decent로 학습
댓글
댓글 쓰기