

LLM의 능력은 추천 시스템에서 요구되는 일반화 능력과 풍부한 지식을 요하는 문제를 해결하기에 적합함.
추천 시스템은 사용자와 항목 간의 상호작용을 통해 사용자에게 관련성 높은 항목을 추천하는 것이 목표임. 전통적으로 content-based filtering, collaborative filering, hybrid 접근법 등 다양한 기법이 있어왔다. -> 그러나 data sparsity, cold-start problem, domain generalization이 잘 되지않는 한계점이 있었음.
그래서 추천시스템에 LLM을 도입하여 LLM의 언어적 지식, 추론 능력, 높은 작업 정응력을 활용하고자 함.
본 논문에서는 아래 두 가지 문제를 해결하는 데 초점을 맞춤.
흔히 아는 내용이므로 생략하겠다.
본 논문에서는 LLM을 이라 정의하고, 사용자가 새로운 아이템을 좋아할지 여부를 예측하는 추천 특화 언어모델인 (LRLM )을 구축하고자 함.
추천 데이터를 활용하여 LLM에 recommendation tuning (rec-tuning)을 수행함. -> 추천 데이터를 instruction tuning 패턴에 맞춰 포맷을 구성함. 이때 모델에게 사용자의 interaction history를 기반으로 대상 아이템을 좋아할지를 판단하도록 지시하여 Yes, No로 이진 응답을 유도하도록 Task Instructoin을 작성함.
또한 Task Input을 구성함. -> 사용자의 interaction history items를 평점 기준으로 나눠서 liked items, disliked items 두 그룹으로 분류함. 항목들은 상호작용 시간 순서에 따라 정렬되고, 텍스트 설명(예를들어 제목 및 간략한 소개)로 표현 됨.
마지막으로 Task Instruction과 Task Input을 결합하여 Instruction Input을 생성하여 Instruction Output을 Yes, No로 나오게 설정해서 rec-tuning 학습을 진행한다.
TALLRec Framework는 추천 작업에 대해 LLM을 효과적이고, 효율적으로 alignment(정렬)시키는 것을 목표로 함. 특히 낮은 GPU 메모리 환경에서도 적용 가능하도록 설계됨. -> light한 구현이 가능한 두개의 TALLRec 튜닝 단계와 backbone 선택 전략을 제시함.
TallRec은 두 개의 튜닝 단계로 구성됨. -> alpaca tuning, rec-tuning인데, alpaca tuning은 LLM의 일반화 능력을 향상시키는 일반적인 학습 과정이고, 두 번째 단계는 Instruction Tuning 패턴을 모사하고 추천 작업에 LLM을 맞춤 튜닝 하는 것.
TALLRec Tuning Stages
Alpaca Tuning에서는 Alpaca project에서 제공하는 self-instruct 데이터를 사용해서 LLM을 훈련함.
Conditional Language Modeling Objective를 학습 목표로 사용함.
->
x, y는 각각 self-instruct 데이터의 Instruction Input이랑 Instructoin Output임
는 y의 t번째 토큰
는 t번째 이전까지의 모든 토큰
는 LLM 의 기존 파라미터
는 학습 데이터 셋
Rec-tuning 단계에서는 rec-tuning 샘플을 사용하여 LLM을 튜닝함. alpaca tuning이랑 유사하게 진행됨.
Lightweight Tuning
LLM 전체를 직접 튜닝하면 계산 비용이 크고 시간이 오래 걸리므로(최신 언어 모델은 과도하게 많은 파라미터를 가지고 있고, 정보가 low intrinsic dimension에 집중되어 있다) alpaca tuning, rec-tuning 모두 lightweight Tuning을 채택함. -> 모델 전체 튜닝하지 않고, 일부 파라미터만 조정하여 유사한 성능을 내겠다.
걍 LoRA 사용함 -> 사전 학습된 모델 파라미터 freeze, 각 트랜스포머 layer에 learnable한 low rank matrix 삽입
--> 원래 파라미터 유지, 추가 정보는 low rank matrix를 통해 효율적으로 모델에 흡수됨.
최종 train obejective function
->
여기서
Backbone Selection
강점
아이디에이션