この文書の現在のバージョンと選択したバージョンの差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
5_結果の出力_keras [2017/10/28] adash333 [リンク] |
5_結果の出力_keras [2018/10/07] (現在) |
||
---|---|---|---|
ライン 1: | ライン 1: | ||
===== (5)結果の出力(Keras) ===== | ===== (5)結果の出力(Keras) ===== | ||
- | <KerasでMNIST目次>\\ | + | <wrap hi>Keras2でMNIST目次</wrap>\\ |
- | [[Kerasプログラミングの全体図]]\\ | + | [[Kerasプログラミングの全体図]] |
- | [[(1)Kerasを使用するためのimport文]]\\ | + | -[[(1)Kerasを使用するためのimport文]] |
- | [[(2)データ準備(Keras)]]\\ | + | -[[(2)データ準備(Keras)]] |
- | [[(3)モデル設定(Keras)]]\\ | + | -[[(3)モデル設定(Keras)]] |
- | [[(4)モデル学習(Keras)]]\\ | + | -[[(4)モデル学習(Keras)]] |
- | (5)結果の出力(Keras) ←いまココ | + | -[[(5)結果の出力(Keras)]] <wrap hi><= いまココ</wrap> |
- | \\ | + | -[[(6)学習結果の保存(Keras)]] |
- | [[(6)学習結果の保存(Keras)]]\\ | + | -[[(7)推測(Keras)]] |
- | [[(7)推測(Keras)]]\\ | + | |
- | 最初に以下をコピペするだけですが、プログラムごとに、さらにimport文の追加が必要になる場合があります。 | + | 基本的に以下をコピペするだけです。 |
<code> | <code> | ||
- | import keras | + | #5 結果の出力(Keras) |
- | from keras.models import Sequential | + | score = model.evaluate(X_test, y_test, verbose=0) |
- | from keras.layers import Dense, Dropout | + | print('Test loss:', score[0]) |
- | from keras.optimizers import RMSprop | + | print('Test accuracy:', score[1]) |
- | from keras.utils import np_utils | + | </code> |
- | from sklearn.model_selection import train_test_split | ||
- | import numpy as np | + | ===== 開発環境 ===== |
- | from PIL import Image | + | Windows 8.1\\ |
- | import os | + | Anaconda \\ |
+ | Python 3.5\\ | ||
+ | Tensorflow 1.4\\ | ||
+ | Keras 2.0.9\\ | ||
+ | |||
+ | Keras2.0のインストール方法は[[windowsにkeras2.0をインストール]]をご覧下さい。 | ||
+ | |||
+ | このページは、[[(4)モデル学習(Keras)]]の続きであり、今回は、結果の出力を行っていきます。 | ||
+ | |||
+ | ===== 手順 ===== | ||
+ | |||
+ | |||
+ | ==== 0. 前回終了時の画面 ==== | ||
+ | [[(4)モデル学習(Keras)]]終了時の、以下のような状態から始めます。 | ||
+ | |||
+ | {{:pasted:20171110-044806.png}} | ||
+ | ==== 1. モデルの学習 ==== | ||
+ | 以下のコードを入力して、Shift + Enterを押します。 | ||
+ | |||
+ | <code> | ||
+ | #5 結果の出力(Keras) | ||
+ | score = model.evaluate(x_test, y_test, verbose=0) | ||
+ | print('Test loss:', score[0]) | ||
+ | print('Test accuracy:', score[1]) | ||
</code> | </code> | ||
- | 始めはかなりとっつきにくいimport文ですが、pythonの勉強をしていくにつれて、徐々に、慣れてきます。 | + | 以下のような画面になります。 |
- | keras特有のもの以外のimport文については、以下のリンクをご覧ください。 | + | {{:pasted:20171110-045243.png}} |
- | 機械学習で用いるpythonの”import xxx”まとめ\\ | ||
- | 2017/10/25\\ | ||
- | http://twosquirrel.mints.ne.jp/?p=20344 | ||
+ | model.evaluate()関数により、入力値における損失値(損失関数に(x_test, y_test)の組み合わせを入力して出てきた結果)を返します。 | ||
+ | 詳細はよく分かりませんが、score[0]にlossを、score[1]にaccuracyを持つようなリストを返すようです。 | ||
+ | |||
+ | lossは、おそらく、x_testの画像10000枚とその正解ラベルy_testのセットを、損失関数に入れたときの値(損失)だと思われます。(ググってもはっきりとした記載は見つけることはできませんでしたが、たぶんそれで間違いないと思います。) | ||
+ | |||
+ | KerasでのModel学習の手順は上記でおしまいです。 | ||
+ | |||
+ | 初めての方は、次は、<wrap hi>[[(6)学習結果の保存(Keras)]]</wrap>に進んでください。 | ||
+ | |||
+ | |||
+ | ===== accuracyとlossについて ===== | ||
+ | |||
+ | accuracy(全体正解率)予測測に対して答えがどのくらいあってたか | ||
+ | |||
+ | <code> | ||
+ | Accuracy=(TP+TN)/(TP+FP+TN+FN) | ||
+ | </code> | ||
+ | |||
+ | 詳細は以下のページが参考になります。 | ||
+ | |||
+ | 2017-05-17 | ||
+ | 機械学習で使う指標総まとめ(教師あり学習編)\\ | ||
+ | http://www.procrasist.com/entry/ml-metrics | ||
+ | |||
+ | ===== kerasのSequentialモデルのevaluateメソッドについて ===== | ||
+ | |||
+ | https://keras.io/ja/models/sequential/\\ | ||
+ | {{:pasted:20171110-053055.png}} | ||
+ | |||
+ | evaluate()関数は、バッチごとにある入力データにおける損失値を計算します。つまり、損失関数にx_testとy_testの組み合わせを入力して、その結果を出力します。 | ||
===== 参考文献 ===== | ===== 参考文献 ===== | ||
初めてKerasプログラミングをやるときの超おすすめ本。\\ | 初めてKerasプログラミングをやるときの超おすすめ本。\\ | ||
ライン 50: | ライン 98: | ||
===== リンク ===== | ===== リンク ===== | ||
- | 目次\\ | + | 次 [[(6)学習結果の保存(Keras)]] |
- | [[Kerasプログラミングの全体図]]\\ | + | |
- | [[(1)Kerasを使用するためのimport文]]\\ | + | 前 [[(4)モデル学習(Keras)]] |
- | [[(2)データ準備(Keras)]]\\ | + | |
- | [[(3)モデル設定(Keras)]]\\ | + | |
- | [[(4)モデル学習(Keras)]]\\ | + | <wrap hi>Keras2でMNIST目次</wrap>\\ |
- | (5)結果の出力(Keras) ←いまココ | + | [[Kerasプログラミングの全体図]] |
- | \\ | + | -[[(1)Kerasを使用するためのimport文]] |
- | [[(6)学習結果の保存(Keras)]]\\ | + | -[[(2)データ準備(Keras)]] |
- | [[(7)推測(Keras)]]\\ | + | -[[(3)モデル設定(Keras)]] |
+ | -[[(4)モデル学習(Keras)]] | ||
+ | -[[(5)結果の出力(Keras)]] | ||
+ | -[[(6)学習結果の保存(Keras)]] | ||
+ | -[[(7)推測(Keras)]] | ||