Hybrid retrieval (RO)

From Systems analysis Wiki
Jump to navigation Jump to search

Hybrid Retrieval (regăsire hibridă) — clasă de metode de regăsire a informației în care se combină semnale lexicale (sparse) și semantice (dense/late‑interaction) pentru creșterea exhaustivității și preciziei rezultatelor. Schemele hibride îmbină avantajele potrivirii exacte a termenilor (BM25/TF-IDF) și ale proximității vectoriale (bi-encodere, modele multi-vector cu interacțiune târzie), utilizând totodată metode de fuziune a clasamentelor robuste la scări de scorare diferite (de exemplu, Reciprocal Rank Fusion, CombSUM/CombMNZ) și reordonare cu cross‑encodere.[1][2][3]

Definiție și motivație

Regăsirea hibridă reprezintă o căutare paralelă sau în cascadă pe două (sau mai multe) canale independente de semnale, urmată de fuziune și/sau reordonare. Motivațiile tipice sunt: (i) depășirea „decalajului terminologic" (sinonime, reformulări), (ii) robustețea față de greșeli de scriere/morfologie, (iii) extragerea codurilor/identificatorilor specifici (unde modelul sparse este puternic), (iv) transferul pe domenii/limbi noi (unde modelele dense oferă generalizare semantică).[4][5][6]

Componentele căutării hibride

Lexicală (sparse)

  • Modele clasice. TF-IDF și BM25/BM25F — metode de bază standard pe indecși inversați; BM25 este justificat în cadrul probabilistic PRF și utilizat pe scară largă în prima etapă de clasare.[7]
  • Sparse antrenabile.
    • SPLADE / SPLADE++/v3. Model neuronal sparse care antrenează extinderea și ponderarea termenilor printr-un cap MLM cu regularizare a rarității; produce rezultate puternice și bună transferabilitate (BEIR).[8][9][10]
    • uniCOIL/COIL. Liste inversate contextualizate și versiunea lor simplificată uniCOIL; compatibile cu indecșii inversați clasici.[11]

Semantică (dense/late‑interaction)

  • Bi‑encoder (vector unic). Interogarea și documentul sunt codificate de modele vectoriale, similaritatea fiind calculată prin dot‑product/MIPS. Exemple: DPR,[12] ANCE,[13] Contriever,[14] GTR,[15] E5.[16]
  • Late‑interaction (multi‑vector). Modelează corespondențele la nivel de token prin interacțiune „târzie": ColBERT/ColBERTv2; compromisul — precizie mai bună la cost de index/latență mai mare, atenuat de drivere inginerești (PLAID, WARP).[17][18][19]

Scheme de hibridizare și fuziune a clasamentelor

  • Căutare paralelă și unificarea candidaților. Se obțin independent liste de candidați (sparse și dense) cu scorurile lor interne; urmează fuziunea clasamentelor.[20]
  • RRF (Reciprocal Rank Fusion). Tehnică robustă la scoruri incomparabile între clasamente, care sumează rangurile inverse:

RRF(d)=i=1m1k+ranki(d), unde de obicei k60.[21] Este suportată în motoare industriale (Elasticsearch/OpenSearch) ca retriever/procesor nativ.[22][23]

  • CombSUM/CombMNZ și altele. Funcții clasice de „sumare a scorurilor" (cu normalizare, dacă este necesar).[24][25][26]
  • Mixtură liniară ponderată.

S(d)=αSextsparse(d)+(1α)Sextdense(d), α[0,1]. Alegerea α poate fi fixă sau antrenabilă (per colecție/per interogare).[27]

  • Normalizarea scorurilor. Pentru CombSUM/CombMNZ se aplică frecvent min‑max, z‑score etc. pentru alinierea scalelor;[28] alternativ, RRF se bazează exclusiv pe ranguri.
  • Ponderare dinamică/adaptivă. Rutarea interogărilor (query routing), caracteristici ale interogării și modele LTR pentru selecția/ponderarea canalelor; lucrările recente arată că o mixtură simplă antrenată depășește adesea RRF și este puțin sensibilă la normalizare.[29]

