Hypothetical Document Embeddings (HyDE) (KO)

From Systems analysis Wiki
Jump to navigation Jump to search

Hypothetical Document Expansion (HyDE) — 벡터 검색(retrieval) 및 retrieval‑augmented generation (RAG)을 개선하는 방법으로, 대형 언어 모델(LLM)이 원래 쿼리로부터 '가상 문서(hypothetical document)'를 생성하고, 이 텍스트를 인코더로 벡터화한 뒤, 생성된 벡터와의 유사도를 기준으로 실제 문서를 검색하는 방식이다. 이 접근법은 LLM에 인코딩된 '관련성 패턴'을 활용하여 밀집 embedding을 통해 코퍼스에 '근거(grounding)'를 부여할 수 있게 한다[1].

정의와 직관

HyDE는 검색 작업을 두 단계로 분해한다:

(1) LLM이 쿼리에 대한 '관련 응답 예시'(hypothetical document)를 생성하여 관련성 특징을 모델링하고;

(2) 대조적(contrastive) 인코더(예: Contriever)가 해당 텍스트를 벡터로 변환하여, 이를 기반으로 인덱스에서 실제 문서를 추출한다. 생성된 텍스트에는 사실적 오류가 포함될 수 있지만, 인코더가 포착하는 주제적·용어적 패턴이 중요하다[2].

역사와 출처

합성 텍스트를 이용한 검색 확장 아이디어는 쿼리 확장(query expansion) 및 의사 관련성 피드백(PRF) 연구에 그 뿌리를 두고 있다: Rocchio 알고리즘과 관련성 언어 모델[3][4]. 밀집 검색(dense retrieval)에는 대조적으로 학습된 인코더(Contriever)[5]와 Dense Passage Retrieval (DPR)[6]이 활용되었다. BEIR benchmark는 zero‑shot 평가를 표준화하였다[7]. 이러한 배경에서 HyDE는 인코더를 fine-tuning하지 않고도 LLM을 통해 관련성 지식을 zero-shot 방식으로 도입하는 방법으로 제안되었다[8].

방법과 형식화

문서 코퍼스를 𝒟={d1,,dN}, 텍스트 인코더 E:textn가 문서의 벡터 표현 𝐯d=E(d)을 정의한다고 하자. 유사도 측정에는 코사인 유사도 또는 내적이 사용된다. 중요한 점은 **내적은 두 벡터의 L2 노름이 단위 노름일 때만 코사인 유사도와 일치한다**는 것이다(𝐮=𝐯=1)[9].

HyDE는 LLM이 생성한 '가상 문서'를 통해 쿼리 표현을 재정의한다. 형식적으로:

(1) Генерация гипотетического текста:d~=G(q;inst),(2) Эмбеддинг гипотетического текста:𝐯h=E(d~),(3) Поиск ближайших соседей:k(q)=TopKd𝒟S(𝐯h,𝐯d),

여기서 G은 지시문 inst(예: "다음 질문에 답하는 단락을 작성하시오 …")을 갖는 LLM이고, S은 유사도 측정값(코사인 또는 정규화된 내적), k(q)는 최대 유사도를 갖는 k개 문서의 집합이다[10][11].

실제 엔지니어링에서는 **여러** 가상 텍스트를 생성하여 그 표현을 집계하는 방식이 자주 사용되며, 이는 안정성을 높인다:

d~(j)=G(q;inst,ξj),𝐯h=1mj=1mE(d~(j)),

여기서 ξj는 확률적 디코딩 파라미터(예: temperature/top‑p)이다. 이러한 앙상블(ensemble)화는 적절한 지연 시간 증가로 Recall을 향상시킨다[12].

HyDE 기본 파이프라인

# 1) prompt(query) -> hypothetical_doc
# 2) embed(hypothetical_doc) -> v_h
# 3) retrieve(index, v_h, k) -> candidates
# 4) (optional) rerank(query, candidates) -> topN
# 5) (для RAG) stuff / map-reduce / refine на topN

다른 방법과의 관계 (QE, doc2query, PRF)

  • QE(쿼리 확장)는 쿼리에 용어를 추가하는 방식이고, HyDE는 대신 전체 '준문서(quasi‑document)'를 생성하여 밀집 인코더와 더 잘 호환된다[13].
  • doc2query / docTTTTTquery는 인덱싱 전에 합성 쿼리로 문서를 확장한다[14][15]. HyDE는 재인덱싱 없이 실시간으로 쿼리를 확장한다.
  • PRF(Rocchio, Relevance LM)는 상위 결과를 기반으로 쿼리 벡터를 업데이트하는 반면, HyDE는 LLM에서 직접 '관련성 패턴'을 추출한 뒤 코퍼스 검색을 통해 '근거'를 부여한다[16].

