Hypothetical Document Embeddings (HyDE) (DE)

From Systems analysis wiki
Jump to navigation Jump to search

Hypothetical Document Expansion (HyDE) ist eine Methode zur Verbesserung des Vektor-Retrievals und der Retrieval-Augmented Generation (RAG), bei der ein großes Sprachmodell (LLM) aus einer ursprünglichen Anfrage ein „hypothetisches Dokument“ generiert. Dieser Text wird anschließend von einem Encoder vektorisiert, und die Suche nach realen Dokumenten erfolgt auf der Grundlage der Nähe zum resultierenden Vektor. Der Ansatz ermöglicht es, die von einem LLM kodierten „Relevanzmuster“ zu nutzen und sie mithilfe von dichten Embeddings im Korpus zu „verankern“ (to ground)[1].

Definition und Intuition

HyDE zerlegt die Suchaufgabe in zwei Schritte:

(1) Ein LLM erstellt ein „Beispiel für eine relevante Antwort“ (hypothetisches Dokument) auf die Anfrage und modelliert dadurch Relevanzmerkmale.

(2) Ein kontrastiver Encoder (z. B. Contriever) wandelt diesen Text in einen Vektor um, anhand dessen reale Dokumente aus dem Index abgerufen werden. Der generierte Text kann sachliche Fehler enthalten, entscheidend sind jedoch die thematischen und terminologischen Muster, die der Encoder erfasst[2].

Geschichte und Quellen

Die Idee, die Suche durch synthetische Texte zu erweitern, geht auf Arbeiten zur Query Expansion und zum Pseudo-Relevanz-Feedback (PRF) zurück: den Rocchio-Algorithmus und Relevanz-Sprachmodelle[3][4]. Für das Dense Retrieval wurden kontrastiv trainierte Encoder wie Contriever[5] und Dense Passage Retrieval (DPR)[6] eingesetzt. Der BEIR-Benchmark standardisierte die Zero-Shot-Evaluation[7]. Vor diesem Hintergrund wurde HyDE als eine Methode vorgeschlagen, um Relevanzwissen aus einem LLM in ein Zero-Shot-Szenario „einzubringen“, ohne den Encoder nachtrainieren zu müssen[8].

Methode und Formalisierung

Sei 𝒟={d1,,dN} ein Korpus von Dokumenten und E:textn ein Text-Encoder, der Vektorrepräsentationen von Dokumenten 𝐯d=E(d) erzeugt. Zur Messung der Ähnlichkeit wird entweder die Kosinus-Ähnlichkeit oder das Skalarprodukt verwendet. Ein wichtiger Hinweis: **Das Skalarprodukt entspricht der Kosinus-Ähnlichkeit nur, wenn beide Vektoren eine L2-Norm von eins haben** (𝐮=𝐯=1)[9].

HyDE definiert die Repräsentation einer Anfrage über ein vom LLM generiertes „hypothetisches Dokument“. Formal ausgedrückt:

(1) Generierung des hypothetischen Textes:d~=G(q;inst),(2) Einbettung des hypothetischen Textes:𝐯h=E(d~),(3) Suche der nächsten Nachbarn:k(q)=TopKd𝒟S(𝐯h,𝐯d),

wo G das LLM mit der Instruktion inst ist (z. B. „Schreibe einen Absatz, der die folgende Frage beantwortet …“), S das Ähnlichkeitsmaß (Kosinus oder IP mit Normalisierung) und k(q) die Menge der k Dokumente mit der höchsten Ähnlichkeit ist[10][11].

In der Praxis werden oft **mehrere** hypothetische Texte generiert und ihre Repräsentationen aggregiert, was die Robustheit erhöht:

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

wo ξj stochastische Dekodierungsparameter sind (z. B. Temperature/Top-p). Ein solches Ensembling verbessert den Recall bei einem moderaten Anstieg der Latenz[12].

Grundlegende HyDE-Pipeline

# 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) (for RAG) stuff / map-reduce / refine on topN


