티스토리 뷰
논문 리뷰
[EMNLP 2024] PromptReps: Prompting Large Language Models to Generate Dense and Sparse Representations for Zero-Shot Document Retrieval
공부하는묵 2025. 2. 13. 15:451. Introduction
- LLM의 발전에 따라 검색에도 LLM의 언어 능력을 활용하고자 시도
- LLM에 query를 입력했을 때 직접적으로 document에 대한 유사도를 생성하도록 하는 접근 방법
- RankGPT는 query가 주어졌을 때, document들의 유사도를 기반으로 id가 생성되도록 reranking 하는 모델
- LLM 기반의 모델들은 corpus 내의 모든 document에 대해서는 수행 시간이 너무 오래 걸리기 때문에 reranking 정도만 가능
- 본 논문에서는 LLM을 이용하여 임베딩을 만들고 이를 dual-encoder 구조에 활용하여 검색을 수행
2. Method
- LLM에 주어진 query/document를 한 단어로 표현해달라는 prompt를 입력
- 입력된 prompt를 바탕으로 생성된 마지막 토큰의 last hidden state를 dense representation으로 활용
- last hidden state가 LM head를 통과하면 vocab 차원의 분포를 얻을 수 있고, 이를 활용하여 sparse representation으로 활용
- 추가적인 학습은 진행하지 않음
3. Experiment
3.1 Zero-shot
- Hybird는 dense와 sparse representation을 이용해 얻은 점수의 평균 사용
- Supervised/Unsupervised training을 거친 다른 retriever에 비해서는 낮은 점수, 하지만 제안 모델은 학습이 아예 진행되지 않았음
- hybrid setting에서는 성능이 향상
- hybrid setting에서 bm25까지 섞어서 점수를 낸다면 오히려 추가적인 training이 있었던 모델보다 나은 성능
3.2 Sentitivity to different prompts
- 모델에게 query/document를 한단어로 나타내 달라는 prompt를 다양하게 실험
- prompt 마지막에 "The word is: " 가 빠진 프롬프트(4번)는 낮은 성능을 보였는데, 이는 모델이 the로 시작하는 단어를 생성하려는 경향을 보였기 때문
- 1번 prompt는 2번 prompt에 "in a retrieval task"가 추가된 prompt
- 1번 prompt를 사용해 검색을 수행했을 때, 더 좋은 성능을 보였다.
- 생성되는 임베딩의 품질이 prompt가 의도한 대로 따라갔다
3.3 Impact of different LLMs
- Backbone LLM을 바꿔서 실험을 진행한 경우
- Hybrid 방식은 거의 모든 LLM에서 BM25보다 나은 성능을 보임
- Instruction Tuning으로 학습된 LLM이 더 나은 검색 성능을 보임
3.4 Supervised Results
- dual encoder를 학습시키는 loss인 InfoNCE loss를 이용하여 학습
- dense-only는 InfoNCE loss를 dense embedding에만 적용
- dense/sparse/hybrid는 InfoNCE loss를 dense와 sparse representation에 모두 적용
- 1k data는 MS MARCO dataset에서 랜덤으로 추출
- 1k의 학습 데이터만으로도 검색 성능의 향상폭이 크다는 점에서 LLM이 embedding을 만들기 위한 intial 모델의 역할을 할 수 있음을 시사
- hybrid를 사용하여 학습하고, 추론 시에도 hybrid 방식으로 대표 embedding을 만드는 것이 가장 좋은 성능
'논문 리뷰' 카테고리의 다른 글
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- PyTorch
- 파이토치
- Rag
- DECI
- sliding window
- LeetCode
- 인과관계추론
- NAACL21
- 베르누이분포
- #information_retrieval
- KL_Divergence
- Tensor
- 베이즈정리
- #BOJ #2467번 #투포인터알고리즘
- #BOJ
- #1405번
- 조건부확률
- 확률과통계
- 이산확률분포
- #BOJ #그리디알고리즘
- NumPy
- iclr
- two-pointers
- 이항분포
- #브루트포스
- GCN
- emnlp2024
- #BOJ #알고리즘 #1034번
- CoT
- #BOJ #유클리드호제법
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함