RAG 및 재순위화(reranking)와의 통합

RAG에서 HyDE는 검색의 첫 번째 단계로 사용된다: 가상 문서 → embedding → k개 후보. 이후 재순위화가 적용된다: BERT 계열 크로스 인코더[17] 또는 ColBERT의 후기 상호작용(late interaction)[18]. 목록 병합(예: BM25+벡터 하이브리드)에는 일반적으로 RRF(reciprocal rank fusion)가 사용된다: RRF(d)=r1k+rankr(d),k60. RRF 방법은 결합된 순위 목록의 전반적인 품질을 안정적으로 향상시킨다[19].

벤치마크 평가 (BEIR 등)

원저 논문은 TREC DL'19/20(웹 검색)과 BEIR 컬렉션의 하위 집합(Scifact, ArguAna, TREC‑COVID, FiQA, DBPedia, TREC‑NEWS, Climate‑FEVER)에서 HyDE를 zero-shot 방식으로 평가한다. 결과 일부 — 2023-07 기준:

TREC DL19/20 (웹 검색) — mAP / nDCG@10 / Recall@1k
방법 DL19 DL20 출처
BM25 30.1 / 50.6 / 75.0 28.6 / 48.0 / 78.6 [20]
Contriever (unsup.) 24.0 / 44.5 / 74.6 24.0 / 42.1 / 75.4 [21]
HyDE (Contriever+LLM) 41.8 / 61.3 / 88.0 38.2 / 57.9 / 84.4 [22]
DPR (ft) 36.5 / 62.2 / 76.9 41.8 / 65.3 / 81.4 [23]
ANCE (ft) 37.1 / 64.5 / 75.5 40.8 / 64.6 / 77.6 [24]
BEIR (데이터셋 모음) — nDCG@10 / Recall@100
방법 Scifact ArguAna TREC‑COVID FiQA DBPedia TREC‑NEWS Climate‑FEVER 출처
BM25 67.9 / 92.5 39.7 / 93.2 59.5 / 49.8 23.6 / 54.0 31.8 / 46.8 39.5 / 44.7 16.5 / 42.5 [25]
Contriever 64.9 / 92.6 37.9 / 90.1 27.3 / 17.2 24.5 / 56.2 29.2 / 45.3 34.8 / 42.3 15.5 / 44.1 [26]
HyDE 69.1 / 96.4 46.6 / 97.9 59.3 / 41.4 27.3 / 62.1 36.8 / 47.2 44.0 / 50.9 22.3 / 53.0 [27]

HyDE는 다국어 데이터셋 Mr.TyDi(sw/ko/ja/bn)에서도 mContriever 대비 MRR@100을 향상시킨다[28].

실용적 권고사항

HyDE 적용 시점
  • Zero-shot/전이(transfer) 환경(관련성 레이블이 없거나, 학습 코퍼스와 도메인이 크게 다른 경우)[29].
  • 적절한 정밀도를 유지하면서 Recall@k를 높여야 할 때 — HyDE는 벡터 공간에서 관련 영역을 자주 '발견'한다[30].
일반적인 설정
  • LLM 및 prompt: "다음 질문에 답하는 단락을 작성하시오 …" 지시문; 적당한 확률성(예: temperature≈0.7)[31].
  • 가상 텍스트 수: 1–5개; embedding 평균화가 안정성을 높인다[32].
  • 임베더: fine-tuning 없는 (m)Contriever; fine-tuning된 인코더도 사용 가능(HyDE 효과 유지됨)[33].
  • Embedding 정규화: L2 노름; 내적이 코사인과 동등해진다[34].
  • 하이브리드 검색: BM25+벡터 후 재순위화[35].
  • 재순위기: Cross-Encoder(BERT re‑ranker)[36] 또는 ColBERT[37].
  • 결과 병합: 다양한 전략의 결과를 RRF(k≈60)로 통합[38].
품질/비용 모니터링
  • 검색: nDCG@k, Recall@k, MRR; end‑to‑end RAG: EM/F1 또는 groundedness 지표(RAGAS/TruLens)[39][40].
  • 비용/지연 시간: LLM 생성과 (있을 경우) 재순위화가 지배적이며, 가상 텍스트 수와 응답 길이로 최적화할 수 있다[41].

