https://speakerdeck.com/kakao/sequential-recommendation-system-kakao-seobiseu-jeogyonggi
Sequential Recommendation System 카카오 서비스 적용기
#RecommenderSystem #SequentialRecommendationSystem #ML Sequential Recommendation System은 유저의 history의 순서와 시간을 보존하여 다음에 소비할 아이템을 예측하는 추천 시스템 입니다. - 카카오 웹툰에 Sequential mode
speakerdeck.com
Sequential Recommendation System
sequential recommendation system 은 사용자가 관심있어할 만한 아이템은 사용자의 interaction seq에 seq dependency 가진다고 가정.
- sequential 이 기존 모델보다 더 좋은 성능 보이는상황은 ?
- DL 이 추천 도메인에서 다른 학습방법론 대비(MF, MAB, EASE) 어떤 상황에서 좋을까?
- side info 넣기. 정말 성능 올라가나?
BERT4Rec
- Sun, Fei, et al,『BERT4Rec: Sequential recommendation with bidirectional encoder representations from transformer.』Proceedings of the 28th ACM international conference on information and knowledge management. 2019.
- Chen, Qiwei, et al. 『Behavior sequence transformer for e-commerce recommendation in alibaba.』Proceedings of the 1st International Workshop on Deep Learning Practice for High-Dimensional Sparse Data. 2019
*궁금증: 단순히 concat 하는 이유 궁금->
-
층(layer)를 건너뛰는 연결(skip connection): 레이어를 계속해서 쌓음과 동시에 상위 레이어와 하위 레이어 중간을 건너뛰어 연결하는 계산을 넣으면 (말 그대로 skip connection), 이러한 계산을 따라서 기울기가 흐를 수 있다. 이때 많이 쓰는 연결함수 중 하나는 덧셈. 말 그대로 f'(x) = f(x) + x 꼴로 만드는 것이다. 덧셈은 기울기를 그대로 흘려보내기 때문에 가능하다. 게다가 기울기를 흐르게 하는 역할 외에, 모델이 값 자체가 아니라 값의 오차(residual)을 배우게 해서 수렴 속도가 빨라지는 부가 효과도 있다. 이 방식을 사용해서 ResNet은 레이어를 152개 씩이나 쌓기도 했다.이를 위해 concat[12]이나 add[13]와 같은 연산이 주로 사용된다.(나무위키..)
- tensor를 붙인다.. 입력목록을 연결. 두 입력이 서로 관련 크게 없을때 같은 layer로 넘기고 싶으면 concat, 관련있으면 add. (축이 다른데 add가 되나-> 행렬덧셈 느낌이 아니라 그 값들을 다 더하는 느낌인가보다)
- 예를들어 a 1000 b 2000 c 3500 갖고있을때 add는 6500 을 넘기고 concat은 1000 2000 3500을 넘기는 것
- concat->적은 parameter feature map의 depth높임.
- element wise add-> vanishing gradient방지
- 카카오 브런치 서비스에 Sequential Recommendation System(BERT4Rec)적용했는데 기존 추천대비 성능하락. timestamp 추가했는데 더 떨어짐? 브런치-> KPGT활용해보자 ->? 성능향상될텐데? CTR비교까지. ->논문이 있나?
- 웹툰에서 all data + MLM +NIP +TS -> transformer block 3, seq length 60, cvr37.7%상승, CTR 142%상승
- NIP: next item prediction -> 추천 도메인에서 이걸 향상시키는게 메인 목표. 그런데 MLM(자연어처리분야에서 제안된 기법) 써도 향상되더라. (Multi Armed Bandit 대비.)
- 데이터 양도 증가시키자
-... 너무 복잡하고 무거움. 간단한 모델?
Sequence-Aware MLP
- Hyunsung Lee, Sungwook Yoo, Andrew Yang, Wonjun Jang and Chiwan Park,『Simple and Efficient Recommendation Strategy for Warm/Cold Sessions for RecSys Challenge 2022』RecSysChallenge'22: Proceedings of the Recommender Systems Challenge 2022.
- last 1,2,5,20 items concat정보와 view historyfmf matmul하여 softmax
- 학습시간 감소
- Ensemble SMLP로 성능향상시킴
Future works
-diversity, cold start 해결해야함
-새로운 아이템이 seqence학습시 안들어가므로 추천에서 제외될수있음.
'AI > Recommender System' 카테고리의 다른 글
session based recommender system 논문정리 (0) | 2023.06.28 |
---|---|
Neural Collaborative Filtering (0) | 2023.02.14 |
Explainable Recommender System in 카카오웹툰 정리 (0) | 2023.01.03 |