Reordonare și pipeline-uri multi-etapă

Sistemele hibride sunt de obicei construite ca retrieval → fusion → rerank. Pentru reordonare se utilizează:

  • Cross‑encodere (BERT/T5). Cele mai precise, dar costisitoare: MonoBERT/MonoT5 pentru reordonarea candidaților din top‑N.[30][31]
  • Late‑interaction ca reranker. Familia ColBERT poate funcționa și ca reranker; acceleratoarele moderne (PLAID, WARP) reduc latența fără pierderi de calitate.[32][33]

Compromisul calitate ↔ latență/cost este deosebit de important în contextul RAG și al SLA-urilor stricte (a se vedea latențele de coadă p95/p99).[34]

Evaluare pe benchmark-uri

  • BEIR. Set unificat de colecții/sarcini diverse pentru evaluarea retrieverilor în regim zero‑/out‑of‑domain (de ex., TREC‑COVID, NFCorpus, NQ, HotpotQA, FiQA‑2018, DBPedia‑entity, ArguAna, Webis‑Touché‑2020, FEVER/Climate‑FEVER, Scidocs, SciFact, CQADupStack etc.).[35]
  • TREC Deep Learning / MS MARCO. Resurse clasice pentru antrenarea/evaluarea retrieverilor și rerankerilor în regim de date mari.[36][37][38]
  • Metrici de calitate. nDCG@k, Recall@k, MRR; pentru performanță — latență p50/p95/p99, QPS; pentru exploatare — memorie/cost (CPU/GPU, index).[39][40]
  • Ablații. Se recomandă fixarea contribuției fiecărui canal/pondere și a sensibilității față de parametrii k în RRF și α în mixare; evaluarea robustetii la reformulări și la schimbări OOD.[41][42]

Aspecte inginerești și practici de producție

  • Indecși și ANN. FAISS (Flat/HNSW/IVF‑PQ), HNSW, ScaNN pentru MIPS/similitudine cosinus.[43][44][45]
  • Stiva IR. Lucene/Anserini/Pyserini pentru pipeline-uri sparse/dense și hibride; reproductibilitate „în doi pași" pe BEIR.[46][47]
  • Baze de date vectoriale și motoare de căutare. Qdrant, Weaviate, pgvector/PostgreSQL, Vespa, Elasticsearch/OpenSearch dispun de moduri native de căutare hibridă (BM25F+vector) și/sau RRF/mixtură liniară.[48][49][50][51][52]
  • Șablonul RAG. Arhitectură: retrieval → fusion → rerank → context LLM cu limitare de tokeni și trasabilitatea surselor.[53]
  • Actualizarea indecșilor, deduplicarea, tokenizarea. Este important să se alinieze tokenizarea între BM25 și vectorizator; calibrarea scorurilor (normalizare/scalare) înainte de mixare.[54]

Limitări și întrebări deschise

  • Transferabilitate și multilingvism. Modelele dense (GTR/E5) îmbunătățesc transferul, dar sunt sensibile la domeniu/limbă; modelele sparse (SPLADE) sunt adesea mai robuste pe OOD.[55][56]
  • Integrarea cu LLM și halucinațiile. Regăsirea hibridă reduce omisiunile și zgomotul în contextele RAG, dar nu elimină complet halucinațiile; sunt necesari reordonatori stricți și filtrarea surselor.[57]
  • Cost și confidențialitate. Stocarea indecșilor multi-vector, compresia, criptarea și stiva on‑prem; evaluarea TCO.
  • Tendințe. HyDE/doc2query/PRF ca extindere a documentelor/interogărilor;[58][59] antrenarea mixturii (per‑query α), late‑interaction mai eficiente (PLAID/WARP), documente lungi și indecși multi-vectori.[60][61]

Tabel comparativ al metodelor

La data de 2025‑09‑10 (exemplu pe colecția BEIR trec‑covid; nDCG@10 / Recall@100):[62]

