2016/2/29~3/6
deeplearning.net tutorial
先週から引き続き、ディープラーニングの実践勉強。
、、、ググっていたら同じように最近Deeplearning.netを学び始めている人のBlogを発見。しかもわかりやすい!
ということで、上二つを交互に見ながら進めていくことに。
Python Tutorial
Theano に入る前の基礎勉強。9章のクラスを読了。Iterator, Generatorについて学んだ。
1章 Logistic Regression
Deeplearning.netでは、MNISTという手書きの数字0~9を画像識別するタスクを、各手法を通じて実装していくことで各手法の理論・実装方法やTheanoの使い方を理解していくことができる。MNISTの識別タスクは機械学習ではHello worldにあたる入門の位置づけ的存在のよう。
今週は、1章のLogistic regression読了。そして実践力をつけるために、Deeplearning.netのソースコードをCloneし、そのコードを写経していった。
写経はとても重要だと思う、実際に書きながら追っていくことで結構理解が深まった。
とくに感じた(はまった)点として、Pythonは変数の型宣言がないために、その変数がなになのか、とくに機械学習の場合はその変数の次元(ベクトル・行列なのか、また各階数におけるの次元数など。)が明記されていないためわかりづらい。また、Numpyにおいて、ベクトルと行列の演算がどうなるのか(暗黙に次元数が違うものを足し算する場合の挙動など)は実際に簡単なコード動かしながら理解していかないと、わからないだろう。とくに、写経においては、各変数について細かく次元を書き下していくと理解ができる。
目標設定
4月末までに全部終わらせたい。上記のブログよりはやい2章/週のペースの勢いでやらないといけない、、、1.5か月で終えられたら最高だけど。。。
Coursera
引き続き、Courseraを勉強中。
・Coursera “Machine Learning” by Andreaw Ng
1日2つくらいのペースでVideo見ていっている(通勤前の30分くらいのみ)、2月中に終わりたい → 来週までに終えたい。