文書の過去の版を表示しています。
Chainer2.0をWindowsにインストール
流れとしては、以下となります。
- Anacondaのインストール
- Anaconda Promptで、chainer2仮想環境の構築(conda create –name chainer2 python=3.5 anaconda)
- activate chainer2
- pip install chainer==”2.0″
- jupyter notebook
(環境)
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: ビギナー向けチュートリアル Vol.1
mitmul
2017年05月18日に更新
https://qiita.com/mitmul/items/eccf4e0a84cb784ba84a
Chainerプログラミングの全体図
Trainerを利用しない場合のChainer全体図
この本の図の通りなのですが、一つずつ解説させていただきたいと思います。
(0)#0 Chainerを使用するためのimport文 (1)#1 データの準備・設定 (2)#2 モデルの記述 class MyModel(Chain): def __init__(self): super(MyModel, self).__init__( # パラメータを含む関数の宣言 ) def __call__(self, x,t): # 損失関数 def fwd(self, x): # 順伝播? ここにもモデルを記載、予測するときにこの関数を用いる (3)#3 モデルと最適化アルゴリズムの設定(ほぼお約束の3行) model = MyModel() optimizer = optimizers.Adam() optimizer.setup(model) (4)#4 学習(Trainerを利用する場合) iterator = iterators.SerialIterator(tdata, bsize) updater = training.StandardUpdater(iterator, optimizer) trainer = training.Trainer(updater, (ep, ‘epoch’)) trainer.extend(extensions.ProgressBar()) trainer.run() (5)#5 結果の出力
Trainerを利用する場合のChainer全体図
「Trainerを利用する場合の全体図」
(参考:Chainer v2による実践深層学習 新納浩幸 p54)
(引用ここから)
————————————-
(0)#0 Chainerを使用するためのimport文 (1)#1 tuple_datasetによるデータの準備・設定 (2)#2 モデルの記述 class MyModel(Chain): def __init__(self): super(MyModel, self).__init__( # パラメータを含む関数の宣言 ) def __call__(self, x,t): # 損失関数 def fwd(self, x): # 順伝播? ここにもモデルを記載、予測するときにこの関数を用いる (3)#3 モデルと最適化アルゴリズムの設定(ほぼお約束の3行) model = MyModel() optimizer = optimizers.Adam() optimizer.setup(model) (4)#4 学習(Trainerを利用する場合) iterator = iterators.SerialIterator(tdata, bsize) updater = training.StandardUpdater(iterator, optimizer) trainer = training.Trainer(updater, (ep, ‘epoch’)) trainer.extend(extensions.ProgressBar()) trainer.run() (5)#5 結果の出力
————————————-
(引用ここまで)
リンク
リンク