動作環境
GeForce GTX 1070 (8GB)
ASRock Z170M Pro4S [Intel Z170chipset]
Ubuntu 14.04 LTS desktop amd64
TensorFlow v0.11
cuDNN v5.1 for Linux
CUDA v8.0
Python 2.7.6
IPython 5.1.0 -- An enhanced Interactive Python.
gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
Jupyterにて作図している時に、y軸方向を2つのグラフで合わせたかった。
ylimを使うだろうと思ったが、そのAPIがすぐに出てこなかった。
set_ylim()を使って以下でできた。
参考 http://stackoverflow.com/questions/41990104/matplotlib-inline-rescale-figure-after-xlim-ylim-on-hist2d-plot
code
check_result_170215.ipynb
%matplotlib inline
# Feb. 16, 2017
import numpy as np
import matplotlib.pyplot as plt
data1 = np.loadtxt('res.learn.170215', delimiter=',')
# data1 = np.loadtxt('res.learn.N=1000_170216', delimiter=',')
data2 = np.loadtxt('res.learn.N=1000_dropout@output_170218', delimiter=',')
input1 = data1[:,0]
output1 = data1[:,1]
input2 = data2[:,0]
output2 = data2[:,1]
fig = plt.figure()
ax1 = fig.add_subplot(2,1,1)
ax2 = fig.add_subplot(2,1,2)
ax1.scatter(input1,output1)
ax2.scatter(input2,output2)
ax1.set_xlabel('step')
ax1.set_ylabel('Error')
ax1.set_ylim(0, 0.2)
ax1.grid(True)
ax2.set_xlabel('step')
ax2.set_ylabel('Error')
ax2.set_ylim(0, 0.2)
ax2.grid(True)
fig.show()
結果
上のグラフはdropoutなしで7x7x7のhidden layerでのNeural Network学習結果。
下のグラフはoutput layerだけdropoutを設定した場合。
改善はほとんど見られない。