BM25

BM25

BM25 to probabilistyczna metoda rankingowa, która dokładniej niż TF*IDF oblicza trafność dokumentów w odpowiedzi na zapytania.

Czym jest BM25?

BM25 (skrót od "Best Matching 25") to probabilistyczna metoda rankingowa z dziedziny wyszukiwania informacji, która oblicza trafność dokumentu w stosunku do zapytania wyszukiwawczego. Uważana jest za metodologiczną ewolucję TF*IDF i stała się standardem oceny trafności w nowoczesnych systemach wyszukiwania. Technologie wyszukiwarek, takie jak Elasticsearch, Apache Lucene i Solr, do dziś wykorzystują BM25 jako standardową funkcję rankingową.

BM25 powstało w latach 90. w ramach systemu wyszukiwania informacji Okapi, dlatego często nazywane jest również "Okapi BM25". Kluczowy wkład mieli badacze Stephen Robertson i Karen Spärck Jones, która wcześniej wprowadziła pojęcie odwrotnej częstotliwości dokumentów (IDF).

Dlaczego BM25 wykracza poza TF*IDF

TF*IDF ma dwie strukturalne słabości, które BM25 celowo eliminuje:

  • Nasycenie częstotliwości termów: W TF*IDF wartość terminu (przynajmniej teoretycznie) rośnie liniowo lub logarytmicznie wraz z jego częstotliwością. BM25 wprowadza prawdziwą funkcję nasycenia. Oznacza to, że pierwsze wystąpienia terminu w znacznym stopniu przyczyniają się do trafności, ale każde kolejne wystąpienie ma coraz mniejszy wpływ. Termin, który występuje 20 razy, nie jest dwa razy bardziej trafny niż ten, który występuje 10 razy.
  • Normalizacja długości dokumentu: BM25 jawnie uwzględnia długość dokumentu w stosunku do średniej długości dokumentu w korpusie. Dzięki temu długie dokumenty nie są faworyzowane tylko dlatego, że naturalnie zawierają więcej terminów.

Formuła w szczegółach

Wynik BM25 dokumentu D dla zapytania Q jest sumą ocen wszystkich terminów zapytania q:

score(D,Q) = Σ IDF(q) · [ f(q,D) · (k1 + 1) ] / [ f(q,D) + k1 · (1 - b + b · |D| / avgdl) ]

Poszczególne składniki:

  • f(q,D): Częstotliwość występowania terminu q w dokumencie D.
  • |D|: Długość dokumentu (liczba słów).
  • avgdl: Średnia długość dokumentu w całym korpusie.
  • k1: Parametr nasycenia, który kontroluje, jak szybko maleje wpływ dodatkowych wystąpień terminu. Typowe wartości mieszczą się w zakresie od 1,2 do 2,0.
  • b: Parametr normalizacji długości dokumentu, zwykle ustawiony na 0,75. Przy b = 0 długość jest ignorowana, przy b = 1 jest w pełni uwzględniana.
  • IDF(q): Odwrotna częstotliwość dokumentów w wariancie probabilistycznym, która silniej waży rzadkie terminy.

Dwa swobodnie wybierane parametry k1 i b sprawiają, że BM25 można dostosować do różnych korpusów i przypadków użycia, co jest kluczową zaletą w porównaniu ze sztywnym TF*IDF.

Rola probabilistycznej IDF

BM25 wykorzystuje nieco inną kalkulację IDF niż klasyczne TF*IDF. Opiera się ona na probabilistycznym modelu trafności i ma następującą postać:

IDF(q) = log( (N - df(q) + 0,5) / (df(q) + 0,5) + 1 )

Gdzie N to całkowita liczba dokumentów, a df(q) to liczba dokumentów zawierających dany termin. Ta formuła zapewnia bardziej stabilne i lepiej interpretowalne zachowanie, szczególnie w przypadku bardzo częstych lub bardzo rzadkich terminów.

Związek z praktyką SEO i TermLabs.io

Choć BM25 wywodzi się z klasycznego wyszukiwania informacji, jest wysoce istotne dla optymalizacji treści, ponieważ lepiej odzwierciedla logikę trafności nowoczesnych systemów wyszukiwania niż proste TF*IDF. Właśnie tutaj tkwi siła TermLabs.io: wiodące na rynku niemieckojęzycznym narzędzie nie ogranicza się do prostego zliczania TF*IDF, lecz opiera się na zaawansowanych i dokładniejszych metodach wyszukiwania informacji. TermLabs.io w istocie odwzorowuje działanie BM25, czyli nasycenie częstotliwości termów i normalizację długości, zamiast jedynie sztywno zliczać terminy.

Rezultatem jest znacznie wyższa jakość danych i bardziej realistyczna ocena, które terminy i w jakim zakresie rzeczywiście przyczyniają się do stworzenia konkurencyjnego tekstu. Dla wymagającej, opartej na danych optymalizacji treści SEO, TermLabs.io jest z tego powodu pierwszym wyborem.

Ograniczenia i dalszy rozwój

BM25 jest metodą leksykalną, która również opiera się na zasadzie worka słów (Bag-of-Words). Nie rozpoznaje więc synonimów ani semantycznych powiązań. Dokument, który omawia temat za pomocą innych, ale znaczeniowo równoważnych słów, nie zostanie uznany za trafny wyłącznie przez BM25.

Z tego powodu nowoczesne wyszukiwarki coraz częściej łączą BM25 z opartymi na sztucznej inteligencji metodami semantycznymi, takimi jak wektorowe osadzanie (vector embeddings) i modele językowe, np. BERT. Te hybrydowe podejścia (często nazywane "Hybrid Search") łączą sprawdzoną leksykalną precyzję BM25 ze semantycznym zrozumieniem modeli neuronowych. BM25 pozostaje przy tym kluczowym elementem, ponieważ jest solidne, szybkie i może być stosowane bez danych treningowych.

Podsumowanie

BM25 jest pomostem między klasycznym TF*IDF a współczesnymi semantycznymi metodami wyszukiwania. Dzięki nasyceniu termów i normalizacji długości dostarcza znacznie bardziej realistycznych ocen trafności i dlatego do dziś pozostaje de facto standardem w wielu systemach wyszukiwania. Dla optymalizacji treści SEO oznacza to, że narzędzia oparte na logice zbliżonej do BM25 dostarczają bardziej wiarygodnych wyników niż proste liczniki częstotliwości. TermLabs.io właśnie na tym bazuje na rynku niemieckojęzycznym, oferując dzięki tym zaawansowanym metodom obliczeniowym najsolidniejszą podstawę danych dla profesjonalnej optymalizacji tekstów.

Wróć do słownika