Hypothetical Document Embeddings (HyDE) (TL)

From Systems analysis Wiki
Jump to navigation Jump to search

Hypothetical Document Expansion (HyDE) — isang paraan ng pagpapabuti ng vector retrieval at retrieval‑augmented generation (RAG), kung saan ang isang malaking language model (LLM) ay bumubuo ng isang «hypothetical na dokumento» batay sa orihinal na query; pagkatapos, ang tekstong ito ay vina-vectorize ng encoder, at ang paghahanap ay isinasagawa sa mga tunay na dokumento batay sa pagkakatulad sa nakuhang vector. Pinapayagan ng pamamaraang ito na magamit ang mga «pattern ng kaugnayan» na naka-encode ng LLM, at «i-ground» ang mga ito sa corpus gamit ang mga dense embedding[1].

Kahulugan at Intuisyon

Binabasag ng HyDE ang gawain ng paghahanap sa dalawang yugto:

(1) Lumilikha ang LLM ng «halimbawa ng kaugnayan ng sagot» (hypothetical document) para sa query, na nagmomodelo ng mga katangian ng kaugnayan;

(2) Isang contrastive encoder (hal., Contriever) ang nagsasalin ng tekstong ito sa isang vector, kung saan ang mga tunay na dokumento ay kinukuha mula sa index. Ang nabuong teksto ay maaaring maglaman ng mga katotohanang pagkakamali, ngunit mahalaga ang mga tematiko at terminolohikal na pattern na natutukoy ng encoder[2].

Kasaysayan at mga Pinagkukunan

Ang ideya ng pagpapalawak ng paghahanap gamit ang mga synthetic na teksto ay nagmumula sa mga gawa sa pagpapalawak ng query at pseudo-relevant feedback (PRF): ang algorithm ni Rocchio at mga language model ng kaugnayan[3][4]. Para sa dense retrieval, ginamit ang mga contrastively trained encoder (Contriever)[5] at Dense Passage Retrieval (DPR)[6]. Pinalawak ng benchmark na BEIR ang pamantayan ng zero‑shot na pagsusuri[7]. Sa kontekstong ito, iminungkahi ang HyDE bilang paraan ng «pagdadala» ng kaalaman tungkol sa kaugnayan sa zero-shot na mode sa pamamagitan ng LLM nang hindi kina-fine-tune ang encoder[8].

Pamamaraan at Pormalisasyon

Ipalagay na ang corpus ng mga dokumento ay 𝒟={d1,,dN}, at ang encoder ng mga teksto ay E:textn na nagtatakda ng mga vector representation ng mga dokumento 𝐯d=E(d). Para sa pagsukat ng pagkakatulad, ginagamit ang alinman sa cosine similarity o dot product; isang mahalagang paalala: **ang dot product ay katumbas ng cosine similarity lamang kung ang L2‑norm ng parehong vector ay iisa** (𝐮=𝐯=1)[9].

Muling tinukoy ng HyDE ang representasyon ng query sa pamamagitan ng «hypothetical na dokumento» na binuo ng LLM. Pormal na:

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

kung saan ang G — LLM na may instruksyon inst (halimbawa: «Sumulat ng talata na sumasagot sa tanong …»), ang S — sukatan ng pagkakatulad (cosine o IP na may normalization), at ang k(q) — hanay ng k na mga dokumento na may pinakamataas na pagkakatulad[10][11].

Sa engineering practice, kadalasang bumubuo ng **maraming** hypothetical na teksto at pina-aggregate ang kanilang mga representasyon, na nagpapataas ng katatagan:

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

kung saan ang ξj — stochastic na mga parameter ng decoding (hal., temperature/top‑p). Ang ensembling na ito ay nagpapabuti ng Recall na may katamtamang pagtaas ng latency[12].

Pangunahing Pipeline ng 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

Kaugnayan sa iba pang mga pamamaraan (QE, doc2query, PRF)

  • QE (pagpapalawak ng query) ay nagdadagdag ng mga term sa query; sa halip, ang HyDE ay bumubuo ng isang buong «quasi-dokumento», na mas naaayon sa mga dense encoder[13].
  • doc2query / docTTTTTquery ay nagpapalawak ng mga dokumento gamit ang mga synthetic na query bago ang pag-index[14][15]; pinalalawig ng HyDE ang query sa real time, nang hindi nangangailangan ng muling pag-index.
  • PRF (Rocchio, Relevance LM) ay nag-a-update ng query vector batay sa mga nangungunang resulta; direktang kinukuha ng HyDE ang «pattern ng kaugnayan» mula sa LLM at pagkatapos ay «ini-ground» ito sa pamamagitan ng retrieval mula sa corpus[16].

Integrasyon sa RAG at Muling Pag-rank

Sa RAG, ang HyDE ay ginagamit bilang unang yugto ng retrieval: hypothetical na dokumento → embedding → k na kandidato. Pagkatapos nito, ginagamit ang muling pag-rank: mga cross-encoder ng klase ng BERT[17] o late interaction ColBERT[18]. Para sa pagsasama ng mga listahan (hal., hybrid na BM25+vector), karaniwang ginagamit ang RRF (reciprocal rank fusion): RRF(d)=r1k+rankr(d),k60. Ang pamamaraang RRF ay patuloy na nagpapataas ng pinagsanib na kalidad ng mga pinagsamang ranking[19].

Pagsusuri sa mga Benchmark (BEIR at iba pa)

