SCDVについて学んだ
文章を数学的に扱いやすい形に変える方法の一つであるSCDVについて学んだ。
SCDVとは
ドキュメントを数学的に扱うことのできるような形に変換する方法のひとつで、Sparse Composite Document Vectorのこと。 他の方法に比べて変換後の形が小さくて扱いやすかったり、変換後の値を文章分類などに扱った際に精度が高いといった利点がある。
アルゴリズム
3つのパートに別れる。
Word Vector Clustering
まず、あつめてきたドキュメントから、単語を抜き出して、ボキャブラリセットを作る。 このとき、ボキャブラリセットには~の単語が含まれる。
これらについて、SGNS]によるWord2Vecを行い、各単語~についての単語ベクトルを求める。ここで、ベクトルの長さをとする。
さらに、これらをガウス混合モデルを用いて、K個のクラスタに分類する。 Kをいくつにするかは任意で、SCDVのパラメータになっている。
分類した各クラスタについて、各単語モデルがクラスタに所属する確率を、全ての単語・全てのクラスタについて計算する。
Document Topic-Vector Formation
単語ベクトル~に、各単語モデルがクラスタに所属する確率を掛け合わせたものを、単語-クラスタベクトルと呼ぶ。
単語-クラスタベクトルを、すべてのクラスタ(k=1...K)について並べた行列を考える。
]
これに、という値(ドキュメント内部で単語がどれだけ珍しいかを表す数値)を掛け合わせたものを単語-トピックモデルと呼ぶ。
]× IFD(w_i)
なお、はの行列である(長さのベクトルを個横に並べて、実数を掛け算しただけなので)。
このを、特定のドキュメントに出てくる単語の分だけ足し合わせた値を文章ベクトルと呼ぶ
Sparse Document Vecotrs
得られたをスパース(ほとんどの要素が0で、残り数少ない要素のみが値を持つ状態)にするために、閾値を下回る要素については0に値を変換する。
こうして得られたものを、SCDVによる文章ベクトルとよぶ。
さいごに
このベクトルを用いて、文章分類などを行うと、他の方法に比べて精度がよい。