download して解凍
スタートメニュー → Anaconda3 → Anaconda promptを起動
(注意:“学生”ではなく“管理者”のフォルダで立ち上がります)
> cd ml
> python run.py
↓ 実行結果
:
:
Epoch 1494/1500
18/18 [==============================] - 0s 388us/step - loss: 4.0399e-06 - acc: 1.0000 - val_loss: 9.8348e-07 - val_acc: 1.0000
Epoch 1495/1500
18/18 [==============================] - 0s 332us/step - loss: 5.9077e-06 - acc: 1.0000 - val_loss: 9.5368e-07 - val_acc: 1.0000
Epoch 1496/1500
18/18 [==============================] - 0s 332us/step - loss: 7.6493e-07 - acc: 1.0000 - val_loss: 9.5368e-07 - val_acc: 1.0000
Epoch 1497/1500
18/18 [==============================] - 0s 332us/step - loss: 2.8975e-06 - acc: 1.0000 - val_loss: 9.2387e-07 - val_acc: 1.0000
Epoch 1498/1500
18/18 [==============================] - 0s 388us/step - loss: 1.9206e-07 - acc: 1.0000 - val_loss: 9.2387e-07 - val_acc: 1.0000
Epoch 1499/1500
18/18 [==============================] - 0s 388us/step - loss: 7.7818e-07 - acc: 1.0000 - val_loss: 8.9407e-07 - val_acc: 1.0000
Epoch 1500/1500
18/18 [==============================] - 0s 388us/step - loss: 8.3717e-06 - acc: 1.0000 - val_loss: 8.9407e-07 - val_acc: 1.0000
C:\ProgramData\Anaconda3\lib\site-packages\h5py\__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.
from ._conv import register_converters as _register_converters
Using TensorFlow backend.
train.py:66: UserWarning: The `nb_epoch` argument in `fit` has been renamed `epochs`.
model.fit(image_list, Y, nb_epoch=1500, batch_size=100, validation_split=0.1)
data/test/apple/a.jpg
label: 1 result: 1
data/test/apple/b.jpg
label: 1 result: 1
data/test/apple/c.jpg
label: 1 result: 0
data/test/others/cut.jpg
label: 0 result: 0
data/test/others/juice.jpg
label: 0 result: 0
data/test/others/orange.jpg
label: 0 result: 0
seikai: 83.33333333333334 %
まず、
:
:
Epoch 1494/1500
18/18 [==============================] - 0s 388us/step - loss: 4.0399e-06 - acc: 1.0000 - val_loss: 9.8348e-07 - val_acc: 1.0000
Epoch 1495/1500
18/18 [==============================] - 0s 332us/step - loss: 5.9077e-06 - acc: 1.0000 - val_loss: 9.5368e-07 - val_acc: 1.0000
Epoch 1496/1500
18/18 [==============================] - 0s 332us/step - loss: 7.6493e-07 - acc: 1.0000 - val_loss: 9.5368e-07 - val_acc: 1.0000
Epoch 1497/1500
18/18 [==============================] - 0s 332us/step - loss: 2.8975e-06 - acc: 1.0000 - val_loss: 9.2387e-07 - val_acc: 1.0000
Epoch 1498/1500
18/18 [==============================] - 0s 388us/step - loss: 1.9206e-07 - acc: 1.0000 - val_loss: 9.2387e-07 - val_acc: 1.0000
Epoch 1499/1500
18/18 [==============================] - 0s 388us/step - loss: 7.7818e-07 - acc: 1.0000 - val_loss: 8.9407e-07 - val_acc: 1.0000
Epoch 1500/1500
18/18 [==============================] - 0s 388us/step - loss: 8.3717e-06 - acc: 1.0000 - val_loss: 8.9407e-07 - val_acc: 1.0
ここまでが学習です。/data/train
の下の画像で学習しています。
そして最後の方の、
data/test/apple/a.jpg
label: 1 result: 1
data/test/apple/b.jpg
label: 1 result: 1
data/test/apple/c.jpg
label: 1 result: 0
data/test/others/cut.jpg
label: 0 result: 0
data/test/others/juice.jpg
label: 0 result: 0
data/test/others/orange.jpg
label: 0 result: 0
seikai: 83.33333333333334 %
は/data/test
の下の画像を使ってテストをした結果です。
/apple/a.jpg
や/apple/b.jpg
は正しくリンゴと判定result: 1
されてますが、/apple/c.jpg
は間違ってその他と判定result: 0
されてしまっています。
/data/test/apple/c.jpg
も正しく判定されるように、学習に使う/data/train/apple
の画像を充実させてくださいただし、c.jpg
そのものを/train
の下に置くのは反則とします
機械学習 (machine learning) / 深層学習 (deep learning) / Tensorflow / Keras