Compararea metodelor pe trec‑covid
Metodă Tip (sparse/dense/hybrid) Idee/model Schemă de fuziune Reranker nDCG@10 / R@100 Latență (rel.) Surse
BM25 sparse Potrivire exactă a termenilor (PRF/BM25) 0.595 / 0.109 foarte scăzută [63][64]
SPLADE++ (ED) sparse (learned) Extindere/ponderare sparse a termenilor 0.727 / 0.128 scăzută–medie [65][66]
Contriever (MS MARCO FT) dense Bi-encoder cu antrenare contrastivă 0.596 / 0.091 medie [67][68]
BGE‑base‑en‑v1.5 dense Embedder universal puternic 0.781 / 0.141 medie [69]
Cohere embed‑english‑v3.0 dense Model industrial de embedding textual 0.818 / 0.159 medie [70]
BM25 + dense (exemplu: BM25+BGE) hybrid Retrieval paralel + fuziunea listelor RRF (k≈60) sau mixtură ponderată opț.: MonoT5/ColBERT (variază în funcție de implementare; de obicei > cel mai bun canal individual) medie [71][72][73]

Notă: ultimul rând ilustrează schema; valorile exacte depind de alegerea embedder-ului, normalizare și parametrii de fuziune (a se vedea sursele și scripturile reproductibile Pyserini).

Bibliografie

  • 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 Information Retrieval 3(4):333–389. DOI:10.1561/1500000019.
  • Lin, J. et al. (2021). Pyserini: A Python Toolkit for Reproducible IR. SIGIR.
  • Järvelin, K., Kekäläinen, J. (2002). Cumulated Gain‑Based Evaluation of IR Techniques. Information Retrieval 6:241–256. DOI:10.1023/A:1016043826386.
  • Dean, J., Barroso, L.A. (2013). The Tail at Scale. CACM 56(2):74–80. DOI:10.1145/2408776.2408794.

Legături externe

  • Pyserini / Anserini: github.com/castorini/pyserini • github.com/castorini/anserini
  • FAISS: arXiv:1702.08734
  • Weaviate (Hybrid search): docs.weaviate.io/weaviate/search/hybrid
  • pgvector: github.com/pgvector/pgvector
  • Vespa (Hybrid search tutorial): docs.vespa.ai/en/tutorials/hybrid-search.html

