BM25とは
BM25(Best Matching 25)とは、情報検索において文書のランキングに使用される確率的な関連度スコアリング関数です。TF-IDFの発展形として1994年にStephen Robertsonらが提案し、Elasticsearchなどの検索エンジンに標準的に実装されている、最も実用的な検索アルゴリズムの一つです。
BM25の計算
BM25は各クエリ単語のTF(単語頻度)とIDF(逆文書頻度)を組み合わせてスコアを算出します。TF-IDFとの違いは、TFに飽和関数を適用すること(単語頻度が高くてもスコアが際限なく増加しない)と、文書の長さによる正規化を行うことです。パラメータk1は飽和の速度を、bは文書長正規化の度合いを制御します。
BM25の利点
BM25は計算が高速で、大規模な文書集合にも効率的に適用できます。長い文書に対する過剰な重み付けを避ける正規化機能があり、パラメータ調整も直感的です。深層学習ベースの手法が登場しても、そのシンプルさと効率性から依然として広く使われています。
BM25とニューラル検索の融合
現代の情報検索システムでは、BM25によるスパース検索と、BERTなどのモデルによる密ベクトル検索を組み合わせたハイブリッド検索が注目されています。BM25で候補を絞り込み、ニューラルモデルでリランキングする手法が効果的です。