Hypothetical Document Embeddings (HyDE) (FA)
Hypothetical Document Expansion (HyDE) — روشی برای بهبود بازیابی برداری و retrieval‑augmented generation (RAG) است که در آن یک مدل زبانی بزرگ (LLM) بر اساس پرسش اولیه یک «سند فرضی» تولید میکند؛ سپس این متن توسط یک encoder به بردار تبدیل میشود و جستجو میان اسناد واقعی بر اساس نزدیکی به بردار بهدستآمده انجام میگیرد. این رویکرد امکان بهرهگیری از «الگوهای ارتباط» رمزگذاریشده توسط LLM را فراهم میکند و آنها را از طریق embeddingهای متراکم بر روی مجموعه اسناد «متکی» میسازد[1].
تعریف و شهود
HyDE وظیفه جستجو را به دو مرحله تجزیه میکند:
(1) LLM یک «نمونه پاسخ مرتبط» (hypothetical document) برای پرسش تولید میکند و بدین ترتیب ویژگیهای ارتباط را مدلسازی مینماید;
(2) یک encoder تقابلی (مثلاً Contriever) این متن را به برداری تبدیل میکند که اسناد واقعی از فهرست بر اساس آن بازیابی میشوند. متن تولیدشده ممکن است حاوی خطاهای واقعی باشد، اما آنچه اهمیت دارد الگوهای موضوعی و اصطلاحی است که توسط encoder دریافت میشوند[2].
تاریخچه و منابع
ایده گسترش جستجو با متنهای مصنوعی ریشه در پژوهشهای مربوط به گسترش پرسش و بازخورد شبهمرتبط (PRF) دارد: الگوریتم Rocchio و مدلهای زبانی ارتباط[3][4]. برای بازیابی متراکم از encoderهای آموزشدیده با روش تقابلی (Contriever)[5] و Dense Passage Retrieval (DPR)[6] استفاده شد. بنچمارک BEIR ارزیابی zero‑shot را استانداردسازی کرد[7]. در این زمینه، HyDE به عنوان روشی برای «وارد کردن» دانش ارتباط از طریق LLM در حالت نقطه صفر، بدون نیاز به fine-tuning encoder، پیشنهاد شد[8].
روش و صورتبندی
فرض کنید مجموعه اسناد و encoder متن بازنماییهای برداری اسناد را تعریف میکند. برای اندازهگیری نزدیکی از شباهت کسینوسی یا حاصلضرب داخلی استفاده میشود؛ نکته مهم: **حاصلضرب داخلی تنها زمانی با شباهت کسینوسی برابر است که هر دو بردار دارای نُرم L2 واحد باشند** ()[9].
HyDE بازنمایی پرسش را از طریق «سند فرضی» تولیدشده توسط LLM بازتعریف میکند. به صورت رسمی:
که در آن — LLM با دستورالعمل (برای مثال: «یک پاراگراف بنویس که به سوال … پاسخ دهد»)، — معیار شباهت (کسینوس یا IP با نرمالسازی)، و — مجموعهای از سند با بیشترین شباهت است[10][11].
در عمل مهندسی، اغلب **چندین** متن فرضی تولید میشود و بازنماییهای آنها تجمیع میگردد که پایداری را افزایش میدهد:
که در آن — پارامترهای تصادفی رمزگشایی (مثلاً 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 به جای آن یک «شبهسند» کامل تولید میکند که با encoderهای متراکم همراستایی بهتری دارد[13].
- doc2query / docTTTTTquery اسناد را با پرسشهای مصنوعی قبل از ایندکسگذاری گسترش میدهند[14][15]؛ HyDE پرسش را به صورت آنی گسترش میدهد و نیازی به ایندکسگذاری مجدد ندارد.
- PRF (Rocchio، Relevance LM) بردار پرسش را بر اساس نتایج برتر بهروزرسانی میکند؛ HyDE «الگوی ارتباط» را مستقیماً از LLM استخراج کرده و سپس آن را از طریق بازیابی از روی مجموعه اسناد «متکی» میسازد[16].
یکپارچهسازی در RAG و بازرتبهبندی
در RAG، HyDE به عنوان مرحله اول بازیابی به کار میرود: سند فرضی → embedding → k کاندیدا. سپس بازرتبهبندی انجام میشود: cross-encoderهای کلاس BERT[17] یا تعامل دیرهنگام ColBERT[18]. برای ادغام فهرستها (مثلاً ترکیب BM25+vector) معمولاً از RRF (reciprocal rank fusion) استفاده میشود: روش RRF به طور پایدار کیفیت کلی رتبهبندیهای ادغامشده را بهبود میبخشد[19].
ارزیابی روی بنچمارکها (BEIR و غیره)
مقاله اصلی، HyDE را در حالت نقطه صفر روی TREC DL'19/20 (جستجوی وب) و زیرمجموعهای از مجموعههای BEIR (Scifact، ArguAna، TREC‑COVID، FiQA، DBPedia، TREC‑NEWS، Climate‑FEVER) ارزیابی میکند. بخشی از نتایج — بهروز تا 2023‑07:
| روش | 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] |
| روش | 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 همچنین MRR@100 را روی مجموعههای چندزبانه Mr.TyDi (sw/ko/ja/bn) نسبت به mContriever بهبود میبخشد[28].
توصیههای عملی
- چه زمانی HyDE را بهکار ببریم
- حالتهای نقطه صفر/انتقالپذیر (بدون برچسبهای مرتبط؛ «ناهمشکلی» دامنه با مجموعههای آموزشی)[29].
- نیاز به افزایش Recall@k با دقت قابلقبول — HyDE اغلب نواحی مرتبط فضای برداری را «باز میکند»[30].
- تنظیمات معمول
- LLM و prompt: دستورالعمل «یک پاراگراف بنویس که به سوال … پاسخ دهد»؛ تصادفیبودن متوسط (مثلاً temperature≈0.7)[31].
- تعداد متنهای فرضی: ۱ تا ۵؛ میانگینگیری از embeddingها پایداری را افزایش میدهد[32].
- Embedder: (m)Contriever بدون fine-tuning؛ امکان استفاده از encoderهای fine-tuneشده نیز وجود دارد (اثر HyDE حفظ میشود)[33].
- نرمالسازی embeddingها: نُرم L2؛ حاصلضرب داخلی معادل کسینوس است[34].
- بازیابی ترکیبی: BM25+vector با بازرتبهبندی بعدی[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].
محدودیتها و سوالات باز
- توهمزایی متن فرضی: LLM ممکن است خطاهای واقعی وارد کند؛ «متکیسازی» از طریق encoder و مجموعه اسناد خطر را کاهش میدهد اما کاملاً از بین نمیبرد[42].
- محدودیتهای دامنهای/زبانی: مزیت HyDE در دامنههای بسیار تخصصی و زبانهای کممنبع کاهش مییابد[43].
- تأخیر و هزینه: تولید LLM تأخیر و هزینه token اضافه میکند؛ برای سناریوهای آنلاین و «فرضیه»های طولانی حیاتی است[44].
- اخلاق و سوگیری: استفاده از LLMهای ایمن و فیلترگذاری ترجیح داده میشود[45].
جدول مقایسهای روشها
| روش | رده | محل تولید متن | Encoder/فهرست | بازرتبهبند (مرحله ۲) | معیارهای معمول (نمونه) | هزینه/تأخیر | منابع |
|---|---|---|---|---|---|---|---|
| HyDE | Query→hypo‑doc | سمت پرسش (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 | واژگانی | — | فهرست معکوس | اختیاری | ر.ک جدول (بالا) | پایین (واژگانی) | [47] |
| DPR / ANCE | متراکم (ft) | — | Bi‑encoder؛ ANN | اختیاری | DL19 nDCG@10≈62–65 | متوسط (بدون LLM) | [48][49] |
| doc2query / docTTTTTquery | گسترش سند | سمت مجموعه (قبل از ایندکسگذاری) | BM25/sparse+expanded | اختیاری | بهبودهای BM25 روی MS MARCO | تولید آفلاین بالا؛ آنلاین سریع | [50][51] |
| PRF (Rocchio, RLM) | QE بر اساس بازخورد | پرسش (بر اساس نتایج برتر) | هر نوع | اختیاری | افزایش Recall/خطرات انحراف | + پاس اضافی بازیابی | [52] |
همچنین ببینید
- BM25
- جستجو بر اساس بازنماییهای برداری،
- RAG
- بازخورد شبهمرتبط
- BEIR
پیوندها
- مخزن HyDE: github.com/texttron/hyde.
- مستندات: Haystack — HyDE: docs.haystack.deepset.ai.
- مستندات: LangChain — HyDE Retriever: docs.langchain.com.
منابع
- 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.
یادداشتها
- ↑ 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’’ — при L2‑нормализации векторов внутр. произведение эквивалентно косинусу. 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). Прил. (ablation): влияние числа гипотетических текстов и параметров генерации. 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), см. выше.
- ↑ 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). Табл. 1. DOI:10.18653/v1/2023.acl-long.99.
- ↑ Izacard, G. et al. (2022); сводные метрики — в Gao et al., 2023, табл. 1. arXiv:2112.09118.
- ↑ Gao, L. et al. (2023). Табл. 1.
- ↑ Karpukhin, V. et al. (2020); сводные — в Gao et al., 2023.
- ↑ Xiong, L. et al. (2021). ICLR. arXiv:2007.00808.
- ↑ Thakur, N. et al. (2021); сводные — в Gao et al., 2023, табл. 2. arXiv:2104.08663.
- ↑ Izacard, G. et al. (2022); сводные — в Gao et al., 2023, табл. 2.
- ↑ Gao, L. et al. (2023). Табл. 2.
- ↑ Gao, L. et al. (2023). Табл. 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)’’ (инженерная справка). docs.haystack.deepset.ai
- ↑ Gao, L. et al. (2023). Табл. 6.
- ↑ Milvus Docs. ‘‘Similarity Metrics’’.
- ↑ Haystack × Milvus Integration (официальная док.). 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). Табл. 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). Табл. 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.