KerasでCNNの写経(1)
今出版されているKerasの使い方が詳細に書いてある本は以下のみ。
最終的な目標として、とある画像をCNN(畳み込み)を使って機械学習を行い、回帰を行いたい!(分類ではなく、数値を出力させたい。)
手書き文字認識などのチュートリアルの最後を、Softmax関数にしないで、恒等関数にすればよいらしいのであるが、私にはYの入力方法がググっても分からなかった。
とりあえず、手元に、Keras 1d-CNN の日本語の解説があったので、試してみる。
http://qiita.com/HirofumiYashima/items/667cefcabf84278e6a67
(環境)
Windows8.1
Anaconda
Python 3.6
Tensorflow 1.1
Keras 2.0
(1)Anaconda Promptを起動して、jupyter notebook
上記サイトのソースコードをコピペ
なんだか、Keras 2.0になって少し書き方が変わったのかな?
https://keras.io/ja/layers/convolutional/
Keras Documentation
Docs » レイヤー » Convolutionalレイヤー
ドキュメント見てもさっぱり。ドキュメントが2.0に対応しているのかどうかもさっぱり、、、
1個目のWarningは、
conv_1d_output_layer = Convolution1D(50, 3, input_shape=(None, 1, 3), padding="same")(input_layer)
と書き直したら消えた。
2個目のWarningは、以下のStackoverflowを参照すると、Model()の中のinput => inputs, output => outputs にすればよいのかな?
https://github.com/fchollet/keras/issues/7602
https://keras.io/ja/models/model/
どうやらそうらしい。。。
(2)1d CNNモデル の コンパイル実行
引き続きコピペ
これはそのままでOKのよう
(3)モデル学習
引き続きコピペ
model.fit()の中では、Keras2.0からは、 `nb_epoch` => `epochs` とのこと?
https://keras.io/ja/models/model/
ここまでのコードを以下に記載する。
続きはまた、、、
ディスカッション
コメント一覧
まだ、コメントがありません