Hypothetical Document Embeddings (HyDE) (VI)

From Systems analysis Wiki
Jump to navigation Jump to search

Hypothetical Document Expansion (HyDE) — phương pháp cải thiện vector retrieval và retrieval‑augmented generation (RAG), trong đó mô hình ngôn ngữ lớn (LLM) dựa trên truy vấn gốc để tạo ra một «tài liệu giả thuyết»; sau đó văn bản này được vector hóa bằng encoder, và việc tìm kiếm được thực hiện trong các tài liệu thực dựa trên độ gần với vector thu được. Cách tiếp cận này cho phép sử dụng «các mẫu liên quan» được mã hóa bởi LLM và «neo đậu» chúng vào kho ngữ liệu thông qua các embedding dày đặc[1].

Định nghĩa và trực giác

HyDE phân rã bài toán tìm kiếm thành hai giai đoạn:

(1) LLM tạo ra «một ví dụ về câu trả lời liên quan» (hypothetical document) cho truy vấn, qua đó mô hình hóa các đặc trưng liên quan;

(2) encoder tương phản (ví dụ: Contriever) chuyển đổi văn bản này thành vector, dùng để trích xuất các tài liệu thực từ chỉ mục. Văn bản được tạo ra có thể chứa các lỗi thực tế, nhưng điều quan trọng là các mẫu chủ đề và thuật ngữ mà encoder nắm bắt được[2].

Lịch sử và nguồn gốc

Ý tưởng mở rộng tìm kiếm bằng các văn bản tổng hợp bắt nguồn từ các nghiên cứu về mở rộng truy vấn và phản hồi giả liên quan (PRF): thuật toán Rocchio và các mô hình ngôn ngữ liên quan[3][4]. Đối với dense retrieval, các encoder được huấn luyện tương phản (Contriever)[5] và Dense Passage Retrieval (DPR)[6] đã được sử dụng. Benchmark BEIR đã chuẩn hóa đánh giá zero‑shot[7]. Trên nền tảng đó, HyDE được đề xuất như một cách «đưa vào» kiến thức về sự liên quan thông qua LLM trong chế độ không cần dữ liệu huấn luyện, mà không cần tinh chỉnh encoder[8].

Phương pháp và hình thức hóa

Giả sử kho ngữ liệu tài liệu 𝒟={d1,,dN}, và encoder văn bản E:textn xác định các biểu diễn vector của tài liệu 𝐯d=E(d). Để đo độ gần, người ta sử dụng độ tương đồng cosine hoặc tích vô hướng; lưu ý quan trọng: **tích vô hướng trùng với độ tương đồng cosine chỉ khi cả hai vector đều có L2‑norm bằng đơn vị** (𝐮=𝐯=1)[9].

HyDE định nghĩa lại biểu diễn truy vấn thông qua «tài liệu giả thuyết» được tạo bởi LLM. Hình thức:

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

trong đó G — LLM với hướng dẫn inst (ví dụ: «Hãy viết một đoạn văn trả lời câu hỏi …»), S — độ đo tương đồng (cosine hoặc IP có chuẩn hóa), còn k(q) — tập hợp gồm k tài liệu có độ tương đồng tối đa[10][11].

Trong thực tế kỹ thuật, người ta thường tạo ra **nhiều** văn bản giả thuyết và tổng hợp các biểu diễn của chúng, điều này giúp tăng độ ổn định:

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

trong đó ξj — các tham số giải mã ngẫu nhiên (ví dụ: temperature/top‑p). Việc kết hợp ensemble như vậy cải thiện Recall với mức tăng độ trễ vừa phải[12].

Pipeline cơ bản của 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

Mối liên hệ với các phương pháp khác (QE, doc2query, PRF)

  • QE (mở rộng truy vấn) thêm các thuật ngữ vào truy vấn; HyDE thay vào đó tạo ra toàn bộ «quasi‑document», điều này phù hợp hơn với các encoder dày đặc[13].
  • doc2query / docTTTTTquery mở rộng tài liệu bằng các truy vấn tổng hợp trước khi lập chỉ mục[14][15]; HyDE mở rộng truy vấn ngay lập tức, không cần lập lại chỉ mục.
  • PRF (Rocchio, Relevance LM) cập nhật vector truy vấn dựa trên các kết quả hàng đầu; HyDE trích xuất «mẫu liên quan» trực tiếp từ LLM và sau đó «neo đậu» nó thông qua retrieval trên kho ngữ liệu[16].

Tích hợp vào RAG và xếp hạng lại

Trong RAG, HyDE được áp dụng như giai đoạn retrieval đầu tiên: tài liệu giả thuyết → embedding → k ứng viên. Tiếp theo là xếp hạng lại: cross‑encoder lớp BERT[17] hoặc tương tác muộn ColBERT[18]. Để hợp nhất các danh sách (ví dụ: kết hợp BM25+vector), thường sử dụng RRF (reciprocal rank fusion): RRF(d)=r1k+rankr(d),k60. Phương pháp RRF ổn định cải thiện chất lượng tổng hợp của các bảng xếp hạng kết hợp[19].

Đánh giá trên benchmark (BEIR và các bộ khác)

Công trình gốc đánh giá HyDE trong chế độ không cần dữ liệu huấn luyện trên TREC DL'19/20 (tìm kiếm web) và trên tập con của các bộ sưu tập BEIR (Scifact, ArguAna, TREC‑COVID, FiQA, DBPedia, TREC‑NEWS, Climate‑FEVER). Một phần kết quả — tính đến 2023‑07:

