728x90
https://arxiv.org/abs/2305.05065
1. Introduction
TIGER: Transformer Index for Generative Recommenders는 생성형 추천시스템을 위한 새로운 프레임워크
기존의 쿼리-후보 매칭 방식을 대체하며 semantic ID 기반의 생성형 검색을 도입
Transformer 모델의 메모리를 활용해 사용자 행동 이력에 따라 추천할 아이템 생성
- Semantic ID 생성
- 각 아이템의 텍스트 정보에서 SentenceT5 같은 pretrained language model을 활용해 semantic embedding을 생성
- 이를 codeword 형태로 quantization하여 사용
- 기존의 랜덤ID 대신 의미가 있는 토큰으로 아이템을 표현해 일반화 성능과, 신규아이템 추천에 강점
- 생성형 검색 모델
- Tay et al. [34] that used Transformer memory for document retrieval
- Transformer memory (parameters) 를 retrieval에 end-to-end index로 사용함
2. Related Work
Sequential Recommenders.
Early Work:
- GRU4REC [11]: GRU 기반 RNN을 최초로 사용해 순차 추천을 도입
- NARM [24]: GRU와 주의(attention) 메커니즘을 결합해 사용자의 장기적인 의도를 추적
Advancements with Self-Attention Mechanisms:
- AttRec [41] : 현재 세션의 유저의 의도를 attention으로 파악하고 user-item affinity를 metric learning으로 모델링
- SASRec [17]: decoder-only transformer model을 채택
- BERT4Rec [32] & Transformers4Rec [6]: masking기법을 순차 추천에 적용
- S3-Rec [44] : 4가지 self-supervised taskfh vygusfur rkdghk
Differences from Existing Models:
- 기존 모델: high-demdnsional embeddings를 생성하고Approximate Nearest Neighbors (ANN) & Maximum Inner Product Search (MIPS) 를 사용해 next item을 예측
- TIGER: generative retrieval을 사용해 next item의 semantic ID를 직접 예측
Comparison with P5:
- P5: Multi-task용 SentencePiece tokenize로 랜덤하게 배정된 item ID로 LLM을 파인튜닝
- TIGER: 아이템의 content info를 내포하는 Semantic ID representations를 사용해 랜덤 배정 item ID보다 우수함
3. Proposed Framework
TIGER의 framework는 아래 항목으로 구성됨
- Semantic ID generation using content features
- Training a generative recommender system on Semantic IDs.
#️⃣3.1 Semantic ID Generation
- general-purpose pre-trained text encoders such as Sentence-T5 [27] and BERT [7] can be used to convert an item’s text features to obtain a semantic embedding.
- The semantic embeddings are then quantized to generate a Semantic ID for each item.
- Semantic ID to be a tuple of codewords of length m.
- 예시
- Semantic ID (10,21,35)는 Semantic ID (10,21,40)랑 가까움
- ID (10,23,32) 보다는 멂 (hierarchical 하기 때문에)
RQ-VAE for Semantic IDs
- Residual-Quantized Variational AutoEncoder
- tuple of codewords를 생성하는 목적
생성단계
- encoding: 입력 xxx를 인코더 EEE를 통해 잠재 표현 z:=E(x)z := E(x)z:=E(x)으로 변환
- 첫번째 residual은 r_0 := z로 정의됨
- quantization:
- 각 단계에서 code book을 사용
- 첫 번째 단계에서 r0와 가장 가까운 임베딩을 찾고 c_0로 저장
- residual update: r1:=r0−ec0로 갱신
- m번 반복하여 최종 m개 code word로 이루어진 semantic ID가 생성됨
#️⃣ 3.2 Generative Retrieval with Semantic IDs
- 상호 작용한 항목을 시간순으로 정렬하여 모든 사용자에 대한 항목 시퀀스를 구성
- (item1,...,itemn) 형태의 시퀀스가 주어지면 추천 시스템의 작업은 다음 항목 itemn+1을 예측
$(ci,0,...,ci,m−1)$ 를
$(c1,0,...,c1,m−1,c2,0,...,c2,m−1,...,cn,0,...,cn,m−1)$ 로 변환
그리고 n+1의 semantic ID를 예측
$(cn+1,0, ...,cn+1,m−1)$
반응형
'AI > Papers' 카테고리의 다른 글
Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks (0) | 2024.11.15 |
---|