Sobes.tech
Middle — Senior

Mi az a cross-encoder, és miben különbözik a bi-encoder-től?

sobes.tech MI

Válasz az MI-től

Cross-encoder és bi-encoder olyan architektúrák, amelyek bemeneti párok feldolgozására szolgálnak, és gyakran alkalmazzák őket szövegkeresési és szövegillesztési feladatokban.

Bi-encoder:

  • A pár minden elemét (például lekérdezés és dokumentum) külön-külön fix méretű vektorrá kódolják.
  • Ezután egy hasonlósági mérőszámot (például koszinuszi távolságot) számítanak ki a két vektor között.
  • Gyors indexelést és keresést tesz lehetővé, mivel a vektorokat előre kiszámíthatják és tárolhatják.
  • Azonban nem veszi figyelembe a páron belüli elemek közötti kölcsönhatásokat a kódolás során.

Cross-encoder:

  • A bemeneti adatokat összefűzik, és együtt adják át a modellnek.
  • A modell azonnal figyelembe veszi az elemek közötti kölcsönhatásokat (például a kérdés és a dokumentum szavait), ami javítja a relevancia értékelésének minőségét.
  • Számításilag költségesebb, mivel minden pár esetében újra kell futtatni a modellt.

Összegzés: a bi-encoder gyorsabb és skálázhatóbb nagy mennyiségű dokumentum keresésére, míg a cross-encoder pontosabb, de lassabb, és kisebb számú jelölt újraértékelésére használják.