Beziehung zu anderen Methoden (QE, doc2query, PRF)

  • QE (Query Expansion) fügt der Anfrage Terme hinzu; HyDE generiert stattdessen ein ganzes „Quasi-Dokument“, was besser mit dichten Encodern harmoniert[13].
  • doc2query / docTTTTTquery erweitern Dokumente vor der Indizierung mit synthetischen Anfragen[14][15]; HyDE erweitert die Anfrage on-the-fly, ohne eine Neuindizierung zu erfordern.
  • PRF (Rocchio, Relevance LM) aktualisiert den Anfragevektor basierend auf den Top-Ergebnissen; HyDE extrahiert das „Relevanzmuster“ direkt aus dem LLM und „verankert“ es dann durch Retrieval im Korpus[16].

Integration in RAG und Re-Ranking

In RAG wird HyDE als erste Retrieval-Stufe eingesetzt: hypothetisches Dokument → Embedding → k Kandidaten. Anschließend wird ein Re-Ranking durchgeführt, z. B. mit BERT-basierten Cross-Encodern[17] oder durch späte Interaktion mit ColBERT[18]. Zur Fusion von Ranglisten (z. B. bei hybrider Suche mit BM25+Vektor) wird typischerweise RRF (Reciprocal Rank Fusion) verwendet: RRF(d)=r1k+rankr(d),k60. Die RRF-Methode verbessert konsistent die Gesamtqualität der fusionierten Ranglisten[19].

Evaluation auf Benchmarks (BEIR etc.)

Die Originalarbeit evaluiert HyDE im Zero-Shot-Szenario auf TREC DL’19/20 (Websuche) und auf einer Teilmenge der BEIR-Sammlungen (Scifact, ArguAna, TREC‑COVID, FiQA, DBPedia, TREC‑NEWS, Climate‑FEVER). Auszug der Ergebnisse – Stand Juli 2023:

TREC DL19/20 (Websuche) – mAP / nDCG@10 / Recall@1k
Methode DL19 DL20 Quelle
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 (Auswahl von Datensätzen) – nDCG@10 / Recall@100
Methode Scifact ArguAna TREC‑COVID FiQA DBPedia TREC‑NEWS Climate‑FEVER Quelle
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 verbessert auch den MRR@100 auf den mehrsprachigen Mr.TyDi-Datensätzen (sw/ko/ja/bn) im Vergleich zu mContriever[28].

Praktische Empfehlungen

Wann HyDE einsetzen
  • Zero-Shot- oder Transfer-Szenarien (keine Relevanz-Labels vorhanden; Domänenunterschied zu den Trainingskorpora)[29].
  • Wenn eine Erhöhung des Recall@k bei akzeptabler Präzision erforderlich ist – HyDE „erschließt“ oft relevante Bereiche des Vektorraums[30].
Typische Konfigurationen
  • LLM und Prompt: Eine Anweisung wie „Schreibe einen Absatz, der die folgende Frage beantwortet …“; moderate Stochastizität (z. B. temperature≈0.7)[31].
  • Anzahl der hypothetischen Texte: 1–5; die Mittelung der Embeddings erhöht die Robustheit[32].
  • Embedder: (m)Contriever ohne Fine-Tuning; es können auch feinabgestimmte Encoder verwendet werden (der HyDE-Effekt bleibt bestehen)[33].
  • Normalisierung der Embeddings: L2-Norm; das innere Produkt ist äquivalent zur Kosinus-Ähnlichkeit[34].
  • Hybrides Retrieval: BM25+Vektor mit anschließendem Re-Ranking[35].
  • Re-Ranker: Cross-Encoder (BERT Re-Ranker)[36] oder ColBERT[37].
  • Fusion von Ergebnissen verschiedener Strategien: RRF (k≈60)[38].
