HyperAIHyperAI
vor 11 Tagen

BM25S: Lexikalische Suche um Größenordnungen schneller durch ehrgeizige spärliche Bewertung

Xing Han Lù
BM25S: Lexikalische Suche um Größenordnungen schneller durch ehrgeizige spärliche Bewertung
Abstract

Wir stellen BM25S vor, eine effiziente Python-basierte Implementierung von BM25, die ausschließlich auf Numpy und Scipy basiert. BM25S erreicht bis zu einer 500-fachen Beschleunigung im Vergleich zum beliebtesten Python-basierten Framework, indem sie BM25-Scores bereits während des Indexierens vorab berechnet und in spärlichen Matrizen speichert. Zudem erzielt BM25S erhebliche Geschwindigkeitsvorteile gegenüber hochoptimierten Java-basierten Implementierungen, die in populären kommerziellen Produkten eingesetzt werden. Schließlich repliziert BM25S die exakte Implementierung von fünf BM25-Varianten basierend auf Kamphuis et al. (2020), indem es die vorab berechneten Scores auf nicht-sparse Varianten mittels einer neuartigen Score-Shifting-Methode erweitert. Der Quellcode ist unter https://github.com/xhluca/bm25s verfügbar.

BM25S: Lexikalische Suche um Größenordnungen schneller durch ehrgeizige spärliche Bewertung | Neueste Forschungsarbeiten | HyperAI