Tf-idf
文書中に含まれる単語の重要度を評価する手法の一つ
(使っている例を見た)
Tf
term frequency 単語の出現頻度
ifd
inverse document frequency 逆文書頻度
の2つの頻度に基づいて計算される
iは単語のインデックス
jは文書のインデックス
$ tfidf_{i, j} = tf_{i, j} \cdot idf_{i}
$ \mathrm{tf}_{\mathrm{i}, \mathrm{j}}=\frac{n_{i, j}}{\sum_{k} n_{k, j}}
$ \mathrm{idf}_{\mathrm{i}}=\log \frac{|D|}{\left|\left\{d: d \ni t_{i}\right\}\right|}
ここで
n_ijは文書d_jにおける単語t_iの出現回数
$ \sum_{k} n_{kj}は文書d_jにおけるすべての単語数の出現回数の和
これはn_ijの定義を考えれば分かる
つまりn_k,jでkを動かすということは、単語の方を変えて、同じ文書d_j上での出現回数を意味する
tf_ijは、一つの文書に対して、特定の単語がどの程度出現しているかを数式にしただけ
すごく簡単miyamonz.icon
|D|は総文書数
$ |\{d : d \ni t_i\}|は単語t_iを含む文書数
もしも全文書にt_iがあれば、分数は1となり、logの値はゼロ
一部の文書にしかない場合、分母が小さくなる
それにあわせて指数関数を通しているだけ
これの掛け算なので、
一般的ではあるものの、特定の領域にしか現れない単語を測るための指標
idfは一般語フィルタとして働く
多くの文書に出現する語(一般的な言葉)は重要度が下がる
特定の文書にしか出ない単語の重要度を挙げる