한계와 미해결 과제

  • 가상 텍스트의 환각(hallucination): LLM이 사실적 오류를 도입할 수 있으며, 인코더와 코퍼스를 통한 '근거 부여'가 위험을 줄이지만 완전히 제거하지는 못한다[42].
  • 도메인/언어 제한: 고도로 전문화된 도메인과 저자원 언어에서는 HyDE의 이점이 감소한다[43].
  • 지연 시간과 비용: LLM 생성은 지연 및 token 비용을 추가하며, 온라인 시나리오 및 긴 가상 텍스트에서 특히 중요하다[44].
  • 윤리 및 편향: 안전한 LLM과 필터링을 사용하는 것이 바람직하다[45].

방법 비교표

HyDE와 관련 접근법 비교
방법 분류 텍스트 생성 위치 인코더/인덱스 재순위기(2단계) 대표 지표(예시) 비용/지연 시간 출처
HyDE 쿼리→가상 문서 쿼리 측(LLM → 단락) (m)Contriever; ANN BERT re‑rank / ColBERT / RRF DL19 nDCG@10≈61.3; DL20≈57.9; ArguAna nDCG@10≈46.6 + LLM 생성; + 재순위화(선택) [46]
BM25 어휘적(lexical) 역색인(inverted index) 선택적 위 표 참조 낮음(lexical) [47]
DPR / ANCE 밀집(fine-tuning) Bi-encoder; ANN 선택적 DL19 nDCG@10≈62–65 보통(LLM 없음) [48][49]
doc2query / docTTTTTquery 문서 확장 컬렉션 측(인덱싱 전) BM25/sparse+확장 선택적 MS MARCO에서 BM25 개선 오프라인 생성 비용 높음; 온라인 빠름 [50][51]
PRF (Rocchio, RLM) 피드백 기반 QE 쿼리(상위 결과 기반) 임의 선택적 Recall 향상/드리프트 위험 + 추가 검색 패스 [52]

같이 보기

  • BM25
  • 벡터 표현 기반 검색
  • RAG
  • 의사 관련성 피드백
  • BEIR

참고 문헌

  • Manning, C. D.; Raghavan, P.; Schütze, H. (2008). Introduction to Information Retrieval. Cambridge University Press. ISBN 978‑0521865715.
  • Robertson, S.; Zaragoza, H. (2009). The Probabilistic Relevance Framework: BM25 and Beyond. Foundations and Trends in IR, 3(4), 333–389. DOI:10.1561/1500000019.

외부 링크

  • HyDE 저장소: github.com/texttron/hyde.
  • 문서: Haystack — HyDE: docs.haystack.deepset.ai.
  • 문서: LangChain — HyDE Retriever: docs.langchain.com.