TREC DL19/20 (tìm kiếm web) — mAP / nDCG@10 / Recall@1k
Phương pháp DL19 DL20 Nguồn
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 (tuyển chọn các bộ dữ liệu) — nDCG@10 / Recall@100
Phương pháp Scifact ArguAna TREC‑COVID FiQA DBPedia TREC‑NEWS Climate‑FEVER Nguồn
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 cũng cải thiện MRR@100 trên các bộ đa ngôn ngữ Mr.TyDi (sw/ko/ja/bn) so với mContriever[28].

Khuyến nghị thực tiễn

Khi nào nên áp dụng HyDE
  • Chế độ không cần dữ liệu huấn luyện / chuyển giao (không có nhãn liên quan; sự «khác biệt» về miền so với kho ngữ liệu huấn luyện)[29].
  • Cần tăng Recall@k với độ chính xác chấp nhận được — HyDE thường «mở ra» các vùng liên quan trong không gian vector[30].
Các thiết lập thông thường
  • LLM và prompt: hướng dẫn «Hãy viết một đoạn văn trả lời câu hỏi …»; độ ngẫu nhiên vừa phải (ví dụ: temperature≈0.7)[31].
  • Số lượng văn bản giả thuyết: 1–5; lấy trung bình embedding giúp tăng độ ổn định[32].
  • Embedder: (m)Contriever không cần tinh chỉnh; có thể áp dụng các encoder đã được tinh chỉnh (hiệu ứng HyDE vẫn được giữ nguyên)[33].
  • Chuẩn hóa embedding: L2‑norm; tích trong trùng với cosine[34].
  • Hybrid retrieval: BM25+vector với xếp hạng lại tiếp theo[35].
  • Bộ xếp hạng lại: Cross-Encoder (BERT re‑ranker)[36] hoặc ColBERT[37].
  • Hợp nhất kết quả của các chiến lược khác nhau: RRF (k≈60)[38].
Theo dõi chất lượng/chi phí
  • Retrieval: nDCG@k, Recall@k, MRR; end‑to‑end RAG: EM/F1 hoặc các chỉ số groundedness (RAGAS/TruLens)[39][40].
  • Chi phí/độ trễ: chủ yếu do quá trình tạo sinh LLM và (nếu có) xếp hạng lại; được tối ưu hóa bằng số lượng «văn bản giả thuyết» và độ dài câu trả lời[41].

Hạn chế và các vấn đề mở

  • Ảo giác của văn bản giả thuyết: LLM có thể đưa vào các lỗi thực tế; việc «neo đậu» thông qua encoder và kho ngữ liệu giảm thiểu rủi ro nhưng không loại bỏ hoàn toàn[42].
  • Hạn chế về miền/ngôn ngữ: lợi thế của HyDE giảm đi trong các miền chuyên biệt hẹp và đối với các ngôn ngữ ít tài nguyên[43].
  • Độ trễ và chi phí: quá trình tạo sinh LLM thêm độ trễ và chi phí token; điều này có tính quyết định đối với các kịch bản trực tuyến và các «văn bản giả thuyết» dài[44].
  • Đạo đức và thiên lệch: nên ưu tiên sử dụng các LLM an toàn và áp dụng bộ lọc[45].

Bảng so sánh các phương pháp

So sánh HyDE và các phương pháp liên quan
Phương pháp Lớp Nơi tạo văn bản Encoder/chỉ mục Bộ xếp hạng lại (giai đoạn 2) Chỉ số thông thường (ví dụ) Chi phí/độ trễ Nguồn
HyDE Query→hypo‑doc Phía truy vấn (LLM → đoạn văn) (m)Contriever; ANN BERT re‑rank / ColBERT / RRF DL19 nDCG@10≈61.3; DL20≈57.9; ArguAna nDCG@10≈46.6 + tạo sinh LLM; + xếp hạng lại (tùy chọn) [46]
BM25 Từ vựng Chỉ mục đảo ngược Tùy chọn xem bảng (trên) Thấp (lexical) [47]
DPR / ANCE Dày đặc (ft) Bi‑encoder; ANN Tùy chọn DL19 nDCG@10≈62–65 Trung bình (không có LLM) [48][49]
doc2query / docTTTTTquery Mở rộng tài liệu Phía bộ sưu tập (trước khi lập chỉ mục) BM25/sparse+expanded Tùy chọn Cải thiện BM25 trên MS MARCO Tạo sinh ngoại tuyến cao; trực tuyến nhanh [50][51]
PRF (Rocchio, RLM) QE theo phản hồi Truy vấn (theo kết quả hàng đầu) Bất kỳ Tùy chọn Tăng Recall/rủi ro trôi dạt + lượt retrieval bổ sung [52]

Xem thêm

  • BM25
  • Tìm kiếm theo biểu diễn vector,
  • RAG
  • Phản hồi giả liên quan
  • BEIR

Tài liệu tham khảo

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

Liên kết

  • Kho lưu trữ HyDE: github.com/texttron/hyde.
  • Tài liệu hướng dẫn: Haystack — HyDE: docs.haystack.deepset.ai.
  • Tài liệu hướng dẫn: LangChain — HyDE Retriever: docs.langchain.com.

Ghi chú

  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.