Überwachung von Qualität und Kosten
  • Retrieval: nDCG@k, Recall@k, MRR; End-to-End-RAG: EM/F1 oder Groundedness-Metriken (RAGAS/TruLens)[39][40].
  • Kosten/Latenz: Dominiert durch die LLM-Generierung und (falls vorhanden) das Re-Ranking; optimiert durch die Anzahl der „Hypotheticals“ und die Länge der Antwort[41].

Einschränkungen und offene Fragen

  • Halluzinationen im hypothetischen Text: Das LLM kann sachliche Fehler einbringen; die „Verankerung“ durch den Encoder und den Korpus reduziert das Risiko, eliminiert es aber nicht vollständig[42].
  • Domänen- und Sprachbeschränkungen: Der Vorteil von HyDE verringert sich in hochspezialisierten Domänen und bei unterversorgten Sprachen[43].
  • Latenz und Kosten: Die LLM-Generierung führt zu zusätzlicher Latenz und Token-Kosten; dies ist kritisch für Online-Szenarien und lange „Hypotheticals“[44].
  • Ethik und Bias: Es sollten vorzugsweise sichere LLMs und Filtermechanismen verwendet werden[45].

Vergleichstabelle der Methoden

Vergleich von HyDE und verwandten Ansätzen
Methode Klasse Wo wird Text generiert Encoder/Index Re-Ranker (2. Stufe) Typische Metriken (Beispiel) Kosten/Latenz Quellen
HyDE Query→hypo‑doc Auf der Anfrageseite (LLM → Absatz) (m)Contriever; ANN BERT Re‑Ranker / ColBERT / RRF DL19 nDCG@10≈61.3; DL20≈57.9; ArguAna nDCG@10≈46.6 + LLM-Generierung; + Re-Ranking (opt.) [46]
BM25 Lexikalisch Invertierter Index Optional Siehe Tabellen (oben) Niedrig (lexikalisch) [47]
DPR / ANCE Dense (ft) Bi‑Encoder; ANN Optional DL19 nDCG@10≈62–65 Mittel (ohne LLM) [48][49]
doc2query / docTTTTTquery Dokumenten-Expansion Auf der Korpusseite (vor der Indizierung) BM25/sparse+expanded Optional Verbesserungen von BM25 auf MS MARCO Hohe Offline-Generierung; schnell online [50][51]
PRF (Rocchio, RLM) QE durch Feedback Anfrage (basierend auf Top-Ergebnissen) Beliebig Optional Recall-Steigerung/Risiko von Drift + zusätzlicher Retrieval-Durchlauf [52]

Siehe auch

  • BM25
  • Vektorsuche
  • RAG
  • Pseudo-Relevanz-Feedback
  • BEIR

Literatur

  • 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.

Anmerkungen

  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’’ — bei L2-Normalisierung von Vektoren ist das innere Produkt äquivalent zum Kosinus. 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). Anhang (Ablation): Einfluss der Anzahl hypothetischer Texte und Generierungsparameter. 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), siehe oben.
  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). Tab. 1. DOI:10.18653/v1/2023.acl-long.99.
  21. Izacard, G. et al. (2022); zusammenfassende Metriken – in Gao et al., 2023, Tab. 1. arXiv:2112.09118.
  22. Gao, L. et al. (2023). Tab. 1.
  23. Karpukhin, V. et al. (2020); zusammenfassende – in Gao et al., 2023.
  24. Xiong, L. et al. (2021). ICLR. arXiv:2007.00808.
  25. Thakur, N. et al. (2021); zusammenfassende – in Gao et al., 2023, Tab. 2. arXiv:2104.08663.
  26. Izacard, G. et al. (2022); zusammenfassende – in Gao et al., 2023, Tab. 2.
  27. Gao, L. et al. (2023). Tab. 2.
  28. Gao, L. et al. (2023). Tab. 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)’’ (Engineering-Referenz). docs.haystack.deepset.ai
  33. Gao, L. et al. (2023). Tab. 6.
  34. Milvus Docs. ‘‘Similarity Metrics’’.
  35. Haystack × Milvus Integration (offizielle Dok.). 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). Tab. 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). Tab. 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.

Category:Artificial intelligence