TF-IDFってなに?(logが出てきて訳分からん。。。)
背景
「TF-IDF」は文章中の単語の重要度を測るのに使われる。
ex) 自然言語処理・レコメンド・検索などで活躍します
今回はYahoo!,Googleなどの検索エンジンであるワードを入力した時に、どのようなページを上位に載せるべきか、ということを考えながら進めると理解が容易くなります。
どのようなサイトを上位に載せるべきでしょうか?
例えば、
- 「自然言語処理」「とは」の2単語が多く含まれているサイトを上位に出力する
とするのがシンプルな考えだと思います。
しかしこのままでは、いくつか問題点があります。
① 長文のサイトが圧倒的に有利になる
② 「とは」のみが多すぎるサイトだと意味を為さない
このような問題を解決できる単語の重要度の指標として、「TF-IDF」があります。
TFの定義
\begin{align}
TF(t,d) &= \frac{単語tの登場回数}{文章dの単語数} \\
&= \frac{\# \ \ of \ \ t \ \ in \ \ d}{\#d}
\end{align}
\begin{align}
TF(t,d) &= \frac{単語tの登場回数}{文章dの単語数} \\
&= \frac{\# \ \ of \ \ t \ \ in \ \ d}{\#d}
\end{align}
「TF」は"文章dの中の単語tの割合”を意味するため、
先程述べた、"①長文のサイトが圧倒的に有利になる"の問題を解消できる!
IDFの定義
\begin{align}
IDF(t) &= log \frac{全文章数}{単語tを含む文章数} \\
&= \frac{\#D}{\# \{d∈D | t∈d\}}
\end{align}
\begin{align}
IDF(t) &= log \frac{全文章数}{単語tを含む文章数} \\
&= \frac{\#D}{\# \{d∈D | t∈d\}}
\end{align}
「IDF」は"単語tを含む文章の割合、確率の逆数"を表す。
先程述べた、"②「とは」のみが多すぎるサイトだと意味を為さない"の問題を解消できる!
logを用いる理由
\begin{align}
p(t) &= \frac{単語tを含む文章数}{全文章数}とすると、 \\
\frac{1}{p(t)}&= \frac{全文章数}{単語tを含む文章数} は単語tのレア度を表していることが分かる。
\end{align}
突然だが、「情報量」の定義をしておく。
「情報量」…あるできごと(事象)が起きた際、それがどれほど起こりにくいかを表す尺度。ありふれたできごとが起こったことを知ってもそれはたいした「情報」にはならないが、逆に珍しいできごとが起これば、それはより多くの「情報」を含んでいると考えられる。
【具体例】
ルーレットには1~40までの番号が振られています。
そして、あなたは「ルーレットが出た目」を当てればお金がもらえます。
A:1~20のうちのどれかの目が出るよ
B:1~10のうちのどれかの目が出るよ
Q.ルーレットを当てるにはAとBのどちらの手がかりを得たいですか?
【答え】
Aが発生する確率は2分の1。
Bが発生する確率は4分の1。
そして、Bのほうが情報量が多い。
これを一言でいうと「発生する確率が低いこと(珍しいこと)が分かった時のほうが、情報量が多い」ということになります。
以上より、
確率p(t)が小さいほど、$\frac{1}{p(t)}$ が大きくなる。
確率p(t)が大きいほど、$\frac{1}{p(t)}$が小さくなる。
これは情報量の意味と等しいため、より定量的に扱いやすい「情報量」を採用するべく、 logを用いている。
\begin{align}
log\frac{1}{p(t)}は”情報量”を表す
\end{align}
具体例
- 文章1:"犬","は","可愛い"
- 文章2:"猫", "は","小さい"
- 文章3:"猫", "は", "可愛い"
「は」は特徴的なワードではないため、TF-IDFの値が他のワードに比べて低くなっていることが分かる。(文章1では、「犬」という特徴的なワードが値が高くなっていることが分かる。)
Author And Source
この問題について(TF-IDFってなに?(logが出てきて訳分からん。。。)), 我々は、より多くの情報をここで見つけました https://qiita.com/tomoxxx/items/9120cb9734effae5d05a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .