web-dev-qa-db-ja.com

用語頻度の重みとIDF、逆ドキュメント頻度を計算するときにログが使用されるのはなぜですか?

IDFの式は、N/df tだけではなく、log(N/df t)です。

ここで、N =コレクション内のドキュメントの総数、df t =期間tのドキュメント頻度。

ログは、IDFの影響を「弱める」ために使用されていると言われています。これは何を意味するのでしょうか?

また、なぜ次のように用語頻度に重み付けログ頻度を使用するのですか?

enter image description here

33
stevetronix

デバシスの答えは正しいです。なぜ彼が反対票を投じたのかはわかりません。

直感は次のとおりです。doc1の単語「computer」の用語頻度が10で、doc2の単語頻度が20である場合、doc1よりもdoc2の方がWord「コンピューター」に関連していると言えます。

ただし、同じ単語「コンピューター」の用語頻度がdoc1が100万、doc2が200万の場合、この時点で、用語の頻度が非常に高いため、関連性の点でそれほど大きな違いはありません。 'コンピューター'。

Debasisの回答と同様に、ログを追加することは、頻度の高い用語の重要性を弱めることです。ログベース2を使用すると、100万のカウントが19.9に減ります。

また、tfが1に等しい場合、log(1)はゼロであるため、log(tf)に1を追加します。 1を追加することにより、tf = 0とtf = 1を区別します。

お役に立てれば!

38
suthee

文書内の用語の出現が多くなるほど関連性が高くなるとは限りません...文書の関連性に対する用語の頻度の寄与は本質的に準線形関数です...したがって、この準線形を近似する対数関数...

同じことがidfにも当てはまります...線形idf関数は、高いidf用語(スペルミスのためにまれな用語である可能性があります)でドキュメントスコアを押し上げすぎている可能性があります...サブ線形関数のパフォーマンスははるかに優れています...

21
Debasis