Abstract
ㅇ 이전에 학습하고 배포하고를 각자 도메인에서 하다보니까 제한이 있었음. LLM이 등장하면서 이러한 gap을 메워줌. 지식들을 인코딩하고 추론능력을 보여줌으로써.
ㅇ 그럼에도 불구하고, LLM을 그대로 추천에 쓰는건 만족스러운 결과를 못보여줬는데, 이 논문에서 Open-World Knowledge Augmented Recommendation(KAR) 프레임웍을 보여줌으로써 이를 해결하고자 한다. (유저선호도에 대한 reasoning knowledge & 아이템에 대한 factual knowledge)
- factorization prompting : 유저선호도에 대한 정확한 추론 이끌어냄
- hybrid-expert adaptor : 1)에서 만들어진 추론과 factual knowledge가 효과적으로 변환되고 압축되서 vector형태가 됨. → 이래야 추천이 가능.
Introduction
기존 추천시스템은 insulated nature를 가짐. i.e. 모델은 closed systems에서 학습되고 배포됨. (아래에 왼쪽그림처럼)
오른쪽 그림처럼 LLMS등에서 open world knowledge를 사용해서 추천성능을 높일 수 있음.
기존에 LLM을 추천에 사용한 사례들이 있는데 다음의 이유때문에 최적으로 적용되지 않았다.
1) Predictive accuracy : 대부분의 경우에서 LLM이 기존 추천시스템보다 잘 작동. But, 추천 도메인 knowledge와 collaborative signal이 부족해서 LLM이 개개인의 유저 선호도를 잘 못맞춤.
2) Inference latency : 모델 파라미터가 너무 많아서 LLM을 바로 추천시스템에 쓰는건 비효율적임. LLM은 low latency requirement를 맞추기가 어려움. 모델이 너무 커서 바로바로 유저 피드백 반영하는게 어려움.
3) Compositional gap : LLM은 가끔 잘못된 답을 내놓음.
—> 이 논문에서는 추천시스템의 이점은 유지하되 효과적으로 open-world knowledge를 결합하고자 함.
+LLM이 오픈소스더라도 decoded output은 보통 large dense vector임. 즉, 추천시스템이랑 호환이 안됨. 이를 위해 변환하는게 추천성능에 중요한 역할을 함.
🤩KAR을 제안함. 기존 추천시스템과 open-world knowledge사이를 연결함.
K.A.R
세가지 단계로 구성됨.
(1) knowledge reasoning and generation : compositional gap을 피하기 위해, factorization prompting을 제안. 즉, 복잡한 선호 문제를 여러 요소들로 쪼개서 user와 item에 대한 knowledge를 만들어냄.
(2) knowledge adaptation : 생성된 knowledge를 추천 space의 augmented vector로 변환. hybrid-expert adaptor module 제안. 차원을 줄이고 다양한 expert를 앙상블 → reliability와 availability를 높임.
(3) knowledge utilization : augmented vector를 original domain features와 통합함. 즉, recommendation domain knowledge와 open-world knowledge를 통함.
저자의 Contribution
ㅇ KAR을 제안함으로써 추천 도메인 knowledge와 open-world knowledge사이의 간극을 줄임.
ㅇ KAR은 open-world knowledge를 추천 space의 dense vector로 변환해서 추천모델과 호환가능하게 만듦.
ㅇ knowledge augmentation는 전처리되고 미리 저장돼서 빠른 학습과 추론 가능함. LLM을 추천시스템에 사용하는데에 추론 latency를 줄임.
Methodology
Overview
LLM으로부터 open-world knowledge 뽑아내고 추천시스템이랑 결합한다고 했는데 아래 3가지 단계로 구성되어 있다.
1) Knowledge Reasoning and Generation Stage
: LLM으로부터 추천관련된 정보들을 뽑아내기위해 factorization prompting사용. LLM이 이 두가지를 만들어내도록 함.
(i) 유저 선호도에 대한 reasoning knowledge
(ii) factual knowledge about items
→ LLM으로부터 item(영화)에 대한 정보, 유저 선호도에 대한 정보 알아냄 .
2) Knowledge Adaptation Stage
: 텍스트형태의 open-world knowledge를 추천에 알맞은 형태로 변환함.
i) LLM으로부터 나온 reasoning and factual knowledge가 encoder에 의해 dense representation으로 encoded.
ii) Hybrid-expert adaptor가 representation을 semantic space → recommendation space로 변환함. 이 결과, 유저 선호도에 대한 reasoning augmented vector와 후보 item에 대한 fact augmented vector가 나옴.
3) Knowledge Utilization Stage
: reasoning and fact augmented vector를 이미 있는 추천모델에 넣음. 이로인해, domain knowledge와 open-world knowledge를 둘 다 사용함.
Knowledge Utilization
reasoning augmented vector와 fact augmented vector를 additional input feature처럼 취급하게 되는데, 다른 feature와 상호작용하게 한다.
중요한건, KAR는 backbone model의 input을 수정만해서 backbone의 design과 loss function과는 별개다. → 즉, 다양한 backbone모델, task 가능.
Speed-up Approach
LLM으로부터 output 받아서 쓰다보니까, 이 추론과정이 너무 오래걸림.
→ knowledge representation을 미리 저장해놓는 전략씀.
(i) knowledge encoder나 LLM으로부터 나온 representation을 DB에 저장.
(ii) 이후 모델 학습과 추론과정에서 DB로부터 representation뽑아서 사용함.
** 더 추론시간 줄이거나 저장효율성 높일라면 학습후에 adaptor를 model에서 뗄 수도 있고 augmented vector를 추론을 위해 미리 저장할 수 있다.
→ Augmented vector차원은 보통 knowledge representation차원보다 작은데, 이래서 저장효율성이 올라감. 또, 미리 augmented vector를 저장해놓는건 추론시간을 original backbone model만큼 줄여버림
— item feature는 상대적으로 잘 안변함.
→ item factual knowledge를 미리저장해놓는게 더 자연스러움.
→ 또, 유저 행동은 시간에 따라 변하기 때문에 유저행동에 대해 실시간 추론 knowledge를 제공하는건 LLM에게 어려움.
→ 그래도 큰그림에서 유저선호도는 잘 안변하고 backbone model이 최근 유저행동을 이미 중요시하기때문에, LLM이 실시간행동에 접근할 필요X.
Conclusion
- KAR은 효과적으로 LLM을 사용해서 open-world knowledge를 추천시스템에 결합한 모델.
- KAR은 LLM으로부터 아래 두가지 중요한 knowledge를 뽑아냄.
- 유저선호도에 대한 reasoning knowledge
- item에 대한 factual knowledge
- hybrid expert adaptor가 knowledge를 추천시스템에 맞게 변형시키기위해 사용.
- augmented vector는 추천모델의 성능을 높이는데에 사용.
- 빠른 추론을 위해 LLM knowledge를 미리 전처리&저장.
댓글