Sobes.tech
Middle — Senior

Wanneer is een cross-encoder geschikt en wanneer een bi-encoder in zoekopdrachten?

sobes.tech AI

Antwoord van AI

Cross-encoder en bi-encoder zijn twee benaderingen om de relevantie van een tekstpaar (bijvoorbeeld een query en een document) te berekenen in zoektaken.

Cross-encoder combineert twee teksten en voert ze gelijktijdig door een model, waardoor interacties tussen de woorden van beide teksten kunnen worden meegenomen. Dit levert doorgaans nauwkeurigere relevantiebepalingen op, maar vereist voor elk paar afzonderlijke berekeningen, wat tijd- en resource-intensief is.

Bi-encoder encodeert elke tekst afzonderlijk in een vaste vector, waarna de relevantie wordt berekend, bijvoorbeeld als de cosinusgelijkenis tussen de vectors. Dit is veel sneller, omdat alle documenten vooraf kunnen worden gecodeerd en snel kunnen worden vergeleken met de query.

Wanneer gebruiken:

  • Cross-encoder is geschikt wanneer maximale nauwkeurigheid belangrijk is en het mogelijk is om de relevantie voor een beperkt aantal paren te berekenen (bijvoorbeeld top-N kandidaten rangschikken).
  • Bi-encoder is handig voor schaalbare zoekopdrachten over een groot aantal documenten, waar hoge snelheid vereist is en de nauwkeurigheid iets lager kan zijn.

Vaak wordt een hybride aanpak gebruikt: eerst een bi-encoder voor snelle selectie van kandidaten, gevolgd door een cross-encoder voor nauwkeurige rangschikking.