言語処理のための機械学習入門第1章まとめ
前から自然言語処理を勉強したいなと思っていたので今回この本を読んでまとめてみます。
最適化問題
最適化問題とはある制約の下で関数を最適化する変数値とその関数値を求める問題である。
例:次の最大化問題を解け(ただしaは定数)
max.
s.t.
この例題では
一般的に最適化問題は次のように書かれる :
max.
s.t.
「s.t.」いかに制約を記述するのが一般的である。
制約を満たす解のことを実行可能解という。また実行可能解の集合を実行可能領域という。
上の例題では
凸計画問題
これ以降の部分では最適化問題の中の凸計画問題と呼ばれる問題を取り扱う。 凸計画問題とは大雑把に言うと目的関数の値が改善する方向に進んで行けば解にたどり着く、それゆえ凸計画問題は比較的解き易い問題であり、その解法はある程度確立している。 つまり解きたい問題を凸計画問題で表すことに成功すれば問題解決に向けて大躍進したことになる
凸集合と凸関数
凸集合とは直感的に言えばへこみのない集合である。 数式による厳密な定義と図はめんどうなので割愛するが、もう少し厳密にいうと、集合内の任意の点を結ぶ線分が集合自身からはみ出ないことが凸集合である条件となる。
さらに、平面だけでなく、半空間も凸集合となる。
次に関数に対して凸性という概念を導入する。
こちらも大雑把にいうと、上に凸な関数とは、
もう少し厳密に言うとある関数が上に凸であるとはこの関数を表すグラフ上の任意の点を結ぶ線分が常にグラフの下側もしくは同じ高さにあることを言う。
凸計画問題
ある最適化問題が凸計画問題であるとはその目的関数が凸関数であってかつ実行可能領域が凸集合であることを言う。 例えば、
max.
s.t.
は凸計画問題である。
AとBが凸集合でもAまたはBは凸集合とは限らないが、Aでの最適解、Bでの最適解をそれぞれ求め、それらの良いほうを選べば、AまたはBでの最適解が求められる。
まず、変数のとりうる範囲について特に制約がない場合は非常に素直な問題であり、微分して0になる点を求めれば良い。
閉形式で解が求まらない場合は、再急勾配法やニュートン法といった、なんらかの初期値を与えて徐々に良い解へと更新していくような解法が用いられる。このような解法を数値解法と呼ぶ。
等式制約付凸計画問題
次に等式制約がある場合を考える。目的関数は
偏微分が0になる点がたまたま制約を満たしていればよいが、一般的にそれは期待できない。そのため、基本的な戦略として制約を明示的に考えなくてもよい形にもっていく。
ここで、変数
この関数をラグランジュ関数と呼び、この変数をラグランジュ乗数と呼ぶ。この関数
という連立方程式を解くことになる。このようにして最適点を求める手法を、ラグランジュの未定乗数法と呼ぶ。
不等式制約付き凸計画問題
以下のように制約が不等式で与えられる場合を考える。
max.
s.t.
この場合、ラグランジュ関数は、
であり、等式制約の場合と同じだが、
ラグランジュ関数
鞍点とは、
凸計画問題においては鞍点
鞍点を求めるためには、まず
最大化と最小化が入れ替わることに注意。
もともとの問題を主問題と呼ぶのに対して、
なぜわざわざに関する最小化問題に書き換えるかというと、双対問題の制約は0のみであり、扱いやすいからである。
確率
基本的なことなのでまとめはスルーします。
内容的には確率変数、期待値、分散、条件付き確率、独立性とか。
代表的な離散確率分布
ベルヌーイ分布
確率
ベルヌーイ分布に従う確率変数
と表すことができる。ここで
ベルヌーイ分布に従う確率変数を要素とするような確率変数ベクトルを作ることにより、多変数ベルヌーイ分布を考えることもできる。
二項分布
ベルヌーイ分布と同様に、確率
ベルヌーイ分布と二項分布の場合は”Yes”と”No”の2単語だったが、もっと多くの単語がある状況は多項分布で考えることができる。
連続確率変数
連続確率分布の例
正規分布
おそらく最も有名な連続確率分布
ディリクレ分布
言語処理の論文で意外とよく登場するのがディリクレ分布である。
ディリクレ分布は
なぜディリクレ分布が重要かというと、ディリクレ分布の
パラメータ推定
データが与えられたときに、このデータがある種類の確率分布から生成されたことを知っていたとする。(例えばポアソン分布)
このような状況において、データからパラメータの値を推定することを考える。(例えばポアソン分布のパラメータ
i.i.dと尤度
データが独立に同一な確率分布に従っている場合、確率変数
$$
P(D)=\prod_{x^{(i)}}p(x^{(i)})
$$
とかける。このデータの生成確率は
最尤推定
データ
最尤推定とは、対数尤度が最も高くなるようにパラメータを決定する方法である。
対数尤度が最も高くなるパラメータは、パラメータに関する偏微分が0になる点を求めれば良い。
パラメータに制約がついている場合には制約付き最適化問題としてラグランジュ未定乗数法を使って解く。
最大事後確率推定
つぎに、パラメータがどんな値を取りやすいかが事前にわかっている場合を考える。
具体的にいうと、パラメータ
これをパラメータの事前確認分布と呼ぶ。一方、データ
最尤推定では尤度が最も高くなるようにパラメータを決定したが、最大事後確率推定(MAP推定)では事後確率
事後確率の最大化は次のように表せる。
を最大化するようなパラメータ
最尤推定の場合と同様に、積の形は扱いにくいので、一般にはこの値の対数をとった値
を最大化する。
情報理論
エントロピー
エントロピーは乱雑さを測るための尺度であるといわれる。ここで乱雑であるとは、確率変数がどの値をとるかをいい当てにくい状態をいう。
一般に、離散確率分布
カルバック・ライブラー・ダイバージェンス
カルバック・ライブラー・ダイバージェンス(KLダイバージェンス)は言語処理にもよく登場する。
KLダイバージェンスは2つの確率分布に対して、それらの間の異なり具合を測るものである。
2つの確率分布
言語処理では、例えば単語間の意味的な遠さを測るためにKLダイバージェンスを用いる。
ジェンセン・シャノン・ダイバージェンス
KL ダイバージェンスと同じような情報理論をもとにして確率分布間の異なり具合を測る尺度としてジェンセン・シャノン・ダイバージェンス(JSダイバージェンス)というものもある。
JSダイバージェンスは次のように定義される。
ただし、
KLダイバージェンスで分母が0だと、定義できなくなる。異なる文書間で片方にしか出現しない単語があったりするときに不便であるから、JSダイバージェンスが使われることがある。
自己相互情報量(PMI)
確率変数のある実現値
ゆえに、PMIは2つの単語が関連している度合いを測るときなどに用いられる。
相互情報量
2つの確率変数
つまり、相互情報量は自己相互情報量の平均であるといえる。
Discussion