오늘은 시퀀셜 추천시스템에서 LLM을 활용해 SeqRec 모델의 latent space를 더 자세히 이해할 수 있도록하는 RecInterpreter를 제안한 논문을 리뷰하고자 한다.
논문 링크 : https://arxiv.org/abs/2310.20487
그럼 abstract부터 하나씩 살펴보자.
0. Abstract
문제정의
전통적 시퀀스 추천 시스템, 항목의 시퀀스를 모델링해서 사용자의 선호 예측 But, 이 시스템의 숨겨진 표현을 해석하는 능력은 아직 완전하지 않다. 따라서 이 논문에서는 LLM이 ID-based Sequential Rec sys의 숨겨진 표현을 이해할 수 있을까라는 의문과 함께 RecInterpreter 프레임 워크 제안
해결방안
크게 총 3가지 정도의 solution이 제안됩니다. 하나씩 살펴보면,
1. Multimodal Adaptation : RecInterpreter, 상호작용 시퀀스의 표현과 텍스트 설명을 사용하여, 표현을 LLM의 토큰 임베딩 공간으로 매핑하는 lightweight adapter 활용
2. Sequence Recovery : sequence-recovery prompt를 사용하여 LLM이 시퀀스 내 항목에 대한 텍스트 설명 생성 유도
3. Sequence Residual Analysis : 시퀀스 residual prompt를 활용해서 LLM이 새로운 항목이 추가된 후 시퀀스이 변화를 비교하여 추가된 항목을 식별하도록 함
1. Introduction
시퀀스 추천 시스템 개요

1. 항목 ID 처리
- Discrete ID로 변환
- Titanic, Twilight, Star Wars → ID1 ID2 ID3
2. 시퀀스 모델링
- input → user가 상호작용한 항목(ID) sequence
- 이를 학습해서 사용자의 행동 패턴 캡처
3. 숨겨진 표현 생성
- Hidden Representation → SeqH 토큰 생성
- SeqH 토큰은 사용자가 시청한 영화 목록(ID 시퀀스)을 SeqRec 인코더와 같은 추천 시스템을 통해 숨겨진 상태 SeqH로 변환한다.
- 이 SeqH 토큰은 사용자의 시청 패턴을 요약하는 벡터 표현
4. Next Item predict
- 이 SeqH 토큰을 기반으로 다음 item 예측 !!
1. text prompt 생성
- 사용자 상호작용 item 기반으로 text prompt 생성
2. LLM 입력
3. 다음 항목 예측
- “The Gotfather” ← 다음 항목으로 예측
1. 항목 ID 처리 + hidden representation 생성 SeqRec 초입부분 똑같음
2. representation space mapping
- lightWeight 어뎁터 (linear layer)를 통과하여 숨겨진 표현을 LLM으 토큰 임베딩 공간으로 매핑
- lightweight adapter이란?
- 대형 언어 모델(LLM)과 같은 복잡한 모델에 적은 계산 자원을 사용하여 새로운 기능을 학습하거나 기존 기능을 확장
- SeqRec과 동일하게 입력을 주어진 항목 ID 처리, 이를 통해 hidden representation 생성
- 이 adapter는 주로 단순한 linear layer로 구성
-> SeqH 토큰을 LLM이 이해할 수 있는 토큰 임베딩으로 변환한다.
3. text prompt 생성
-> 이 때 SeqH 생성
4. 다음 항목 예측 및 설명

3.Inspire LLMs to understand sequential recommenders






위의 training step으로 generative recommender가 어떻게 작용되는지 설명
1) DreamRec
DreamRec으로 gen된 item → hidden vector, 따라서 nearest item을 추출해야 함 → 이는 candidate로밖에 제한되버린다.
이 논문에서는 DreamRec으로 oracle item의 description을 생성할 수 있기에 explicit한 추천(result) 얻을 수 있다.
- Drawing inspiration from the proposed sequence-residual prompting, we could let LLaMA provide the description of the oracle item generated by DreamRec, thus directly acquiring the recommendation results.
2) Construct Sequence-Residual task with oracle item
Sequence residual prompting의 input으로 기존 sequence와 DreamRec으로 생성한 아이템이 포함된 seqeuence 동시 입력

DreamRec의 sequential encoder와 linear projection adapter에 적용시킴
3) Training and Inference
Training 시, 기존과 동일한 sequence residual prompting framework 사용
Inference 시, 앞서 설명한 방법으로 oracle item의 text description 획득 (→ DreamRec은 불가능한 부분이었음)
4. Experiment

Pop 알고리즘 가장 인기 있는 10개 영화 게임 추천
복원된 아이템의 수 의미
결과
- 추천 성능 → DreamRec이 MovieLens와 Steam 데이터셋에서 다른 알고리즘 대비 4개 이상의 아이템 복원한 비율 매우 우수
- Caser(컨볼루션AI 시퀀셜 임베딩 추천) 와 SASRec도 꽤 많은 아이템 복원 가능
- LLaMa, MovieLens가 Steam에 비해 더 나은 복원력 보이는 데 → Steam dataset의 게임 description이 더 복잡하고 noisy하기 때문

Sequence-Residual Result

LLaMa → DreamRec과 가장 좋은 interaction 보인다 !!
MovieLens가 Steam보다 더 나은 성능 보임, + 다른 모델 대비 DreamRec 사용 시 Steam에서도 준수한 성능 보임
Instantiate Oracle items
DreamRec을 통해 inference를 통해 추천 결과를 instantiate할 수 있다 !!
다만 DreamRec 의 에시와 비슷하게, candidate를 벗어나는 instance가 실험으로 다수 발견
즉, 우리가 알고있던 평가 metric Hitrate, NDCG가 아닌 gpt를 통해 evaluation 진행

위 프롬프트를 통해 ChatGPT가 추천된 항목 중에서 사용자가 선호할 가능성이 높은 영화를 선택하도록 평가.

RecInterpreter의 역할로써 DreamRec의 오라클 아이템을 텍스트로 구체화하여 추천의 이해와 해석을 돕고, 사용자가 명확하게 이해할 수 있는 추천 결과를 제공
5.Conclusion and Limitation
이렇게 LLM을 활용해서 sequence recsys의 latent space상에서 어떻게 해석될 수 있는지에 대해서 살펴보았다. 추천시스템을 적용시키고 유저에게 제공해주기 위해서는 이에 알맞는 설명력을 갖추는 것이 필연적인데, LLM을 활용해서 이런 설명력들을 보완하는 여러 연구들이 현재 다양하게 진행되고 있다. 따라서 이와 관련된 내용들이 궁금한 사람들은 추가적으로 LLM + Rec에 대해서 더 찾아봐도 좋을 것 같다.