Hypothetical Document Embeddings (HyDE) (DE)
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 ein Korpus von Dokumenten und ein Text-Encoder, der Vektorrepräsentationen von Dokumenten 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** ()[9].
HyDE definiert die Repräsentation einer Anfrage über ein vom LLM generiertes „hypothetisches Dokument“. Formal ausgedrückt:
wo das LLM mit der Instruktion ist (z. B. „Schreibe einen Absatz, der die folgende Frage beantwortet …“), das Ähnlichkeitsmaß (Kosinus oder IP mit Normalisierung) und die Menge der 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:
wo 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: 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:
| 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] |
| 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
| 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.
Weblinks
- HyDE-Repository: github.com/texttron/hyde.
- Dokumentation: Haystack – HyDE: docs.haystack.deepset.ai.
- Dokumentation: LangChain – HyDE Retriever: docs.langchain.com.
Anmerkungen
- ↑ 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
- ↑ Gao, L. et al. (2023). ACL 2023, §3.2. DOI:10.18653/v1/2023.acl-long.99.
- ↑ Rocchio, J. (1971). ‘‘Relevance Feedback in Information Retrieval’’. In: Salton, G. (ed.) The SMART Retrieval System. Prentice‑Hall, pp. 313–323. ISBN 978‑0138145255.
- ↑ Lavrenko, V.; Croft, W. B. (2001). ‘‘Relevance‑Based Language Models’’. SIGIR. DOI:10.1145/383952.383972.
- ↑ Izacard, G. et al. (2021/2022). ‘‘Unsupervised Dense Information Retrieval with Contrastive Learning’’. arXiv:2112.09118.
- ↑ Karpukhin, V. et al. (2020). ‘‘Dense Passage Retrieval for Open‑Domain QA’’. EMNLP. DOI:10.18653/v1/2020.emnlp-main.550.
- ↑ Thakur, N. et al. (2021). ‘‘BEIR: A Heterogeneous Benchmark for Zero‑shot Evaluation of Information Retrieval Models’’. NeurIPS Datasets Track. arXiv:2104.08663.
- ↑ Gao, L. et al. (2023). DOI:10.18653/v1/2023.acl-long.99.
- ↑ 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
- ↑ 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.
- ↑ Izacard, G. et al. (2021/2022). ‘‘Unsupervised Dense Information Retrieval with Contrastive Learning (Contriever)’’. arXiv:2112.09118.
- ↑ Gao, L. et al. (2023). Anhang (Ablation): Einfluss der Anzahl hypothetischer Texte und Generierungsparameter. arXiv:2212.10496.
- ↑ Gao, L. et al. (2023). DOI:10.18653/v1/2023.acl-long.99.
- ↑ Nogueira, R. et al. (2019). ‘‘Document Expansion by Query Prediction’’ (doc2query). arXiv:1904.08375.
- ↑ Nogueira, R.; Lin, J. (2019). ‘‘From doc2query to docTTTTTquery’’ (tech report). PDF
- ↑ Rocchio, J. (1971); Lavrenko & Croft (2001), siehe oben.
- ↑ Nogueira, R.; Cho, K. (2019). ‘‘Passage Re‑ranking with BERT’’. arXiv:1901.04085.
- ↑ 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.
- ↑ 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.
- ↑ Gao, L. et al. (2023). Tab. 1. DOI:10.18653/v1/2023.acl-long.99.
- ↑ Izacard, G. et al. (2022); zusammenfassende Metriken – in Gao et al., 2023, Tab. 1. arXiv:2112.09118.
- ↑ Gao, L. et al. (2023). Tab. 1.
- ↑ Karpukhin, V. et al. (2020); zusammenfassende – in Gao et al., 2023.
- ↑ Xiong, L. et al. (2021). ICLR. arXiv:2007.00808.
- ↑ Thakur, N. et al. (2021); zusammenfassende – in Gao et al., 2023, Tab. 2. arXiv:2104.08663.
- ↑ Izacard, G. et al. (2022); zusammenfassende – in Gao et al., 2023, Tab. 2.
- ↑ Gao, L. et al. (2023). Tab. 2.
- ↑ Gao, L. et al. (2023). Tab. 3. DOI:10.18653/v1/2023.acl-long.99.
- ↑ Gao, L. et al. (2023). §4–5.
- ↑ Gao, L. et al. (2023). §4.2–4.3.
- ↑ Gao, L. et al. (2023). §4.1.
- ↑ Haystack Docs. ‘‘Hypothetical Document Embeddings (HyDE)’’ (Engineering-Referenz). docs.haystack.deepset.ai
- ↑ Gao, L. et al. (2023). Tab. 6.
- ↑ Milvus Docs. ‘‘Similarity Metrics’’.
- ↑ Haystack × Milvus Integration (offizielle Dok.). haystack.deepset.ai
- ↑ Nogueira, R.; Cho, K. (2019). arXiv:1901.04085.
- ↑ Khattab, O.; Zaharia, M. (2020). DOI:10.1145/3397271.3401075.
- ↑ Cormack, G. V. et al. (2009). DOI:10.1145/1571941.1572114.
- ↑ Manning, C. D.; Raghavan, P.; Schütze, H. (2008). Introduction to Information Retrieval. Cambridge Univ. Press. ISBN 978‑0521865715.
- ↑ Es, S. et al. (2023). ‘‘RAGAS: Automated Evaluation of Retrieval‑Augmented Generation’’. arXiv:2309.15217.
- ↑ Gao, L. et al. (2023). §5.
- ↑ Gao, L. et al. (2023). §3.2; §4.1. DOI:10.18653/v1/2023.acl-long.99.
- ↑ Gao, L. et al. (2023). Tab. 3; §4.4.
- ↑ Gao, L. et al. (2023). §4–5.
- ↑ Ouyang, L. et al. (2022). ‘‘Training language models to follow instructions with human feedback (InstructGPT)’’. NeurIPS. arXiv:2203.02155.
- ↑ Gao, L. et al. (2023). Tab. 1–2.
- ↑ Robertson, S.; Zaragoza, H. (2009). ‘‘The Probabilistic Relevance Framework: BM25 and Beyond’’. Found. Trends IR. DOI:10.1561/1500000019.
- ↑ Karpukhin, V. et al. (2020). DOI:10.18653/v1/2020.emnlp-main.550.
- ↑ Xiong, L. et al. (2021). arXiv:2007.00808.
- ↑ Nogueira, R. et al. (2019). arXiv:1904.08375.
- ↑ Nogueira, R.; Lin, J. (2019). tech report.
- ↑ Rocchio, J. (1971). SMART; Lavrenko & Croft (2001) SIGIR.
Category:Artificial intelligence