日記(4/1)
4/1
春休み、もう一ヶ月くらい欲しかった
起床は8:30だった。この調子で維持していきたい。
起床後大学の部室に学習結果を見に行ったのですが、多分電気を落とされたのか、進捗が葬り去られてしまった。毎日電気落としてるのか?たまたま年度末だったから?まあいいか。
なので、また今日も部室PCで走らせている。
総会でGTX1080買いますムーヴを起こしたい。パソコンサークルなんですから強いGPUを持っているのは当たり前でしょう!!!
久々にお花畑と黄色いやつ(Python 機械学習プログラミング第一版)を読んだ。
お花畑は14章を読み終えたが全く分からん…
お花畑14章
自己符号化器
自己符号化器とは入力のコピーを出力するように学習させたNNを指す。
といっても、完全なコピーを学習しても特に有用というわけではないので完全な学習を行わないように設計されることが多い。
自己符号化器の符号を記述する隠れ層を$h$、復号化された入力の模倣を$r$とし、符号化器関数と復号化器関数を$h = f \left( x \right) , r = g \left( h \right)$とする。
有用な特徴量を得るためには次の制約が加えられる
不完備性
符号の次元が入力の次元よりも小さい自己符号化器は不完備な自己符号化器と呼ばれる。
$$\rm{dim}~~\it{h} < \rm{dim}~~\it{x}$$
次元を減らすことで、訓練データの最も顕著な特徴量を学習することができる。
復号化器が線形かつ損失関数がMSEであるとき、AEはPCAで張られる部分空間を学習する。
$f,g$が非線形関数ならば、非線形汎化されたPCAの空間を学習することに等しい。
非常に強力な非線形符号化器を用いると符号が1次元だったとしてもたった1つの符号で訓練事例を学習するという危険性を孕んでいる。実際には、このようなことは起こりえないが、あまりにAEの「能力」*1 が高いと重要な性質を学習できなくなってしまう可能性がある。
そこで、以下のような正則化を行うことでモデルが能力過多になることを防ぐ。
さらに各正則化にある特有の性質損失関数を加えることで、符号が入力のコピーとなる性質以外に、様々な性質を付加することが可能となる。
スパース自己符号化器
普通のAEの損失関数に、疎性のあるペナルティ項を加えたものである。
$$\it{L}\it \left(x,g\left(f\left(x\right)\right)\right) + \Omega \left( x \right)$$
スパース自己符号化器は、入力の潜在因子を推定する生成モデルの最尤学習の近似を行っていると言える。
雑音除去自己符号化器
入力にノイズを加えたものをAEに通し、もとの入力との損失関数をとったものを雑音除去自己符号化器(DAE)という。
【スコアマッチングと多様体学習のところは読んでも全然わからんかった。】
縮小自己符号化器
ペナルティ項として、$$\lambda \left| \left| \frac{\partial f \left(x\right)}{\partial x} \right|\right|_{F}^{2}$$を加えたAEを縮小自己符号化器(CAE)という。
ただし$||~~||_{F}$はフロベニウスノルム(行列の各要素の自乗和の平方根)である。
微分項が加算されたことにより、局所的に特徴空間が縮まる。すなわち、とある入力に対する近傍は出力後、更に近傍に位置するようになる。
この項が大きく変化する方向は、言い換えれば多様体の接平面方向となるため、CAEはデータの多様体構造が学習されるモデルと言える。
(メモ終わり)
CourseraのWeek 5に手を付けた。RNNも聞いたことはあったが実装したことがなかったのでいい機会だった。
自然言語処理はなぜかわかんないけど画像処理とかよりやる気が起きにくい。なんでだろ
ヘッドホンを買い替えたいのでおすすめを教えてくれると嬉しいです。
TODO
- 早寝早起き*2