BM25
1.0.0
BM25 ランキング関数の Python 実装。
プログラムには、パーサー、クエリ プロセッサ、ランキング関数、データ構造の 4 つの主要モジュールがあります。パーサー モジュールはクエリ ファイルとコーパス ファイルを解析して、それぞれリストと辞書を生成します。クエリ プロセッサは、クエリ リスト内の各クエリを取得し、用語に基づいてドキュメントにスコアを付けます。ランキング関数は、BM25 ランキング関数の実装です。計算には自然対数が使用されます。最後に、データ構造モジュールには、転置インデックスと文書長テーブルが含まれています。転置インデックスは、辞書を使用して各単語を辞書にマッピングします。この 2 次辞書は、各文書 ID を外部辞書内の単語頻度にマップします。文書長テーブルには各文書の長さが含まれており、コレクションの平均文書長を計算する機能もあります。
実行するには、src フォルダー内の$ python main.py
実行するだけです。