주석

  1. Gao, L.; Ma, X.; Lin, J.; Callan, J. (2023). ‘‘Precise Zero‑Shot Dense Retrieval without Relevance Labels (HyDE)’’. ACL 2023. pp. 1762–1777. DOI:10.18653/v1/2023.acl-long.99. arXiv:2212.10496
  2. Gao, L. et al. (2023). ACL 2023, §3.2. DOI:10.18653/v1/2023.acl-long.99.
  3. Rocchio, J. (1971). ‘‘Relevance Feedback in Information Retrieval’’. In: Salton, G. (ed.) The SMART Retrieval System. Prentice‑Hall, pp. 313–323. ISBN 978‑0138145255.
  4. Lavrenko, V.; Croft, W. B. (2001). ‘‘Relevance‑Based Language Models’’. SIGIR. DOI:10.1145/383952.383972.
  5. Izacard, G. et al. (2021/2022). ‘‘Unsupervised Dense Information Retrieval with Contrastive Learning’’. arXiv:2112.09118.
  6. Karpukhin, V. et al. (2020). ‘‘Dense Passage Retrieval for Open‑Domain QA’’. EMNLP. DOI:10.18653/v1/2020.emnlp-main.550.
  7. Thakur, N. et al. (2021). ‘‘BEIR: A Heterogeneous Benchmark for Zero‑shot Evaluation of Information Retrieval Models’’. NeurIPS Datasets Track. arXiv:2104.08663.
  8. Gao, L. et al. (2023). DOI:10.18653/v1/2023.acl-long.99.
  9. Milvus Docs. ‘‘Similarity Metrics’’ — при L2‑нормализации векторов внутр. произведение эквивалентно косинусу. URL: https://milvus.io/docs/v2.2.x/metric.md
  10. Gao, L.; Ma, X.; Lin, J.; Callan, J. (2023). ‘‘Precise Zero‑Shot Dense Retrieval without Relevance Labels (HyDE)’’. ACL 2023, §3–4. arXiv:2212.10496. DOI:10.18653/v1/2023.acl-long.99.
  11. Izacard, G. et al. (2021/2022). ‘‘Unsupervised Dense Information Retrieval with Contrastive Learning (Contriever)’’. arXiv:2112.09118.
  12. Gao, L. et al. (2023). Прил. (ablation): влияние числа гипотетических текстов и параметров генерации. arXiv:2212.10496.
  13. Gao, L. et al. (2023). DOI:10.18653/v1/2023.acl-long.99.
  14. Nogueira, R. et al. (2019). ‘‘Document Expansion by Query Prediction’’ (doc2query). arXiv:1904.08375.
  15. Nogueira, R.; Lin, J. (2019). ‘‘From doc2query to docTTTTTquery’’ (tech report). PDF
  16. Rocchio, J. (1971); Lavrenko & Croft (2001), см. выше.
  17. Nogueira, R.; Cho, K. (2019). ‘‘Passage Re‑ranking with BERT’’. arXiv:1901.04085.
  18. Khattab, O.; Zaharia, M. (2020). ‘‘ColBERT: Efficient and Effective Passage Search via Contextualized Late Interaction over BERT’’. SIGIR. DOI:10.1145/3397271.3401075; arXiv:2004.12832.
  19. Cormack, G. V.; Clarke, C. L. A.; Büttcher, S. (2009). ‘‘Reciprocal Rank Fusion Outperforms Condorcet and Nearly Optimally Combines Rankings’’. SIGIR. DOI:10.1145/1571941.1572114.
  20. Gao, L. et al. (2023). Табл. 1. DOI:10.18653/v1/2023.acl-long.99.
  21. Izacard, G. et al. (2022); сводные метрики — в Gao et al., 2023, табл. 1. arXiv:2112.09118.
  22. Gao, L. et al. (2023). Табл. 1.
  23. Karpukhin, V. et al. (2020); сводные — в Gao et al., 2023.
  24. Xiong, L. et al. (2021). ICLR. arXiv:2007.00808.
  25. Thakur, N. et al. (2021); сводные — в Gao et al., 2023, табл. 2. arXiv:2104.08663.
  26. Izacard, G. et al. (2022); сводные — в Gao et al., 2023, табл. 2.
  27. Gao, L. et al. (2023). Табл. 2.
  28. Gao, L. et al. (2023). Табл. 3. DOI:10.18653/v1/2023.acl-long.99.
  29. Gao, L. et al. (2023). §4–5.
  30. Gao, L. et al. (2023). §4.2–4.3.
  31. Gao, L. et al. (2023). §4.1.
  32. Haystack Docs. ‘‘Hypothetical Document Embeddings (HyDE)’’ (инженерная справка). docs.haystack.deepset.ai
  33. Gao, L. et al. (2023). Табл. 6.
  34. Milvus Docs. ‘‘Similarity Metrics’’.
  35. Haystack × Milvus Integration (официальная док.). haystack.deepset.ai
  36. Nogueira, R.; Cho, K. (2019). arXiv:1901.04085.
  37. Khattab, O.; Zaharia, M. (2020). DOI:10.1145/3397271.3401075.
  38. Cormack, G. V. et al. (2009). DOI:10.1145/1571941.1572114.
  39. Manning, C. D.; Raghavan, P.; Schütze, H. (2008). Introduction to Information Retrieval. Cambridge Univ. Press. ISBN 978‑0521865715.
  40. Es, S. et al. (2023). ‘‘RAGAS: Automated Evaluation of Retrieval‑Augmented Generation’’. arXiv:2309.15217.
  41. Gao, L. et al. (2023). §5.
  42. Gao, L. et al. (2023). §3.2; §4.1. DOI:10.18653/v1/2023.acl-long.99.
  43. Gao, L. et al. (2023). Табл. 3; §4.4.
  44. Gao, L. et al. (2023). §4–5.
  45. Ouyang, L. et al. (2022). ‘‘Training language models to follow instructions with human feedback (InstructGPT)’’. NeurIPS. arXiv:2203.02155.
  46. Gao, L. et al. (2023). Табл. 1–2.
  47. Robertson, S.; Zaragoza, H. (2009). ‘‘The Probabilistic Relevance Framework: BM25 and Beyond’’. Found. Trends IR. DOI:10.1561/1500000019.
  48. Karpukhin, V. et al. (2020). DOI:10.18653/v1/2020.emnlp-main.550.
  49. Xiong, L. et al. (2021). arXiv:2007.00808.
  50. Nogueira, R. et al. (2019). arXiv:1904.08375.
  51. Nogueira, R.; Lin, J. (2019). tech report.
  52. Rocchio, J. (1971). SMART; Lavrenko & Croft (2001) SIGIR.