Note

  1. Robertson, S., Zaragoza, H. (2009). The Probabilistic Relevance Framework: BM25 and Beyond. Foundations and Trends in Information Retrieval, 3(4), 333–389. DOI:10.1561/1500000019.
  2. Cormack, G.V., Clarke, C.L.A., Büttcher, S. (2009). Reciprocal Rank Fusion Outperforms Condorcet and Individual Rank Learning Methods. SIGIR 2009, 758–759. PDF.
  3. Bruch, S., Gai, S., Ingber, A. (2023). An Analysis of Fusion Functions for Hybrid Retrieval. ACM TOIS 42(1):1–35. DOI:10.1145/3596512 • arXiv:2210.11934.
  4. Manning, C.D., Raghavan, P., Schütze, H. (2008). Introduction to Information Retrieval. Cambridge University Press. ISBN 978‑0521865715 (см. главы о TF‑IDF, оценке и проблеме vocabulary mismatch).
  5. Izacard, G. et al. (2022). Unsupervised Dense Information Retrieval with Contrastive Learning (Contriever). TACL 10:1089–1108. arXiv:2112.09118.
  6. Wang, L. et al. (2022/2024). Text Embeddings by Weakly‑Supervised Contrastive Pre‑training (E5). arXiv:2212.03533.
  7. Robertson, S., Zaragoza, H. (2009). The Probabilistic Relevance Framework: BM25 and Beyond. DOI:10.1561/1500000019.
  8. Formal, T., Piwowarski, B., Clinchant, S. (2021). SPLADE: Sparse Lexical and Expansion Model for First Stage Ranking. arXiv:2107.05720.
  9. Formal, T. et al. (2022). Making Sparse Neural IR Models More Effective. Findings of EMNLP. arXiv:2205.04733.
  10. Formal, T. et al. (2024). SPLADE‑v3: New baselines for SPLADE. arXiv:2403.06789.
  11. Lin, J., Ma, X. (2021). A Few Brief Notes on DeepImpact, COIL, and uniCOIL. arXiv:2106.14807.
  12. Karpukhin, V. et al. (2020). Dense Passage Retrieval for Open‑Domain QA. EMNLP. arXiv:2004.04906.
  13. Xiong, L. et al. (2021). Approximate Nearest Neighbor Negative Contrastive Learning for Dense Text Retrieval (ANCE). ICLR. arXiv:2007.00808.
  14. Izacard, G. et al. (2022). TACL. arXiv:2112.09118.
  15. Ni, J. et al. (2021/2022). Large Dual Encoders Are Generalizable Retrievers (GTR). EMNLP. arXiv:2112.07899.
  16. Wang, L. et al. (2022/2024). arXiv:2212.03533.
  17. Khattab, O., Zaharia, M. (2020). ColBERT: Efficient and Effective Passage Search via Contextualized Late Interaction over BERT. SIGIR. arXiv:2004.12832.
  18. Santhanam, K. et al. (2022). ColBERTv2 & PLAID. NAACL/ArXiv. arXiv:2112.01488; arXiv:2205.09707.
  19. Scheerer, J.L. et al. (2025). WARP: An Efficient Engine for Multi‑Vector Retrieval. arXiv:2501.17788.
  20. Lin, J. et al. (2021). Pyserini: A Python Toolkit for Reproducible IR with Sparse and Dense Representations. SIGIR. PDF.
  21. Cormack, G.V., Clarke, C.L.A., Büttcher, S. (2009). SIGIR. PDF.
  22. Elastic Docs. Reciprocal Rank Fusion. (доступ 2025‑09‑10). elastic.co/docs/.../reciprocal-rank-fusion.
  23. OpenSearch Docs. Score ranker processor (RRF). (доступ 2025‑09‑10). docs.opensearch.org/.../score-ranker-processor/.
  24. Fox, E.A., Shaw, J.A. (1994). Combination of Multiple Searches. TREC‑2, NIST SP 500‑215, 243–252. PDF.
  25. Lee, J.H. (1997). Analyses of Multiple Evidence Combination. SIGIR, 267–276. DOI:10.1145/258525.258587.
  26. Hsu, D.F., Taksa, I. (2005). Comparing Rank and Score Combination Methods for Data Fusion in IR. (Tech. report). PDF.
  27. Bruch, S., Gai, S., Ingber, A. (2023). TOIS. DOI:10.1145/3596512.
  28. Hsu, D.F., Taksa, I. (2005). см. выше.
  29. Bruch, S., Gai, S., Ingber, A. (2023). TOIS. DOI:10.1145/3596512.
  30. Nogueira, R., Cho, K. (2019). Passage Re‑ranking with BERT. arXiv:1901.04085.
  31. Nogueira, R., Jiang, Z., Lin, J. (2020). Document Ranking with a Pretrained Sequence‑to‑Sequence Model (MonoT5). Findings of EMNLP. arXiv:2003.06713.
  32. Santhanam, K. et al. (2022). arXiv:2205.09707.
  33. Scheerer, J.L. et al. (2025). arXiv:2501.17788.
  34. Dean, J., Barroso, L.A. (2013). The Tail at Scale. CACM 56(2):74–80. DOI:10.1145/2408776.2408794.
  35. Thakur, N. et al. (2021). BEIR: A Heterogeneous Benchmark for Zero‑shot Evaluation of IR Models. NeurIPS Datasets & Benchmarks. arXiv:2104.08663.
  36. Craswell, N. et al. (2020). Overview of the TREC 2019 Deep Learning Track. arXiv:2003.07820.
  37. Craswell, N. et al. (2021). Overview of the TREC 2020 Deep Learning Track. arXiv:2102.07662.
  38. Bajaj, P. et al. (2016). MS MARCO: A Human Generated MAchine Reading COmprehension Dataset. arXiv:1611.09268.
  39. Järvelin, K., Kekäläinen, J. (2002). Cumulated Gain‑Based Evaluation of IR Techniques. Information Retrieval 6:241–256. DOI:10.1023/A:1016043826386.
  40. Dean, J., Barroso, L.A. (2013). CACM. DOI:10.1145/2408776.2408794.
  41. Bruch, S. et al. (2023). DOI:10.1145/3596512.
  42. Ni, J. et al. (2021/2022). arXiv:2112.07899.
  43. Johnson, J., Douze, M., Jégou, H. (2017). Billion‑scale Similarity Search with GPUs (FAISS). arXiv:1702.08734.
  44. Malkov, Y., Yashunin, D. (2020). HNSW. IEEE TPAMI 42(4):824–836. DOI:10.1109/TPAMI.2018.2889473.
  45. Guo, R. et al. (2020). ScaNN: Efficient Vector Similarity Search at Scale. arXiv:1908.10396.
  46. Yang, P., Fang, H., Lin, J. (2018). Anserini: Reproducible IR Research with Lucene. JDIQ 10(4):1–20. DOI:10.1145/3239571.
  47. Lin, J. et al. (2021). SIGIR. PDF.
  48. Qdrant Docs. Hybrid queries (RRF, DBSF). (доступ 2025‑09‑10). qdrant.tech/.../hybrid-queries/.
  49. Weaviate Docs. Hybrid search. (доступ 2025‑09‑10). docs.weaviate.io/weaviate/search/hybrid.
  50. pgvector GitHub. (доступ 2025‑09‑10). github.com/pgvector/pgvector.
  51. Vespa Docs. Hybrid Text Search Tutorial. (доступ 2025‑09‑10). docs.vespa.ai/.../hybrid-search.html.
  52. Elastic Docs. Reciprocal Rank Fusion. (доступ 2025‑09‑10). elastic.co/docs/.../rrf.
  53. Lewis, P. et al. (2020). Retrieval‑Augmented Generation for Knowledge‑Intensive NLP Tasks. NeurIPS. arXiv:2005.11401.
  54. Hsu, D.F., Taksa, I. (2005). см. выше.
  55. Ni, J. et al. (2021/2022). arXiv:2112.07899.
  56. Formal, T. et al. (2021, 2022, 2024). arXiv:2107.05720; 2205.04733; 2403.06789.
  57. Lewis, P. et al. (2020). arXiv:2005.11401.
  58. Gao, L. et al. (2023). Precise Zero‑Shot Dense Retrieval without Relevance Labels (HyDE). ACL. arXiv:2212.10496.
  59. Nogueira, R. et al. (2019). Document Expansion by Query Prediction. arXiv:1904.08375; docTTTTTquery. PDF.
  60. Santhanam, K. et al. (2022). arXiv:2205.09707.
  61. Scheerer, J.L. et al. (2025). arXiv:2501.17788.
  62. Pyserini BEIR Regressions (доступ 2025‑09‑10): результаты по trec‑covid для BM25/SPLADE/Contriever/BGE/Cohere. castorini.github.io/pyserini/2cr/beir.html.
  63. Robertson, S., Zaragoza, H. (2009). DOI:10.1561/1500000019.
  64. Pyserini BEIR. См. ссылку выше.
  65. Formal, T. et al. (2021, 2022). arXiv:2107.05720; 2205.04733.
  66. Pyserini BEIR.
  67. Izacard, G. et al. (2022). arXiv:2112.09118.
  68. Pyserini BEIR.
  69. Pyserini BEIR.
  70. Pyserini BEIR.
  71. Cormack et al. (2009). SIGIR. RRF.
  72. Bruch et al. (2023). TOIS.
  73. Elastic/OpenSearch RRF Docs.