Sinusuri ng orihinal na gawa ang HyDE sa zero-shot na mode sa TREC DL'19/20 (web search) at sa isang subset ng mga koleksyon ng BEIR (Scifact, ArguAna, TREC‑COVID, FiQA, DBPedia, TREC‑NEWS, Climate‑FEVER). Isang sipi ng mga resulta — sa petsa ng 2023‑07:

TREC DL19/20 (web search) — mAP / nDCG@10 / Recall@1k
Pamamaraan DL19 DL20 Pinagmulan
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 (piniling mga dataset) — nDCG@10 / Recall@100
Pamamaraan Scifact ArguAna TREC‑COVID FiQA DBPedia TREC‑NEWS Climate‑FEVER Pinagmulan
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]

Pinapabuti rin ng HyDE ang MRR@100 sa mga multilingual na dataset ng Mr.TyDi (sw/ko/ja/bn) kumpara sa mContriever[28].

Mga Praktikal na Rekomendasyon

Kailan gamitin ang HyDE
  • Zero-shot/transfer na mga mode (walang mga kaugnay na label; malaking pagkakaiba ng domain mula sa mga training corpus)[29].
  • Kapag kailangan ang pagtaas ng Recall@k na may katanggap-tanggap na katumpakan — kadalasang «binubuksan» ng HyDE ang mga kaugnay na lugar ng vector space[30].
Mga karaniwang setting
  • LLM at prompt: instruksyon na «Sumulat ng talata na sumasagot sa tanong …»; katamtamang stochasticity (hal., temperature≈0.7)[31].
  • Bilang ng hypothetical na teksto: 1–5; ang pag-average ng mga embedding ay nagpapataas ng katatagan[32].
  • Embedder: (m)Contriever nang walang fine-tuning; posible ring gumamit ng fine-tuned na mga encoder (nananatili ang epekto ng HyDE)[33].
  • Normalization ng embedding: L2‑norm; ang dot product ay katumbas ng cosine[34].
  • Hybrid retrieval: BM25+vector na sinusundan ng muling pag-rank[35].
  • Re-ranker: Cross-Encoder (BERT re‑ranker)[36] o ColBERT[37].
  • Pagsasama ng mga resulta mula sa iba't ibang estratehiya: RRF (k≈60)[38].
Pagsubaybay ng kalidad/gastos
  • Retrieval: nDCG@k, Recall@k, MRR; end‑to‑end RAG: EM/F1 o mga sukatan ng groundedness (RAGAS/TruLens)[39][40].
  • Gastos/latency: pinangungunahan ng pagbuo ng LLM at (kung mayroon) muling pag-rank; ino-optimize sa pamamagitan ng bilang ng «mga hypothetical» at haba ng sagot[41].

Mga Limitasyon at Bukas na Tanong

  • Mga hallucination ng hypothetical na teksto: maaaring magpakilala ng mga katotohanang pagkakamali ang LLM; ang «pag-ground» sa pamamagitan ng encoder at corpus ay nagbabawas ng panganib, ngunit hindi ganap na inalis[42].
  • Mga limitasyon sa domain/wika: ang bentahe ng HyDE ay bumababa sa mga lubhang espesyalisadong domain at sa mga wikang may maliit na mapagkukunan[43].
  • Latency at gastos: nagdadagdag ng pagkaantala at gastos sa token ang pagbuo ng LLM; kritikal para sa mga online na sitwasyon at mahabang «mga hypothetical»[44].
  • Etika at mga bias: mas mainam na gumamit ng mga ligtas na LLM at pag-filter[45].

Talahanayan ng Paghahambing ng mga Pamamaraan

Paghahambing ng HyDE at mga kaugnay na pamamaraan
Pamamaraan Klase Saan nabubuo ang teksto Encoder/index Re-ranker (ika-2 yugto) Karaniwang mga sukatan (halimbawa) Gastos/latency Mga Pinagmulan
HyDE Query→hypo‑doc Sa panig ng query (LLM → talata) (m)Contriever; ANN BERT re‑rank / ColBERT / RRF DL19 nDCG@10≈61.3; DL20≈57.9; ArguAna nDCG@10≈46.6 + pagbuo ng LLM; + muling pag-rank (opsyonal) [46]
BM25 Leksikal Inverted index Opsyonal tingnan ang talahanayan (sa itaas) Mababa (lexical) [47]
DPR / ANCE Dense (ft) Bi‑encoder; ANN Opsyonal DL19 nDCG@10≈62–65 Katamtaman (walang LLM) [48][49]
doc2query / docTTTTTquery Pagpapalawak ng dokumento Sa panig ng koleksyon (bago ang pag-index) BM25/sparse+expanded Opsyonal Mga pagpapabuti ng BM25 sa MS MARCO Mataas na offline na pagbuo; mabilis na online [50][51]
PRF (Rocchio, RLM) QE batay sa feedback Query (batay sa mga nangungunang resulta) Anuman Opsyonal Pagtaas ng Recall/mga panganib ng drift + karagdagang pass ng retrieval [52]

Tingnan din

  • BM25
  • Paghahanap sa pamamagitan ng mga vector representation,
  • RAG
  • Pseudo-relevant feedback
  • BEIR

Talasanggunian

  • 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.
  • Repositoryo ng HyDE: github.com/texttron/hyde.
  • Dokumentasyon: Haystack — HyDE: docs.haystack.deepset.ai.
  • Dokumentasyon: LangChain — HyDE Retriever: docs.langchain.com.

Mga Tala

  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.