逆ドキュメント頻度で1を追加する理由


9

私の教科書はidfをとしてリストしてい。log(1+Nnt)

  • N:ドキュメントの数
  • nt:用語を含むドキュメントの数t

ウィキペディアは、この公式を実際の平滑化バージョンとしてリストしてい。それは私が理解しているものです:からで、直感的に思えます。 しかし、はからこれは奇妙に見えます... 言語モデリングからの平滑化については少し知っていますが、分子に何かを追加します確率質量について心配しているので、分母も同様です。しかし、追加するだけでは意味がありません。ここで何を達成しようとしていますか?log(Nnt)log(NN)=0
log(1+Nnt)log(1+1)
1



正しい平滑化は
log(N(1+nt))
ashishpatel.co.in 2018年

回答:


7

tf-idfが議論されていることを他の場所で指摘するように、tf-idfまたは(質問のように)idfを計算するための普遍的に合意された単一の式はありません。の目的は、2つの目的の1つを達成することです:a)ゼロによる除算を回避します。厳密に「バッグオブワード」アプローチでは発生しませんが、ドキュメントに用語が表示されない場合、またはb)下限を設定して、すべてのドキュメントに出現したというだけの理由で項にゼロの重みが与えられるのを回避します。+1

あなたが教科書について言及しているにもかかわらず、私は実際には公式を見たことがありません。しかし、目的は、正しく解釈すると、ゼロではなく下限を設定することです。私は1 +を見たことがあります。これは下限を1に設定します。最も一般的に使用される計算はようです。 D、Prabhakar Raghavan、およびHinrichSchütze(2008)Introduction to Information Retrieval、Cambridge University Press、p118またはWikipedia(同様のソースに基づく)。log(1+Nnt)log(2)log(Nnt)log(Nnt)

クエリに直接関係はありませんが、上限はではなく、ここで、は、平滑化の公式によって異なります。これは、0または1のドキュメントに出現する用語で発生します(ここでも、を使用して平滑化して、ドキュメントの頻度が0の用語に対して定義するかどうかによって異なります。そうでない場合、1つのドキュメントに出現する用語に対して最大値が発生します)。IDFとき及び。k+log(N/s)k,s0,1s1+nt=1N

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.