SSNB
"Text Classification from Labeled and Unlabeled Documents using EM", JMLR, 2000
ナイーブベイズを半教師ありに拡張した手法。半教師あり学習について知らない人は別の所の説明を見てね。
ナイーブベイズがナイーブかつベイズと言われるゆえんがこの式変形。文書がクラス(ラベル)に属する確率は以下のように書ける。
一つ目の変形でベイズの定理を使い、二つ目の変形で文書に含まれる単語は全て(cについて条件付き)独立に生成されるというナイーブな仮定を置いている。
ここでナイーブベイズで求めたいパラメータはととなる。普通の教師ありのナイーブベイズだと簡単に求まるんだけど半教師ありだとそうはいかない。
対数尤度
いま、手元に文書データ集合があるとし、それはラベル付き文書集合とラベル無し文書集合に分けられるとする()。
普通の教師ありナイーブベイズでは、学習にのみを使うが、半教師ありのナイーブベイズではとの両方を学習に使う。
対数尤度は以下のように書ける
ただし、観測変数は文書のラベルを表し、潜在変数は文書の(観測されていない)ラベルを表す。第二項目はラベルが観測されていないため、全てのについての和をとっている。
ここで、に関する対数尤度(第二項)は、対数の中に和があるので最大化は難しいように見える。
一方、に関する対数尤度(第一項)は、対数の中に和がないため、最大化が簡単に見える。
つまり、不完全データを含む対数尤度をそのまま最大化するのは難しそうだが、完全データ対数尤度の最大化は簡単そうということになる。
ということでEMアルゴリズムが登場する。
E-step
Eステップでは潜在変数の事後分布を計算する。
これはベイズの定理により簡単に求まった。
ここで、超重要ポイントが1点。ラベルが観測されている文書に対してはと固定する。ただしはの時、それ以外でを取る関数である。
こうすることで、ラベルが観測されている文書も観測されていない文書も同様に扱えるようになる。
M-step
Mステップではと固定し、Q関数を最大にするパラメータとを求める。
ある文書に注目すると、Q関数は以下のように書ける
ただし、は文書に単語が含まれる回数を示す。文書データ集合全体に注目すると、Q関数は
となり、これを最大化するパラメータを求めることになる。
についてQ関数を最大化
という制約があるため、ラグランジュ定数を用いて
を最大化する。
をで微分してとおくと
となる。について整理すると、
となる。についての和を取ると
となる。ただし、は文書の数を表す。について整理するととなるため
と求まる。
についてQ関数を最大化
という制約があるため、ラグランジュ定数を用いて
を最大化する。
をで微分してと置くと
となる。について整理すると
となる。について和を取ると
となる。について整理すると
となるため
と求まる。
まとめ
以上より、EMアルゴリズムを用いたSSNBのパラメータ推定の手続きは
- 適当な値で、を初期化する
- ラベル観測されていない文書について、を計算する
- ラベル観測されている文書について、と固定する
- を計算する
- を計算する
- 収束するまで2-4を繰り返す
となる。