目次
機械学習とは
プログラミング無しで機械学習
機械学習プログラミング入門
初めてのKeras2.0
- KerasでFineTuning(作成中)
- pythonメモ(作成中)
以前のリビジョンの文書です
流れとしては、以下となります。
(環境)
Panasonic CF-RZ4
Windows 8.1 Pro
Anaconda 4.4.0
Python 3.5
Chainer 2.0
解説は以下のリンクへ
Windows8.1にChainer2.0をインストール
http://twosquirrel.mints.ne.jp/?p=19928
2017年10月現在、本家ChainerはVersion 3.0となっていますが、Chainer3.0の日本語の解説本は出版されていないので、以下の本がお勧めです。
Chainerv2による実践深層学習、新納浩幸
しかし、機械学習の理論の説明はさらっと流してあるので、理論でわからないところが出てきたら、やはり、
斎藤 康毅 ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装
を読み返してみるのが良いと思います。
さらに、以下の解説をがんばって読むと、実行できるようになりそうです。
Chainer documentation
Introduction to Chainer
https://docs.chainer.org/en/stable/tutorial/basic.html
Chainerは日本の開発が開発している機械学習フレームワークなのに、公式ドキュメントは英語しかありません。
有志の方が日本語訳を作って下さっており、 大変参考になります。というか、日本語訳がないと困ります、、、
Chainer公式チュートリアル1/5(日本語訳)
2016/06/23 2017/07/03
http://robotics4society.com/2016/06/23/chainer-tutorial1/
なお、公式チュートリアルを読む際には、公式Githubのtrain_mnist.py(Versionに応じたもの)を見ながらが分かりやすいです。
https://github.com/chainer/chainer/tree/v2.0.0/examples/mnist
Chainer: ビギナー向けチュートリアル Vol.1
mitmul
2017年05月18日に更新
https://qiita.com/mitmul/items/eccf4e0a84cb784ba84a
こちらの記事はビギナー向けと書いてありますが、『ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装 』を5回くらい読んで、ある程度理解してからでないと、何をやっているのかさっぱりだと思います。
ちなみに、本気で機械学習プログラミングを実行するためには、コンピュータのGPUの火力が必須です。Chainerとさくらインターネットが提携していて、『高火力コンピューティング』(1時間単位で課金)というものがあり、Chainerの導入方法もマニュアルがあるそうです。
この本の図の通りなのですが、一つずつ解説させていただきたいと思います。
(0)#0 Chainerを使用するためのimport文 (1)#1 データの準備・設定 (2)#2 モデルの記述 class MyModel(Chain): def __init__(self): super(MyModel,self).__init__( # パラメータを含む関数の宣言 ) def __call__(self, ...): # 損失関数 def fwd(self, x): # 順伝播? ここにもモデルを記載、予測するときにこの関数を用いる (3)#3 モデルと最適化アルゴリズムの設定(ほぼお約束の3行) model = MyModel() optimizer = optimizers.Adam() optimizer.setup(model) (4)#4 学習(Trainerを利用しない場合) for epoch in range(繰り返し回数) データの加工 model.cleargrads() #勾配初期化 loss = model(...) #誤差計算 loss.backward #勾配計算 optimizer.update #パラメータ更新 (5)#5 結果の出力
リンク