%load_ext watermark
%watermark -v -p numpy,scipy,matplotlib,tensorflow
CPython 3.6.8 IPython 7.2.0 numpy 1.15.4 scipy 1.1.0 matplotlib 3.0.2 tensorflow 1.13.1
10장 – 인공 신경망 소개
이 노트북은 10장에 있는 모든 샘플 코드와 연습문제 해답을 가지고 있습니다.
파이썬 2와 3을 모두 지원합니다. 공통 모듈을 임포트하고 맷플롯립 그림이 노트북 안에 포함되도록 설정하고 생성한 그림을 저장하기 위한 함수를 준비합니다:
# 파이썬 2와 파이썬 3 지원
from __future__ import division, print_function, unicode_literals
# 공통
import numpy as np
import os
# 일관된 출력을 위해 유사난수 초기화
def reset_graph(seed=42):
tf.reset_default_graph()
tf.set_random_seed(seed)
np.random.seed(seed)
# 맷플롯립 설정
%matplotlib inline
import matplotlib
import matplotlib.pyplot as plt
plt.rcParams['axes.labelsize'] = 14
plt.rcParams['xtick.labelsize'] = 12
plt.rcParams['ytick.labelsize'] = 12
# 한글출력
plt.rcParams['font.family'] = 'NanumBarunGothic'
plt.rcParams['axes.unicode_minus'] = False
# 그림을 저장할 폴더
PROJECT_ROOT_DIR = "."
CHAPTER_ID = "ann"
def save_fig(fig_id, tight_layout=True):
path = os.path.join(PROJECT_ROOT_DIR, "images", CHAPTER_ID, fig_id + ".png")
if tight_layout:
plt.tight_layout()
plt.savefig(path, format='png', dpi=300)
import numpy as np
from sklearn.datasets import load_iris
from sklearn.linear_model import Perceptron
iris = load_iris()
X = iris.data[:, (2, 3)] # 꽃잎 길이, 꽃잎 너비
y = (iris.target == 0).astype(np.int)
per_clf = Perceptron(max_iter=100, random_state=42)
per_clf.fit(X, y)
y_pred = per_clf.predict([[2, 0.5]])
/home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/sklearn/linear_model/stochastic_gradient.py:183: FutureWarning: max_iter and tol parameters have been added in Perceptron in 0.19. If max_iter is set but tol is left unset, the default value for tol in 0.19 and 0.20 will be None (which is equivalent to -infinity, so it has no effect) but will change in 0.21 to 1e-3. Specify tol to silence this warning. FutureWarning)
y_pred
array([1])
a = -per_clf.coef_[0][0] / per_clf.coef_[0][1]
b = -per_clf.intercept_ / per_clf.coef_[0][1]
axes = [0, 5, 0, 2]
x0, x1 = np.meshgrid(
np.linspace(axes[0], axes[1], 500).reshape(-1, 1),
np.linspace(axes[2], axes[3], 200).reshape(-1, 1),
)
X_new = np.c_[x0.ravel(), x1.ravel()]
y_predict = per_clf.predict(X_new)
zz = y_predict.reshape(x0.shape)
plt.figure(figsize=(10, 4))
plt.plot(X[y==0, 0], X[y==0, 1], "bs", label="Iris-Setosa 아님")
plt.plot(X[y==1, 0], X[y==1, 1], "yo", label="Iris-Setosa")
plt.plot([axes[0], axes[1]], [a * axes[0] + b, a * axes[1] + b], "k-", linewidth=3)
from matplotlib.colors import ListedColormap
custom_cmap = ListedColormap(['#9898ff', '#fafab0'])
plt.contourf(x0, x1, zz, cmap=custom_cmap)
plt.xlabel("꽃잎 길이", fontsize=14)
plt.ylabel("꽃잎 너비", fontsize=14)
plt.legend(loc="lower right", fontsize=14)
plt.axis(axes)
save_fig("perceptron_iris_plot")
plt.show()
def logit(z):
return 1 / (1 + np.exp(-z))
def relu(z):
return np.maximum(0, z)
def derivative(f, z, eps=0.000001):
return (f(z + eps) - f(z - eps))/(2 * eps)
z = np.linspace(-5, 5, 200)
plt.figure(figsize=(11,4))
plt.subplot(121)
plt.plot(z, np.sign(z), "r-", linewidth=2, label="스텝")
plt.plot(z, logit(z), "g--", linewidth=2, label="로지스틱")
plt.plot(z, np.tanh(z), "b-", linewidth=2, label="Tanh")
plt.plot(z, relu(z), "m-.", linewidth=2, label="ReLU")
plt.grid(True)
plt.legend(loc="center right", fontsize=14)
plt.title("활성화 함수", fontsize=14)
plt.axis([-5, 5, -1.2, 1.2])
plt.subplot(122)
plt.plot(z, derivative(np.sign, z), "r-", linewidth=2, label="Step")
plt.plot(0, 0, "ro", markersize=5)
plt.plot(0, 0, "rx", markersize=10)
plt.plot(z, derivative(logit, z), "g--", linewidth=2, label="Logit")
plt.plot(z, derivative(np.tanh, z), "b-", linewidth=2, label="Tanh")
plt.plot(z, derivative(relu, z), "m-.", linewidth=2, label="ReLU")
plt.grid(True)
plt.title("도함수", fontsize=14)
plt.axis([-5, 5, -0.2, 1.2])
save_fig("activation_functions_plot")
plt.show()
def heaviside(z):
return (z >= 0).astype(z.dtype)
def sigmoid(z):
return 1/(1+np.exp(-z))
def mlp_xor(x1, x2, activation=heaviside):
return activation(-activation(x1 + x2 - 1.5) + activation(x1 + x2 - 0.5) - 0.5)
x1s = np.linspace(-0.2, 1.2, 100)
x2s = np.linspace(-0.2, 1.2, 100)
x1, x2 = np.meshgrid(x1s, x2s)
z1 = mlp_xor(x1, x2, activation=heaviside)
z2 = mlp_xor(x1, x2, activation=sigmoid)
plt.figure(figsize=(10,4))
plt.subplot(121)
plt.contourf(x1, x2, z1)
plt.plot([0, 1], [0, 1], "gs", markersize=20)
plt.plot([0, 1], [1, 0], "y^", markersize=20)
plt.title("활성화 함수: 헤비사이드", fontsize=14)
plt.grid(True)
plt.subplot(122)
plt.contourf(x1, x2, z2)
plt.plot([0, 1], [0, 1], "gs", markersize=20)
plt.plot([0, 1], [1, 0], "y^", markersize=20)
plt.title("활성화 함수: 시그모이드", fontsize=14)
plt.grid(True)
import tensorflow as tf
주의: tf.examples.tutorials.mnist
은 삭제될 예정이므로 대신 tf.keras.datasets.mnist
를 사용하겠습니다. tf.contrib.learn
API는 tf.estimator
와 tf.feature_column
로 옮겨졌고 상당히 많이 바뀌었습니다. 특히 infer_real_valued_columns_from_input()
함수와 SKCompat
클래스가 없습니다.
(X_train, y_train), (X_test, y_test) = tf.keras.datasets.mnist.load_data()
X_train = X_train.astype(np.float32).reshape(-1, 28*28) / 255.0
X_test = X_test.astype(np.float32).reshape(-1, 28*28) / 255.0
y_train = y_train.astype(np.int32)
y_test = y_test.astype(np.int32)
X_valid, X_train = X_train[:5000], X_train[5000:]
y_valid, y_train = y_train[:5000], y_train[5000:]
feature_cols = [tf.feature_column.numeric_column("X", shape=[28 * 28])]
dnn_clf = tf.estimator.DNNClassifier(hidden_units=[300,100], n_classes=10,
feature_columns=feature_cols)
input_fn = tf.estimator.inputs.numpy_input_fn(
x={"X": X_train}, y=y_train, num_epochs=40, batch_size=50, shuffle=True)
dnn_clf.train(input_fn=input_fn)
INFO:tensorflow:Using default config. WARNING:tensorflow:Using temporary folder as model directory: /tmp/tmpojfdm9i4 INFO:tensorflow:Using config: {'_model_dir': '/tmp/tmpojfdm9i4', '_tf_random_seed': None, '_save_summary_steps': 100, '_save_checkpoints_steps': None, '_save_checkpoints_secs': 600, '_session_config': allow_soft_placement: true graph_options { rewrite_options { meta_optimizer_iterations: ONE } } , '_keep_checkpoint_max': 5, '_keep_checkpoint_every_n_hours': 10000, '_log_step_count_steps': 100, '_train_distribute': None, '_device_fn': None, '_protocol': None, '_eval_distribute': None, '_experimental_distribute': None, '_service': None, '_cluster_spec': <tensorflow.python.training.server_lib.ClusterSpec object at 0x7fd26e16a2b0>, '_task_type': 'worker', '_task_id': 0, '_global_id_in_cluster': 0, '_master': '', '_evaluation_master': '', '_is_chief': True, '_num_ps_replicas': 0, '_num_worker_replicas': 1} WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/python/framework/op_def_library.py:263: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version. Instructions for updating: Colocations handled automatically by placer. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow_estimator/python/estimator/inputs/queues/feeding_queue_runner.py:62: QueueRunner.__init__ (from tensorflow.python.training.queue_runner_impl) is deprecated and will be removed in a future version. Instructions for updating: To construct input pipelines, use the `tf.data` module. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow_estimator/python/estimator/inputs/queues/feeding_functions.py:500: add_queue_runner (from tensorflow.python.training.queue_runner_impl) is deprecated and will be removed in a future version. Instructions for updating: To construct input pipelines, use the `tf.data` module. INFO:tensorflow:Calling model_fn. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/python/feature_column/feature_column_v2.py:2703: to_float (from tensorflow.python.ops.math_ops) is deprecated and will be removed in a future version. Instructions for updating: Use tf.cast instead. INFO:tensorflow:Done calling model_fn. INFO:tensorflow:Create CheckpointSaverHook. INFO:tensorflow:Graph was finalized. INFO:tensorflow:Running local_init_op. INFO:tensorflow:Done running local_init_op. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/python/training/monitored_session.py:809: start_queue_runners (from tensorflow.python.training.queue_runner_impl) is deprecated and will be removed in a future version. Instructions for updating: To construct input pipelines, use the `tf.data` module. INFO:tensorflow:Saving checkpoints for 0 into /tmp/tmpojfdm9i4/model.ckpt. INFO:tensorflow:loss = 118.85941, step = 1 INFO:tensorflow:global_step/sec: 477.233 INFO:tensorflow:loss = 4.778356, step = 101 (0.210 sec) INFO:tensorflow:global_step/sec: 501.009 INFO:tensorflow:loss = 19.603981, step = 201 (0.200 sec) INFO:tensorflow:global_step/sec: 541.6 INFO:tensorflow:loss = 6.543038, step = 301 (0.185 sec) INFO:tensorflow:global_step/sec: 574.88 INFO:tensorflow:loss = 5.7384977, step = 401 (0.174 sec) INFO:tensorflow:global_step/sec: 526.035 INFO:tensorflow:loss = 2.469788, step = 501 (0.190 sec) INFO:tensorflow:global_step/sec: 555.513 INFO:tensorflow:loss = 16.599104, step = 601 (0.180 sec) INFO:tensorflow:global_step/sec: 469.997 INFO:tensorflow:loss = 16.176723, step = 701 (0.213 sec) INFO:tensorflow:global_step/sec: 542.576 INFO:tensorflow:loss = 7.090806, step = 801 (0.184 sec) INFO:tensorflow:global_step/sec: 540.736 INFO:tensorflow:loss = 6.0114694, step = 901 (0.185 sec) INFO:tensorflow:global_step/sec: 566.645 INFO:tensorflow:loss = 5.358244, step = 1001 (0.177 sec) INFO:tensorflow:global_step/sec: 534.892 INFO:tensorflow:loss = 3.2692354, step = 1101 (0.187 sec) INFO:tensorflow:global_step/sec: 555.532 INFO:tensorflow:loss = 3.0086937, step = 1201 (0.180 sec) INFO:tensorflow:global_step/sec: 533.514 INFO:tensorflow:loss = 8.29101, step = 1301 (0.187 sec) INFO:tensorflow:global_step/sec: 567.324 INFO:tensorflow:loss = 0.9659397, step = 1401 (0.177 sec) INFO:tensorflow:global_step/sec: 522.631 INFO:tensorflow:loss = 8.458067, step = 1501 (0.191 sec) INFO:tensorflow:global_step/sec: 570.015 INFO:tensorflow:loss = 6.0303555, step = 1601 (0.175 sec) INFO:tensorflow:global_step/sec: 567.522 INFO:tensorflow:loss = 1.9793772, step = 1701 (0.176 sec) INFO:tensorflow:global_step/sec: 530.652 INFO:tensorflow:loss = 0.96449625, step = 1801 (0.188 sec) INFO:tensorflow:global_step/sec: 576.999 INFO:tensorflow:loss = 5.321749, step = 1901 (0.173 sec) INFO:tensorflow:global_step/sec: 547.224 INFO:tensorflow:loss = 3.0814586, step = 2001 (0.183 sec) INFO:tensorflow:global_step/sec: 569.76 INFO:tensorflow:loss = 3.7164736, step = 2101 (0.176 sec) INFO:tensorflow:global_step/sec: 567.939 INFO:tensorflow:loss = 4.883929, step = 2201 (0.176 sec) INFO:tensorflow:global_step/sec: 507.357 INFO:tensorflow:loss = 0.23744398, step = 2301 (0.197 sec) INFO:tensorflow:global_step/sec: 507.144 INFO:tensorflow:loss = 0.69871193, step = 2401 (0.197 sec) INFO:tensorflow:global_step/sec: 565.449 INFO:tensorflow:loss = 1.6435666, step = 2501 (0.177 sec) INFO:tensorflow:global_step/sec: 516.793 INFO:tensorflow:loss = 3.2308083, step = 2601 (0.194 sec) INFO:tensorflow:global_step/sec: 487.837 INFO:tensorflow:loss = 3.1514878, step = 2701 (0.205 sec) INFO:tensorflow:global_step/sec: 538.172 INFO:tensorflow:loss = 2.877276, step = 2801 (0.186 sec) INFO:tensorflow:global_step/sec: 556.85 INFO:tensorflow:loss = 5.2355924, step = 2901 (0.179 sec) INFO:tensorflow:global_step/sec: 522.545 INFO:tensorflow:loss = 3.2547688, step = 3001 (0.192 sec) INFO:tensorflow:global_step/sec: 547.245 INFO:tensorflow:loss = 4.4220386, step = 3101 (0.183 sec) INFO:tensorflow:global_step/sec: 558.688 INFO:tensorflow:loss = 4.284453, step = 3201 (0.179 sec) INFO:tensorflow:global_step/sec: 535.234 INFO:tensorflow:loss = 0.99215746, step = 3301 (0.187 sec) INFO:tensorflow:global_step/sec: 555.942 INFO:tensorflow:loss = 0.850379, step = 3401 (0.180 sec) INFO:tensorflow:global_step/sec: 500.857 INFO:tensorflow:loss = 2.3322434, step = 3501 (0.200 sec) INFO:tensorflow:global_step/sec: 533.184 INFO:tensorflow:loss = 0.14512159, step = 3601 (0.188 sec) INFO:tensorflow:global_step/sec: 582.852 INFO:tensorflow:loss = 2.8052263, step = 3701 (0.172 sec) INFO:tensorflow:global_step/sec: 578.804 INFO:tensorflow:loss = 3.5911367, step = 3801 (0.173 sec) INFO:tensorflow:global_step/sec: 506.16 INFO:tensorflow:loss = 1.5496864, step = 3901 (0.197 sec) INFO:tensorflow:global_step/sec: 568.5 INFO:tensorflow:loss = 1.2705369, step = 4001 (0.176 sec) INFO:tensorflow:global_step/sec: 532.195 INFO:tensorflow:loss = 2.8989897, step = 4101 (0.188 sec) INFO:tensorflow:global_step/sec: 549.987 INFO:tensorflow:loss = 0.43264794, step = 4201 (0.182 sec) INFO:tensorflow:global_step/sec: 538.191 INFO:tensorflow:loss = 0.8565729, step = 4301 (0.186 sec) INFO:tensorflow:global_step/sec: 539.969 INFO:tensorflow:loss = 1.8702921, step = 4401 (0.185 sec) INFO:tensorflow:global_step/sec: 555.682 INFO:tensorflow:loss = 0.8081864, step = 4501 (0.180 sec) INFO:tensorflow:global_step/sec: 571.317 INFO:tensorflow:loss = 0.85746926, step = 4601 (0.175 sec) INFO:tensorflow:global_step/sec: 564.586 INFO:tensorflow:loss = 2.4415886, step = 4701 (0.177 sec) INFO:tensorflow:global_step/sec: 552.317 INFO:tensorflow:loss = 0.95544356, step = 4801 (0.181 sec) INFO:tensorflow:global_step/sec: 559.994 INFO:tensorflow:loss = 0.67740196, step = 4901 (0.179 sec) INFO:tensorflow:global_step/sec: 574.802 INFO:tensorflow:loss = 0.6857321, step = 5001 (0.174 sec) INFO:tensorflow:global_step/sec: 572.373 INFO:tensorflow:loss = 0.3742535, step = 5101 (0.175 sec) INFO:tensorflow:global_step/sec: 580.907 INFO:tensorflow:loss = 1.4654251, step = 5201 (0.172 sec) INFO:tensorflow:global_step/sec: 563.196 INFO:tensorflow:loss = 2.2117522, step = 5301 (0.178 sec) INFO:tensorflow:global_step/sec: 582.861 INFO:tensorflow:loss = 3.696426, step = 5401 (0.172 sec) INFO:tensorflow:global_step/sec: 541.519 INFO:tensorflow:loss = 1.3339893, step = 5501 (0.185 sec) INFO:tensorflow:global_step/sec: 556.986 INFO:tensorflow:loss = 0.6472928, step = 5601 (0.179 sec) INFO:tensorflow:global_step/sec: 572.359 INFO:tensorflow:loss = 1.742102, step = 5701 (0.175 sec) INFO:tensorflow:global_step/sec: 560.263 INFO:tensorflow:loss = 0.501868, step = 5801 (0.179 sec) INFO:tensorflow:global_step/sec: 544.08 INFO:tensorflow:loss = 1.6975393, step = 5901 (0.184 sec) INFO:tensorflow:global_step/sec: 573.919 INFO:tensorflow:loss = 0.30660093, step = 6001 (0.174 sec) INFO:tensorflow:global_step/sec: 584.75 INFO:tensorflow:loss = 0.88393766, step = 6101 (0.171 sec) INFO:tensorflow:global_step/sec: 589.588 INFO:tensorflow:loss = 0.44216326, step = 6201 (0.170 sec) INFO:tensorflow:global_step/sec: 587.092 INFO:tensorflow:loss = 1.4926738, step = 6301 (0.173 sec) INFO:tensorflow:global_step/sec: 557.747 INFO:tensorflow:loss = 1.4066219, step = 6401 (0.176 sec) INFO:tensorflow:global_step/sec: 573.112 INFO:tensorflow:loss = 0.6162974, step = 6501 (0.180 sec) INFO:tensorflow:global_step/sec: 539.349 INFO:tensorflow:loss = 0.099980876, step = 6601 (0.180 sec) INFO:tensorflow:global_step/sec: 553.395 INFO:tensorflow:loss = 0.30662355, step = 6701 (0.180 sec) INFO:tensorflow:global_step/sec: 544.257 INFO:tensorflow:loss = 0.678537, step = 6801 (0.184 sec) INFO:tensorflow:global_step/sec: 522.288 INFO:tensorflow:loss = 0.84153837, step = 6901 (0.192 sec) INFO:tensorflow:global_step/sec: 557.681 INFO:tensorflow:loss = 0.048569877, step = 7001 (0.179 sec) INFO:tensorflow:global_step/sec: 556.499 INFO:tensorflow:loss = 0.9179066, step = 7101 (0.180 sec) INFO:tensorflow:global_step/sec: 560.042 INFO:tensorflow:loss = 0.32493937, step = 7201 (0.178 sec) INFO:tensorflow:global_step/sec: 566.07 INFO:tensorflow:loss = 0.5088048, step = 7301 (0.177 sec) INFO:tensorflow:global_step/sec: 555.531 INFO:tensorflow:loss = 0.042212833, step = 7401 (0.180 sec) INFO:tensorflow:global_step/sec: 534.688 INFO:tensorflow:loss = 1.0725307, step = 7501 (0.187 sec) INFO:tensorflow:global_step/sec: 527.979 INFO:tensorflow:loss = 0.39079815, step = 7601 (0.189 sec) INFO:tensorflow:global_step/sec: 554.79 INFO:tensorflow:loss = 0.37993446, step = 7701 (0.180 sec) INFO:tensorflow:global_step/sec: 585.273 INFO:tensorflow:loss = 0.053365562, step = 7801 (0.171 sec) INFO:tensorflow:global_step/sec: 522.373 INFO:tensorflow:loss = 2.1146438, step = 7901 (0.191 sec) INFO:tensorflow:global_step/sec: 541.801 INFO:tensorflow:loss = 2.594081, step = 8001 (0.186 sec) INFO:tensorflow:global_step/sec: 541.03 INFO:tensorflow:loss = 0.09510458, step = 8101 (0.184 sec) INFO:tensorflow:global_step/sec: 579.733 INFO:tensorflow:loss = 1.561128, step = 8201 (0.172 sec) INFO:tensorflow:global_step/sec: 557.858 INFO:tensorflow:loss = 0.67071486, step = 8301 (0.179 sec) INFO:tensorflow:global_step/sec: 514.659 INFO:tensorflow:loss = 1.66127, step = 8401 (0.194 sec) INFO:tensorflow:global_step/sec: 562.431 INFO:tensorflow:loss = 0.6046287, step = 8501 (0.178 sec) INFO:tensorflow:global_step/sec: 510.354 INFO:tensorflow:loss = 0.07571233, step = 8601 (0.196 sec) INFO:tensorflow:global_step/sec: 548.878 INFO:tensorflow:loss = 0.2349731, step = 8701 (0.182 sec) INFO:tensorflow:global_step/sec: 565.689 INFO:tensorflow:loss = 2.2023585, step = 8801 (0.177 sec) INFO:tensorflow:global_step/sec: 530.328 INFO:tensorflow:loss = 0.38220543, step = 8901 (0.189 sec) INFO:tensorflow:global_step/sec: 562.358 INFO:tensorflow:loss = 0.36914846, step = 9001 (0.178 sec) INFO:tensorflow:global_step/sec: 512.184 INFO:tensorflow:loss = 0.5194205, step = 9101 (0.195 sec) INFO:tensorflow:global_step/sec: 523.832 INFO:tensorflow:loss = 0.4209218, step = 9201 (0.191 sec) INFO:tensorflow:global_step/sec: 542.804 INFO:tensorflow:loss = 0.09953248, step = 9301 (0.184 sec) INFO:tensorflow:global_step/sec: 544.32 INFO:tensorflow:loss = 0.1184893, step = 9401 (0.184 sec) INFO:tensorflow:global_step/sec: 520.985 INFO:tensorflow:loss = 0.05812273, step = 9501 (0.192 sec) INFO:tensorflow:global_step/sec: 530.232 INFO:tensorflow:loss = 0.07530656, step = 9601 (0.190 sec) INFO:tensorflow:global_step/sec: 521.136 INFO:tensorflow:loss = 0.44742566, step = 9701 (0.191 sec) INFO:tensorflow:global_step/sec: 572.217 INFO:tensorflow:loss = 0.082484074, step = 9801 (0.175 sec) INFO:tensorflow:global_step/sec: 524.194 INFO:tensorflow:loss = 0.25080732, step = 9901 (0.191 sec) INFO:tensorflow:global_step/sec: 542.645 INFO:tensorflow:loss = 0.08440753, step = 10001 (0.184 sec) INFO:tensorflow:global_step/sec: 560.199 INFO:tensorflow:loss = 0.9891646, step = 10101 (0.179 sec) INFO:tensorflow:global_step/sec: 516.885 INFO:tensorflow:loss = 4.606642, step = 10201 (0.193 sec) INFO:tensorflow:global_step/sec: 522.503 INFO:tensorflow:loss = 0.012688531, step = 10301 (0.191 sec) INFO:tensorflow:global_step/sec: 581.323 INFO:tensorflow:loss = 0.013619176, step = 10401 (0.172 sec) INFO:tensorflow:global_step/sec: 580.563 INFO:tensorflow:loss = 0.6381511, step = 10501 (0.172 sec) INFO:tensorflow:global_step/sec: 567.726 INFO:tensorflow:loss = 0.058108587, step = 10601 (0.176 sec) INFO:tensorflow:global_step/sec: 509.767 INFO:tensorflow:loss = 0.35373282, step = 10701 (0.196 sec) INFO:tensorflow:global_step/sec: 580.241 INFO:tensorflow:loss = 0.5197712, step = 10801 (0.172 sec) INFO:tensorflow:global_step/sec: 572.133 INFO:tensorflow:loss = 0.2736507, step = 10901 (0.175 sec) INFO:tensorflow:global_step/sec: 574.474 INFO:tensorflow:loss = 0.30080464, step = 11001 (0.174 sec) INFO:tensorflow:global_step/sec: 555.688 INFO:tensorflow:loss = 0.061243724, step = 11101 (0.180 sec) INFO:tensorflow:global_step/sec: 512.196 INFO:tensorflow:loss = 0.21038066, step = 11201 (0.195 sec) INFO:tensorflow:global_step/sec: 525.363 INFO:tensorflow:loss = 0.53266364, step = 11301 (0.190 sec) INFO:tensorflow:global_step/sec: 532.274 INFO:tensorflow:loss = 1.0308418, step = 11401 (0.188 sec) INFO:tensorflow:global_step/sec: 550.086 INFO:tensorflow:loss = 0.49383116, step = 11501 (0.182 sec) INFO:tensorflow:global_step/sec: 552.971 INFO:tensorflow:loss = 0.11138415, step = 11601 (0.181 sec) INFO:tensorflow:global_step/sec: 509.298 INFO:tensorflow:loss = 0.1296062, step = 11701 (0.196 sec) INFO:tensorflow:global_step/sec: 573.402 INFO:tensorflow:loss = 0.15011884, step = 11801 (0.174 sec) INFO:tensorflow:global_step/sec: 542.27 INFO:tensorflow:loss = 0.27008277, step = 11901 (0.184 sec) INFO:tensorflow:global_step/sec: 524.846 INFO:tensorflow:loss = 0.06225844, step = 12001 (0.191 sec) INFO:tensorflow:global_step/sec: 548.171 INFO:tensorflow:loss = 1.8348533, step = 12101 (0.182 sec) INFO:tensorflow:global_step/sec: 559.22 INFO:tensorflow:loss = 0.05205598, step = 12201 (0.179 sec) INFO:tensorflow:global_step/sec: 546.364 INFO:tensorflow:loss = 0.57541645, step = 12301 (0.183 sec) INFO:tensorflow:global_step/sec: 580.001 INFO:tensorflow:loss = 0.2991472, step = 12401 (0.172 sec) INFO:tensorflow:global_step/sec: 577.381 INFO:tensorflow:loss = 0.09210443, step = 12501 (0.173 sec) INFO:tensorflow:global_step/sec: 572.561 INFO:tensorflow:loss = 0.23399316, step = 12601 (0.175 sec) INFO:tensorflow:global_step/sec: 548.644 INFO:tensorflow:loss = 0.15280849, step = 12701 (0.182 sec) INFO:tensorflow:global_step/sec: 545.805 INFO:tensorflow:loss = 0.06541799, step = 12801 (0.183 sec) INFO:tensorflow:global_step/sec: 553.353 INFO:tensorflow:loss = 0.14217947, step = 12901 (0.182 sec) INFO:tensorflow:global_step/sec: 519.781 INFO:tensorflow:loss = 0.13706292, step = 13001 (0.191 sec) INFO:tensorflow:global_step/sec: 541.452 INFO:tensorflow:loss = 0.2248143, step = 13101 (0.185 sec) INFO:tensorflow:global_step/sec: 520.247 INFO:tensorflow:loss = 0.03255721, step = 13201 (0.192 sec) INFO:tensorflow:global_step/sec: 554.524 INFO:tensorflow:loss = 0.0017399766, step = 13301 (0.180 sec) INFO:tensorflow:global_step/sec: 527.271 INFO:tensorflow:loss = 0.31406155, step = 13401 (0.190 sec) INFO:tensorflow:global_step/sec: 583.138 INFO:tensorflow:loss = 0.011241686, step = 13501 (0.171 sec) INFO:tensorflow:global_step/sec: 554.975 INFO:tensorflow:loss = 0.15866129, step = 13601 (0.180 sec) INFO:tensorflow:global_step/sec: 536.806 INFO:tensorflow:loss = 0.10693681, step = 13701 (0.186 sec) INFO:tensorflow:global_step/sec: 570.001 INFO:tensorflow:loss = 0.0871465, step = 13801 (0.177 sec) INFO:tensorflow:global_step/sec: 504.71 INFO:tensorflow:loss = 0.07074093, step = 13901 (0.197 sec) INFO:tensorflow:global_step/sec: 575.315 INFO:tensorflow:loss = 0.22189362, step = 14001 (0.174 sec) INFO:tensorflow:global_step/sec: 549.441 INFO:tensorflow:loss = 0.11603419, step = 14101 (0.182 sec) INFO:tensorflow:global_step/sec: 547.624 INFO:tensorflow:loss = 0.14664313, step = 14201 (0.183 sec) INFO:tensorflow:global_step/sec: 539.533 INFO:tensorflow:loss = 0.42555675, step = 14301 (0.185 sec) INFO:tensorflow:global_step/sec: 527.497 INFO:tensorflow:loss = 0.37917304, step = 14401 (0.190 sec) INFO:tensorflow:global_step/sec: 576.774 INFO:tensorflow:loss = 0.5171, step = 14501 (0.173 sec) INFO:tensorflow:global_step/sec: 518.837 INFO:tensorflow:loss = 0.3486355, step = 14601 (0.193 sec) INFO:tensorflow:global_step/sec: 553.058 INFO:tensorflow:loss = 0.13664484, step = 14701 (0.181 sec) INFO:tensorflow:global_step/sec: 570.151 INFO:tensorflow:loss = 0.1113739, step = 14801 (0.175 sec) INFO:tensorflow:global_step/sec: 519.464 INFO:tensorflow:loss = 0.06201718, step = 14901 (0.192 sec) INFO:tensorflow:global_step/sec: 546.288 INFO:tensorflow:loss = 0.106239654, step = 15001 (0.183 sec) INFO:tensorflow:global_step/sec: 571.922 INFO:tensorflow:loss = 1.088209, step = 15101 (0.175 sec) INFO:tensorflow:global_step/sec: 583.281 INFO:tensorflow:loss = 0.019456884, step = 15201 (0.171 sec) INFO:tensorflow:global_step/sec: 576.624 INFO:tensorflow:loss = 0.2174708, step = 15301 (0.174 sec) INFO:tensorflow:global_step/sec: 572.117 INFO:tensorflow:loss = 0.08925899, step = 15401 (0.175 sec) INFO:tensorflow:global_step/sec: 514.098 INFO:tensorflow:loss = 0.032817803, step = 15501 (0.195 sec) INFO:tensorflow:global_step/sec: 539.578 INFO:tensorflow:loss = 0.18805078, step = 15601 (0.185 sec) INFO:tensorflow:global_step/sec: 536.787 INFO:tensorflow:loss = 0.026527144, step = 15701 (0.186 sec) INFO:tensorflow:global_step/sec: 543.382 INFO:tensorflow:loss = 0.029808998, step = 15801 (0.184 sec) INFO:tensorflow:global_step/sec: 525.825 INFO:tensorflow:loss = 1.0226713, step = 15901 (0.190 sec) INFO:tensorflow:global_step/sec: 561.218 INFO:tensorflow:loss = 0.12774374, step = 16001 (0.178 sec) INFO:tensorflow:global_step/sec: 524.603 INFO:tensorflow:loss = 0.0591494, step = 16101 (0.191 sec) INFO:tensorflow:global_step/sec: 531.935 INFO:tensorflow:loss = 0.21184368, step = 16201 (0.188 sec) INFO:tensorflow:global_step/sec: 574.553 INFO:tensorflow:loss = 0.10544134, step = 16301 (0.174 sec) INFO:tensorflow:global_step/sec: 574.819 INFO:tensorflow:loss = 0.7078202, step = 16401 (0.174 sec) INFO:tensorflow:global_step/sec: 530.327 INFO:tensorflow:loss = 0.091435984, step = 16501 (0.189 sec) INFO:tensorflow:global_step/sec: 565.877 INFO:tensorflow:loss = 0.042299915, step = 16601 (0.177 sec) INFO:tensorflow:global_step/sec: 551.435 INFO:tensorflow:loss = 0.055315495, step = 16701 (0.181 sec) INFO:tensorflow:global_step/sec: 578.877 INFO:tensorflow:loss = 0.0063198307, step = 16801 (0.173 sec) INFO:tensorflow:global_step/sec: 574.383 INFO:tensorflow:loss = 0.11429474, step = 16901 (0.174 sec) INFO:tensorflow:global_step/sec: 542.293 INFO:tensorflow:loss = 0.011431064, step = 17001 (0.184 sec) INFO:tensorflow:global_step/sec: 576.225 INFO:tensorflow:loss = 0.046713084, step = 17101 (0.174 sec) INFO:tensorflow:global_step/sec: 522.602 INFO:tensorflow:loss = 0.009620156, step = 17201 (0.191 sec) INFO:tensorflow:global_step/sec: 538.774 INFO:tensorflow:loss = 0.11900287, step = 17301 (0.186 sec) INFO:tensorflow:global_step/sec: 528.6 INFO:tensorflow:loss = 0.07075401, step = 17401 (0.189 sec) INFO:tensorflow:global_step/sec: 547.485 INFO:tensorflow:loss = 0.09028783, step = 17501 (0.183 sec) INFO:tensorflow:global_step/sec: 576.401 INFO:tensorflow:loss = 0.001982708, step = 17601 (0.174 sec) INFO:tensorflow:global_step/sec: 580.22 INFO:tensorflow:loss = 0.10898565, step = 17701 (0.172 sec) INFO:tensorflow:global_step/sec: 521.483 INFO:tensorflow:loss = 0.18678357, step = 17801 (0.192 sec) INFO:tensorflow:global_step/sec: 481.735 INFO:tensorflow:loss = 0.12262266, step = 17901 (0.207 sec) INFO:tensorflow:global_step/sec: 514.98 INFO:tensorflow:loss = 0.094105355, step = 18001 (0.194 sec) INFO:tensorflow:global_step/sec: 580.389 INFO:tensorflow:loss = 0.07503551, step = 18101 (0.173 sec) INFO:tensorflow:global_step/sec: 547.095 INFO:tensorflow:loss = 0.046804003, step = 18201 (0.183 sec) INFO:tensorflow:global_step/sec: 578.402 INFO:tensorflow:loss = 0.008770084, step = 18301 (0.173 sec) INFO:tensorflow:global_step/sec: 559.426 INFO:tensorflow:loss = 0.058044855, step = 18401 (0.179 sec) INFO:tensorflow:global_step/sec: 495.634 INFO:tensorflow:loss = 0.08846693, step = 18501 (0.202 sec) INFO:tensorflow:global_step/sec: 552.27 INFO:tensorflow:loss = 0.031553775, step = 18601 (0.181 sec) INFO:tensorflow:global_step/sec: 533.96 INFO:tensorflow:loss = 0.10631254, step = 18701 (0.187 sec) INFO:tensorflow:global_step/sec: 557.611 INFO:tensorflow:loss = 0.00194736, step = 18801 (0.179 sec) INFO:tensorflow:global_step/sec: 562.611 INFO:tensorflow:loss = 0.010946507, step = 18901 (0.178 sec) INFO:tensorflow:global_step/sec: 547.963 INFO:tensorflow:loss = 0.03273103, step = 19001 (0.183 sec) INFO:tensorflow:global_step/sec: 508.351 INFO:tensorflow:loss = 0.02912912, step = 19101 (0.197 sec) INFO:tensorflow:global_step/sec: 562.083 INFO:tensorflow:loss = 0.017483419, step = 19201 (0.178 sec) INFO:tensorflow:global_step/sec: 579.578 INFO:tensorflow:loss = 0.08909572, step = 19301 (0.173 sec) INFO:tensorflow:global_step/sec: 568.024 INFO:tensorflow:loss = 0.06861903, step = 19401 (0.176 sec) INFO:tensorflow:global_step/sec: 529.35 INFO:tensorflow:loss = 0.07836465, step = 19501 (0.189 sec) INFO:tensorflow:global_step/sec: 536.665 INFO:tensorflow:loss = 0.09608982, step = 19601 (0.186 sec) INFO:tensorflow:global_step/sec: 571.57 INFO:tensorflow:loss = 0.06135221, step = 19701 (0.175 sec) INFO:tensorflow:global_step/sec: 562.998 INFO:tensorflow:loss = 0.050788857, step = 19801 (0.177 sec) INFO:tensorflow:global_step/sec: 552.326 INFO:tensorflow:loss = 0.007914622, step = 19901 (0.181 sec) INFO:tensorflow:global_step/sec: 524.976 INFO:tensorflow:loss = 0.003741128, step = 20001 (0.191 sec) INFO:tensorflow:global_step/sec: 549.404 INFO:tensorflow:loss = 0.08882706, step = 20101 (0.182 sec) INFO:tensorflow:global_step/sec: 562.149 INFO:tensorflow:loss = 0.117087275, step = 20201 (0.178 sec) INFO:tensorflow:global_step/sec: 541 INFO:tensorflow:loss = 0.6327322, step = 20301 (0.185 sec) INFO:tensorflow:global_step/sec: 545.288 INFO:tensorflow:loss = 0.018492205, step = 20401 (0.183 sec) INFO:tensorflow:global_step/sec: 534.688 INFO:tensorflow:loss = 0.022824822, step = 20501 (0.187 sec) INFO:tensorflow:global_step/sec: 497.889 INFO:tensorflow:loss = 0.3480062, step = 20601 (0.201 sec) INFO:tensorflow:global_step/sec: 544.866 INFO:tensorflow:loss = 0.008415331, step = 20701 (0.183 sec) INFO:tensorflow:global_step/sec: 541.398 INFO:tensorflow:loss = 0.06143046, step = 20801 (0.185 sec) INFO:tensorflow:global_step/sec: 495.767 INFO:tensorflow:loss = 0.0755091, step = 20901 (0.202 sec) INFO:tensorflow:global_step/sec: 536.415 INFO:tensorflow:loss = 0.04431589, step = 21001 (0.186 sec) INFO:tensorflow:global_step/sec: 482.33 INFO:tensorflow:loss = 0.020321662, step = 21101 (0.207 sec) INFO:tensorflow:global_step/sec: 541.244 INFO:tensorflow:loss = 0.035308134, step = 21201 (0.185 sec) INFO:tensorflow:global_step/sec: 556.491 INFO:tensorflow:loss = 0.09718782, step = 21301 (0.180 sec) INFO:tensorflow:global_step/sec: 543.984 INFO:tensorflow:loss = 0.0144804735, step = 21401 (0.184 sec) INFO:tensorflow:global_step/sec: 552.718 INFO:tensorflow:loss = 0.017475953, step = 21501 (0.181 sec) INFO:tensorflow:global_step/sec: 542.681 INFO:tensorflow:loss = 0.020672055, step = 21601 (0.185 sec) INFO:tensorflow:global_step/sec: 527.613 INFO:tensorflow:loss = 0.016053233, step = 21701 (0.189 sec) INFO:tensorflow:global_step/sec: 547.151 INFO:tensorflow:loss = 0.022209248, step = 21801 (0.183 sec) INFO:tensorflow:global_step/sec: 528.985 INFO:tensorflow:loss = 0.028935524, step = 21901 (0.189 sec) INFO:tensorflow:global_step/sec: 547.061 INFO:tensorflow:loss = 0.06261704, step = 22001 (0.183 sec) INFO:tensorflow:global_step/sec: 559.372 INFO:tensorflow:loss = 0.068284065, step = 22101 (0.179 sec) INFO:tensorflow:global_step/sec: 570.905 INFO:tensorflow:loss = 0.14644632, step = 22201 (0.175 sec) INFO:tensorflow:global_step/sec: 566.876 INFO:tensorflow:loss = 0.04378733, step = 22301 (0.177 sec) INFO:tensorflow:global_step/sec: 547.441 INFO:tensorflow:loss = 0.021930942, step = 22401 (0.183 sec) INFO:tensorflow:global_step/sec: 554.175 INFO:tensorflow:loss = 0.025536126, step = 22501 (0.180 sec) INFO:tensorflow:global_step/sec: 570.44 INFO:tensorflow:loss = 0.08840186, step = 22601 (0.175 sec) INFO:tensorflow:global_step/sec: 520.922 INFO:tensorflow:loss = 0.054924298, step = 22701 (0.192 sec) INFO:tensorflow:global_step/sec: 551.295 INFO:tensorflow:loss = 0.04061536, step = 22801 (0.181 sec) INFO:tensorflow:global_step/sec: 559.148 INFO:tensorflow:loss = 0.020501666, step = 22901 (0.179 sec) INFO:tensorflow:global_step/sec: 536.529 INFO:tensorflow:loss = 0.07039086, step = 23001 (0.187 sec) INFO:tensorflow:global_step/sec: 550.534 INFO:tensorflow:loss = 0.0053439504, step = 23101 (0.182 sec) INFO:tensorflow:global_step/sec: 574.23 INFO:tensorflow:loss = 0.0038134716, step = 23201 (0.174 sec) INFO:tensorflow:global_step/sec: 542.121 INFO:tensorflow:loss = 0.0016957168, step = 23301 (0.185 sec) INFO:tensorflow:global_step/sec: 506.422 INFO:tensorflow:loss = 0.015078062, step = 23401 (0.197 sec) INFO:tensorflow:global_step/sec: 570.188 INFO:tensorflow:loss = 0.04223028, step = 23501 (0.176 sec) INFO:tensorflow:global_step/sec: 581.652 INFO:tensorflow:loss = 0.012350606, step = 23601 (0.172 sec) INFO:tensorflow:global_step/sec: 554.671 INFO:tensorflow:loss = 0.024547208, step = 23701 (0.180 sec) INFO:tensorflow:global_step/sec: 539.084 INFO:tensorflow:loss = 0.032275073, step = 23801 (0.186 sec) INFO:tensorflow:global_step/sec: 527.022 INFO:tensorflow:loss = 0.01018185, step = 23901 (0.190 sec) INFO:tensorflow:global_step/sec: 527.727 INFO:tensorflow:loss = 0.20077734, step = 24001 (0.189 sec) INFO:tensorflow:global_step/sec: 569.838 INFO:tensorflow:loss = 0.16565718, step = 24101 (0.176 sec) INFO:tensorflow:global_step/sec: 530.536 INFO:tensorflow:loss = 0.10936381, step = 24201 (0.189 sec) INFO:tensorflow:global_step/sec: 549.47 INFO:tensorflow:loss = 0.0066721803, step = 24301 (0.182 sec) INFO:tensorflow:global_step/sec: 574.046 INFO:tensorflow:loss = 0.13768645, step = 24401 (0.174 sec) INFO:tensorflow:global_step/sec: 552.011 INFO:tensorflow:loss = 0.04029975, step = 24501 (0.181 sec) INFO:tensorflow:global_step/sec: 526.206 INFO:tensorflow:loss = 0.014089955, step = 24601 (0.190 sec) INFO:tensorflow:global_step/sec: 533.582 INFO:tensorflow:loss = 0.06257168, step = 24701 (0.187 sec) INFO:tensorflow:global_step/sec: 534.945 INFO:tensorflow:loss = 0.020908294, step = 24801 (0.187 sec) INFO:tensorflow:global_step/sec: 539.051 INFO:tensorflow:loss = 0.047648206, step = 24901 (0.186 sec) INFO:tensorflow:global_step/sec: 544.808 INFO:tensorflow:loss = 0.00054284785, step = 25001 (0.183 sec) INFO:tensorflow:global_step/sec: 554.069 INFO:tensorflow:loss = 0.016776541, step = 25101 (0.181 sec) INFO:tensorflow:global_step/sec: 516.626 INFO:tensorflow:loss = 0.016490135, step = 25201 (0.194 sec) INFO:tensorflow:global_step/sec: 565.889 INFO:tensorflow:loss = 0.05278136, step = 25301 (0.177 sec) INFO:tensorflow:global_step/sec: 577.663 INFO:tensorflow:loss = 0.018266264, step = 25401 (0.173 sec) INFO:tensorflow:global_step/sec: 584.948 INFO:tensorflow:loss = 0.053608123, step = 25501 (0.171 sec) INFO:tensorflow:global_step/sec: 576.999 INFO:tensorflow:loss = 0.083988555, step = 25601 (0.173 sec) INFO:tensorflow:global_step/sec: 543.986 INFO:tensorflow:loss = 0.008863233, step = 25701 (0.184 sec) INFO:tensorflow:global_step/sec: 581.882 INFO:tensorflow:loss = 0.0111049805, step = 25801 (0.172 sec) INFO:tensorflow:global_step/sec: 561.577 INFO:tensorflow:loss = 0.015411706, step = 25901 (0.178 sec) INFO:tensorflow:global_step/sec: 584.834 INFO:tensorflow:loss = 0.062174626, step = 26001 (0.171 sec) INFO:tensorflow:global_step/sec: 529.132 INFO:tensorflow:loss = 0.050509952, step = 26101 (0.189 sec) INFO:tensorflow:global_step/sec: 535.618 INFO:tensorflow:loss = 0.003832923, step = 26201 (0.186 sec) INFO:tensorflow:global_step/sec: 547.101 INFO:tensorflow:loss = 0.039984077, step = 26301 (0.183 sec) INFO:tensorflow:global_step/sec: 586.946 INFO:tensorflow:loss = 0.0072427224, step = 26401 (0.171 sec) INFO:tensorflow:global_step/sec: 538.088 INFO:tensorflow:loss = 0.0077223936, step = 26501 (0.186 sec) INFO:tensorflow:global_step/sec: 568.608 INFO:tensorflow:loss = 0.06776569, step = 26601 (0.176 sec) INFO:tensorflow:global_step/sec: 528.767 INFO:tensorflow:loss = 0.0153904995, step = 26701 (0.189 sec) INFO:tensorflow:global_step/sec: 522.588 INFO:tensorflow:loss = 0.011445919, step = 26801 (0.191 sec) INFO:tensorflow:global_step/sec: 554.135 INFO:tensorflow:loss = 0.034391914, step = 26901 (0.180 sec) INFO:tensorflow:global_step/sec: 576.812 INFO:tensorflow:loss = 0.053680126, step = 27001 (0.174 sec) INFO:tensorflow:global_step/sec: 553.864 INFO:tensorflow:loss = 0.04531908, step = 27101 (0.180 sec) INFO:tensorflow:global_step/sec: 552.101 INFO:tensorflow:loss = 0.011397259, step = 27201 (0.181 sec) INFO:tensorflow:global_step/sec: 586.441 INFO:tensorflow:loss = 0.16199645, step = 27301 (0.170 sec) INFO:tensorflow:global_step/sec: 562.935 INFO:tensorflow:loss = 0.0120202415, step = 27401 (0.178 sec) INFO:tensorflow:global_step/sec: 504.426 INFO:tensorflow:loss = 0.05711146, step = 27501 (0.198 sec) INFO:tensorflow:global_step/sec: 521.226 INFO:tensorflow:loss = 0.0063743177, step = 27601 (0.192 sec) INFO:tensorflow:global_step/sec: 540.632 INFO:tensorflow:loss = 0.005149548, step = 27701 (0.185 sec) INFO:tensorflow:global_step/sec: 575.854 INFO:tensorflow:loss = 0.030661171, step = 27801 (0.174 sec) INFO:tensorflow:global_step/sec: 542.873 INFO:tensorflow:loss = 0.0055489326, step = 27901 (0.184 sec) INFO:tensorflow:global_step/sec: 520.737 INFO:tensorflow:loss = 0.030552872, step = 28001 (0.192 sec) INFO:tensorflow:global_step/sec: 531.773 INFO:tensorflow:loss = 0.048291147, step = 28101 (0.188 sec) INFO:tensorflow:global_step/sec: 583.437 INFO:tensorflow:loss = 0.028656349, step = 28201 (0.171 sec) INFO:tensorflow:global_step/sec: 539.551 INFO:tensorflow:loss = 0.020492617, step = 28301 (0.185 sec) INFO:tensorflow:global_step/sec: 501.137 INFO:tensorflow:loss = 0.036006976, step = 28401 (0.200 sec) INFO:tensorflow:global_step/sec: 509.129 INFO:tensorflow:loss = 0.039369524, step = 28501 (0.196 sec) INFO:tensorflow:global_step/sec: 562.729 INFO:tensorflow:loss = 0.0018159291, step = 28601 (0.178 sec) INFO:tensorflow:global_step/sec: 512.064 INFO:tensorflow:loss = 0.0012205822, step = 28701 (0.195 sec) INFO:tensorflow:global_step/sec: 532.469 INFO:tensorflow:loss = 0.012099271, step = 28801 (0.188 sec) INFO:tensorflow:global_step/sec: 537.327 INFO:tensorflow:loss = 0.012919017, step = 28901 (0.187 sec) INFO:tensorflow:global_step/sec: 533.974 INFO:tensorflow:loss = 0.049701054, step = 29001 (0.186 sec) INFO:tensorflow:global_step/sec: 554.251 INFO:tensorflow:loss = 0.024024993, step = 29101 (0.181 sec) INFO:tensorflow:global_step/sec: 541.398 INFO:tensorflow:loss = 0.047240384, step = 29201 (0.185 sec) INFO:tensorflow:global_step/sec: 574.729 INFO:tensorflow:loss = 0.0001422137, step = 29301 (0.174 sec) INFO:tensorflow:global_step/sec: 571.934 INFO:tensorflow:loss = 0.036594465, step = 29401 (0.175 sec) INFO:tensorflow:global_step/sec: 549.47 INFO:tensorflow:loss = 0.020672482, step = 29501 (0.182 sec) INFO:tensorflow:global_step/sec: 539.151 INFO:tensorflow:loss = 0.010345614, step = 29601 (0.186 sec) INFO:tensorflow:global_step/sec: 532.483 INFO:tensorflow:loss = 0.021201316, step = 29701 (0.187 sec) INFO:tensorflow:global_step/sec: 522.232 INFO:tensorflow:loss = 0.0077635464, step = 29801 (0.191 sec) INFO:tensorflow:global_step/sec: 568.277 INFO:tensorflow:loss = 0.022789955, step = 29901 (0.176 sec) INFO:tensorflow:global_step/sec: 542.034 INFO:tensorflow:loss = 0.001063808, step = 30001 (0.185 sec) INFO:tensorflow:global_step/sec: 535.901 INFO:tensorflow:loss = 0.0066127866, step = 30101 (0.186 sec) INFO:tensorflow:global_step/sec: 525.904 INFO:tensorflow:loss = 0.081749484, step = 30201 (0.191 sec) INFO:tensorflow:global_step/sec: 557.617 INFO:tensorflow:loss = 0.0075727557, step = 30301 (0.179 sec) INFO:tensorflow:global_step/sec: 559.862 INFO:tensorflow:loss = 0.010309324, step = 30401 (0.178 sec) INFO:tensorflow:global_step/sec: 569.734 INFO:tensorflow:loss = 0.014869677, step = 30501 (0.176 sec) INFO:tensorflow:global_step/sec: 563.707 INFO:tensorflow:loss = 0.10320924, step = 30601 (0.177 sec) INFO:tensorflow:global_step/sec: 579.856 INFO:tensorflow:loss = 0.06666302, step = 30701 (0.172 sec) INFO:tensorflow:global_step/sec: 530.703 INFO:tensorflow:loss = 0.098159865, step = 30801 (0.189 sec) INFO:tensorflow:global_step/sec: 571.45 INFO:tensorflow:loss = 0.017723754, step = 30901 (0.176 sec) INFO:tensorflow:global_step/sec: 512.035 INFO:tensorflow:loss = 0.03997017, step = 31001 (0.194 sec) INFO:tensorflow:global_step/sec: 563.239 INFO:tensorflow:loss = 0.018782405, step = 31101 (0.178 sec) INFO:tensorflow:global_step/sec: 531.837 INFO:tensorflow:loss = 0.003263375, step = 31201 (0.188 sec) INFO:tensorflow:global_step/sec: 501.902 INFO:tensorflow:loss = 0.010298785, step = 31301 (0.199 sec) INFO:tensorflow:global_step/sec: 560.114 INFO:tensorflow:loss = 0.014827792, step = 31401 (0.179 sec) INFO:tensorflow:global_step/sec: 554.147 INFO:tensorflow:loss = 0.022893084, step = 31501 (0.181 sec) INFO:tensorflow:global_step/sec: 552.669 INFO:tensorflow:loss = 0.036395874, step = 31601 (0.181 sec) INFO:tensorflow:global_step/sec: 576.895 INFO:tensorflow:loss = 0.017323071, step = 31701 (0.173 sec) INFO:tensorflow:global_step/sec: 583.446 INFO:tensorflow:loss = 0.049461555, step = 31801 (0.171 sec) INFO:tensorflow:global_step/sec: 581.223 INFO:tensorflow:loss = 0.022591686, step = 31901 (0.172 sec) INFO:tensorflow:global_step/sec: 512.086 INFO:tensorflow:loss = 0.04490753, step = 32001 (0.195 sec) INFO:tensorflow:global_step/sec: 582.076 INFO:tensorflow:loss = 0.06807555, step = 32101 (0.172 sec) INFO:tensorflow:global_step/sec: 567.055 INFO:tensorflow:loss = 0.017051337, step = 32201 (0.176 sec) INFO:tensorflow:global_step/sec: 567.322 INFO:tensorflow:loss = 0.0035310462, step = 32301 (0.176 sec) INFO:tensorflow:global_step/sec: 536.923 INFO:tensorflow:loss = 0.024808906, step = 32401 (0.186 sec) INFO:tensorflow:global_step/sec: 579.977 INFO:tensorflow:loss = 0.021814056, step = 32501 (0.172 sec) INFO:tensorflow:global_step/sec: 565.741 INFO:tensorflow:loss = 0.015415751, step = 32601 (0.177 sec) INFO:tensorflow:global_step/sec: 549.23 INFO:tensorflow:loss = 0.10920554, step = 32701 (0.182 sec) INFO:tensorflow:global_step/sec: 524.825 INFO:tensorflow:loss = 0.03339508, step = 32801 (0.191 sec) INFO:tensorflow:global_step/sec: 582.662 INFO:tensorflow:loss = 0.010500197, step = 32901 (0.172 sec) INFO:tensorflow:global_step/sec: 561.608 INFO:tensorflow:loss = 0.03074598, step = 33001 (0.178 sec) INFO:tensorflow:global_step/sec: 539.716 INFO:tensorflow:loss = 0.0003077746, step = 33101 (0.185 sec) INFO:tensorflow:global_step/sec: 552.945 INFO:tensorflow:loss = 0.022750063, step = 33201 (0.181 sec) INFO:tensorflow:global_step/sec: 565.564 INFO:tensorflow:loss = 0.0132475775, step = 33301 (0.177 sec) INFO:tensorflow:global_step/sec: 554.968 INFO:tensorflow:loss = 0.009440497, step = 33401 (0.181 sec) INFO:tensorflow:global_step/sec: 535.27 INFO:tensorflow:loss = 0.1535424, step = 33501 (0.186 sec) INFO:tensorflow:global_step/sec: 550.464 INFO:tensorflow:loss = 0.005948379, step = 33601 (0.182 sec) INFO:tensorflow:global_step/sec: 543.211 INFO:tensorflow:loss = 0.0019750833, step = 33701 (0.184 sec) INFO:tensorflow:global_step/sec: 540.84 INFO:tensorflow:loss = 0.009366742, step = 33801 (0.185 sec) INFO:tensorflow:global_step/sec: 549.297 INFO:tensorflow:loss = 0.019191831, step = 33901 (0.182 sec) INFO:tensorflow:global_step/sec: 530.356 INFO:tensorflow:loss = 0.05053223, step = 34001 (0.189 sec) INFO:tensorflow:global_step/sec: 527.292 INFO:tensorflow:loss = 0.012844564, step = 34101 (0.190 sec) INFO:tensorflow:global_step/sec: 511.818 INFO:tensorflow:loss = 0.037054155, step = 34201 (0.195 sec) INFO:tensorflow:global_step/sec: 536.589 INFO:tensorflow:loss = 0.022539515, step = 34301 (0.187 sec) INFO:tensorflow:global_step/sec: 578.302 INFO:tensorflow:loss = 0.01174491, step = 34401 (0.173 sec) INFO:tensorflow:global_step/sec: 523.453 INFO:tensorflow:loss = 0.028177984, step = 34501 (0.191 sec) INFO:tensorflow:global_step/sec: 543.232 INFO:tensorflow:loss = 0.005267547, step = 34601 (0.184 sec) INFO:tensorflow:global_step/sec: 499.025 INFO:tensorflow:loss = 0.024686066, step = 34701 (0.200 sec) INFO:tensorflow:global_step/sec: 528.895 INFO:tensorflow:loss = 0.027395472, step = 34801 (0.189 sec) INFO:tensorflow:global_step/sec: 564.18 INFO:tensorflow:loss = 0.06456257, step = 34901 (0.177 sec) INFO:tensorflow:global_step/sec: 579.037 INFO:tensorflow:loss = 0.0018642172, step = 35001 (0.173 sec) INFO:tensorflow:global_step/sec: 542.829 INFO:tensorflow:loss = 0.010013457, step = 35101 (0.184 sec) INFO:tensorflow:global_step/sec: 524.474 INFO:tensorflow:loss = 0.054200776, step = 35201 (0.191 sec) INFO:tensorflow:global_step/sec: 588.273 INFO:tensorflow:loss = 0.009455023, step = 35301 (0.170 sec) INFO:tensorflow:global_step/sec: 503.434 INFO:tensorflow:loss = 0.028001023, step = 35401 (0.199 sec) INFO:tensorflow:global_step/sec: 522.784 INFO:tensorflow:loss = 0.005491089, step = 35501 (0.191 sec) INFO:tensorflow:global_step/sec: 533.168 INFO:tensorflow:loss = 0.013958635, step = 35601 (0.187 sec) INFO:tensorflow:global_step/sec: 550.822 INFO:tensorflow:loss = 0.004931296, step = 35701 (0.182 sec) INFO:tensorflow:global_step/sec: 549.072 INFO:tensorflow:loss = 0.0066981493, step = 35801 (0.182 sec) INFO:tensorflow:global_step/sec: 523.492 INFO:tensorflow:loss = 0.068456076, step = 35901 (0.191 sec) INFO:tensorflow:global_step/sec: 579.32 INFO:tensorflow:loss = 0.003665933, step = 36001 (0.173 sec) INFO:tensorflow:global_step/sec: 562.556 INFO:tensorflow:loss = 0.07057111, step = 36101 (0.177 sec) INFO:tensorflow:global_step/sec: 579.809 INFO:tensorflow:loss = 0.017230734, step = 36201 (0.173 sec) INFO:tensorflow:global_step/sec: 566.645 INFO:tensorflow:loss = 0.00053055363, step = 36301 (0.177 sec) INFO:tensorflow:global_step/sec: 521.967 INFO:tensorflow:loss = 0.0044449912, step = 36401 (0.191 sec) INFO:tensorflow:global_step/sec: 563.766 INFO:tensorflow:loss = 0.012352949, step = 36501 (0.177 sec) INFO:tensorflow:global_step/sec: 576.484 INFO:tensorflow:loss = 0.0062317317, step = 36601 (0.175 sec) INFO:tensorflow:global_step/sec: 547.842 INFO:tensorflow:loss = 0.0041069584, step = 36701 (0.182 sec) INFO:tensorflow:global_step/sec: 527.732 INFO:tensorflow:loss = 0.007429436, step = 36801 (0.189 sec) INFO:tensorflow:global_step/sec: 536.139 INFO:tensorflow:loss = 0.007568854, step = 36901 (0.187 sec) INFO:tensorflow:global_step/sec: 551.6 INFO:tensorflow:loss = 0.0018288522, step = 37001 (0.181 sec) INFO:tensorflow:global_step/sec: 568.248 INFO:tensorflow:loss = 0.0015033914, step = 37101 (0.176 sec) INFO:tensorflow:global_step/sec: 534.508 INFO:tensorflow:loss = 0.013135002, step = 37201 (0.187 sec) INFO:tensorflow:global_step/sec: 532.975 INFO:tensorflow:loss = 0.014331066, step = 37301 (0.188 sec) INFO:tensorflow:global_step/sec: 536.982 INFO:tensorflow:loss = 0.014240445, step = 37401 (0.186 sec) INFO:tensorflow:global_step/sec: 519.287 INFO:tensorflow:loss = 0.009031234, step = 37501 (0.193 sec) INFO:tensorflow:global_step/sec: 578.978 INFO:tensorflow:loss = 0.020729389, step = 37601 (0.174 sec) INFO:tensorflow:global_step/sec: 508.348 INFO:tensorflow:loss = 0.0104787145, step = 37701 (0.196 sec) INFO:tensorflow:global_step/sec: 547.962 INFO:tensorflow:loss = 0.006090905, step = 37801 (0.183 sec) INFO:tensorflow:global_step/sec: 512.349 INFO:tensorflow:loss = 0.027446099, step = 37901 (0.195 sec) INFO:tensorflow:global_step/sec: 549.77 INFO:tensorflow:loss = 0.010040886, step = 38001 (0.182 sec) INFO:tensorflow:global_step/sec: 565.766 INFO:tensorflow:loss = 0.0040907385, step = 38101 (0.177 sec) INFO:tensorflow:global_step/sec: 554.925 INFO:tensorflow:loss = 0.0064082625, step = 38201 (0.180 sec) INFO:tensorflow:global_step/sec: 555.812 INFO:tensorflow:loss = 0.016764032, step = 38301 (0.180 sec) INFO:tensorflow:global_step/sec: 532.655 INFO:tensorflow:loss = 0.015445124, step = 38401 (0.188 sec) INFO:tensorflow:global_step/sec: 571.298 INFO:tensorflow:loss = 0.005340596, step = 38501 (0.175 sec) INFO:tensorflow:global_step/sec: 585.672 INFO:tensorflow:loss = 0.010536489, step = 38601 (0.171 sec) INFO:tensorflow:global_step/sec: 567.296 INFO:tensorflow:loss = 0.00047024354, step = 38701 (0.177 sec) INFO:tensorflow:global_step/sec: 512.224 INFO:tensorflow:loss = 0.0044144113, step = 38801 (0.195 sec) INFO:tensorflow:global_step/sec: 582.423 INFO:tensorflow:loss = 0.0033733537, step = 38901 (0.172 sec) INFO:tensorflow:global_step/sec: 528.837 INFO:tensorflow:loss = 0.012416655, step = 39001 (0.189 sec) INFO:tensorflow:global_step/sec: 512.397 INFO:tensorflow:loss = 0.0012967619, step = 39101 (0.195 sec) INFO:tensorflow:global_step/sec: 540.912 INFO:tensorflow:loss = 0.035943344, step = 39201 (0.185 sec) INFO:tensorflow:global_step/sec: 516.765 INFO:tensorflow:loss = 0.0027524238, step = 39301 (0.193 sec) INFO:tensorflow:global_step/sec: 550.879 INFO:tensorflow:loss = 0.0010044426, step = 39401 (0.181 sec) INFO:tensorflow:global_step/sec: 519.646 INFO:tensorflow:loss = 0.013848992, step = 39501 (0.193 sec) INFO:tensorflow:global_step/sec: 521.074 INFO:tensorflow:loss = 0.042146713, step = 39601 (0.192 sec) INFO:tensorflow:global_step/sec: 564.182 INFO:tensorflow:loss = 0.0022740923, step = 39701 (0.177 sec) INFO:tensorflow:global_step/sec: 539.981 INFO:tensorflow:loss = 0.007475619, step = 39801 (0.185 sec) INFO:tensorflow:global_step/sec: 539.563 INFO:tensorflow:loss = 0.013219342, step = 39901 (0.185 sec) INFO:tensorflow:global_step/sec: 575.774 INFO:tensorflow:loss = 0.005512397, step = 40001 (0.174 sec) INFO:tensorflow:global_step/sec: 532.441 INFO:tensorflow:loss = 0.027387971, step = 40101 (0.188 sec) INFO:tensorflow:global_step/sec: 530.021 INFO:tensorflow:loss = 0.045892507, step = 40201 (0.189 sec) INFO:tensorflow:global_step/sec: 547.763 INFO:tensorflow:loss = 0.013453027, step = 40301 (0.182 sec) INFO:tensorflow:global_step/sec: 565.221 INFO:tensorflow:loss = 0.013412428, step = 40401 (0.177 sec) INFO:tensorflow:global_step/sec: 533.169 INFO:tensorflow:loss = 0.04231118, step = 40501 (0.188 sec) INFO:tensorflow:global_step/sec: 531.827 INFO:tensorflow:loss = 0.044293113, step = 40601 (0.188 sec) INFO:tensorflow:global_step/sec: 550.118 INFO:tensorflow:loss = 0.0067848177, step = 40701 (0.182 sec) INFO:tensorflow:global_step/sec: 584.693 INFO:tensorflow:loss = 0.032841533, step = 40801 (0.171 sec) INFO:tensorflow:global_step/sec: 535.443 INFO:tensorflow:loss = 0.00746412, step = 40901 (0.187 sec) INFO:tensorflow:global_step/sec: 567.931 INFO:tensorflow:loss = 0.021296762, step = 41001 (0.176 sec) INFO:tensorflow:global_step/sec: 533.462 INFO:tensorflow:loss = 0.008851138, step = 41101 (0.187 sec) INFO:tensorflow:global_step/sec: 541.683 INFO:tensorflow:loss = 0.005806368, step = 41201 (0.185 sec) INFO:tensorflow:global_step/sec: 515.098 INFO:tensorflow:loss = 0.008331387, step = 41301 (0.194 sec) INFO:tensorflow:global_step/sec: 562.414 INFO:tensorflow:loss = 0.007950978, step = 41401 (0.178 sec) INFO:tensorflow:global_step/sec: 569.406 INFO:tensorflow:loss = 0.08545297, step = 41501 (0.176 sec) INFO:tensorflow:global_step/sec: 520.468 INFO:tensorflow:loss = 0.011263645, step = 41601 (0.192 sec) INFO:tensorflow:global_step/sec: 541.947 INFO:tensorflow:loss = 0.006076463, step = 41701 (0.185 sec) INFO:tensorflow:global_step/sec: 568.799 INFO:tensorflow:loss = 0.009995136, step = 41801 (0.176 sec) INFO:tensorflow:global_step/sec: 499.653 INFO:tensorflow:loss = 0.012567114, step = 41901 (0.200 sec) INFO:tensorflow:global_step/sec: 511.896 INFO:tensorflow:loss = 0.02049037, step = 42001 (0.195 sec) INFO:tensorflow:global_step/sec: 569.908 INFO:tensorflow:loss = 0.010155819, step = 42101 (0.175 sec) INFO:tensorflow:global_step/sec: 569.764 INFO:tensorflow:loss = 0.0035195504, step = 42201 (0.176 sec) INFO:tensorflow:global_step/sec: 533.654 INFO:tensorflow:loss = 0.0019364416, step = 42301 (0.187 sec) INFO:tensorflow:global_step/sec: 534.942 INFO:tensorflow:loss = 0.0045584384, step = 42401 (0.187 sec) INFO:tensorflow:global_step/sec: 539.342 INFO:tensorflow:loss = 0.006920579, step = 42501 (0.185 sec) INFO:tensorflow:global_step/sec: 564.25 INFO:tensorflow:loss = 0.009331305, step = 42601 (0.177 sec) INFO:tensorflow:global_step/sec: 540.177 INFO:tensorflow:loss = 0.0036617266, step = 42701 (0.185 sec) INFO:tensorflow:global_step/sec: 501.728 INFO:tensorflow:loss = 0.0027828994, step = 42801 (0.199 sec) INFO:tensorflow:global_step/sec: 545.326 INFO:tensorflow:loss = 0.032777697, step = 42901 (0.183 sec) INFO:tensorflow:global_step/sec: 586.393 INFO:tensorflow:loss = 0.00010311474, step = 43001 (0.170 sec) INFO:tensorflow:global_step/sec: 549.013 INFO:tensorflow:loss = 0.008474188, step = 43101 (0.182 sec) INFO:tensorflow:global_step/sec: 520.239 INFO:tensorflow:loss = 0.01432121, step = 43201 (0.192 sec) INFO:tensorflow:global_step/sec: 521.753 INFO:tensorflow:loss = 0.0067292107, step = 43301 (0.192 sec) INFO:tensorflow:global_step/sec: 574.87 INFO:tensorflow:loss = 0.012926378, step = 43401 (0.174 sec) INFO:tensorflow:global_step/sec: 558.866 INFO:tensorflow:loss = 0.0008270074, step = 43501 (0.179 sec) INFO:tensorflow:global_step/sec: 518.361 INFO:tensorflow:loss = 0.0009860055, step = 43601 (0.193 sec) INFO:tensorflow:global_step/sec: 570.306 INFO:tensorflow:loss = 0.016725576, step = 43701 (0.175 sec) INFO:tensorflow:global_step/sec: 541.511 INFO:tensorflow:loss = 0.029001798, step = 43801 (0.185 sec) INFO:tensorflow:global_step/sec: 558.246 INFO:tensorflow:loss = 0.0050913715, step = 43901 (0.179 sec) INFO:tensorflow:Saving checkpoints for 44000 into /tmp/tmpojfdm9i4/model.ckpt. INFO:tensorflow:Loss for final step: 0.007587311.
<tensorflow_estimator.python.estimator.canned.dnn.DNNClassifier at 0x7fd26e24c978>
test_input_fn = tf.estimator.inputs.numpy_input_fn(
x={"X": X_test}, y=y_test, shuffle=False)
eval_results = dnn_clf.evaluate(input_fn=test_input_fn)
INFO:tensorflow:Calling model_fn. INFO:tensorflow:Done calling model_fn. INFO:tensorflow:Starting evaluation at 2019-03-05T07:47:05Z INFO:tensorflow:Graph was finalized. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/python/training/saver.py:1266: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version. Instructions for updating: Use standard file APIs to check for files with this prefix. INFO:tensorflow:Restoring parameters from /tmp/tmpojfdm9i4/model.ckpt-44000 INFO:tensorflow:Running local_init_op. INFO:tensorflow:Done running local_init_op. INFO:tensorflow:Finished evaluation at 2019-03-05-07:47:05 INFO:tensorflow:Saving dict for global step 44000: accuracy = 0.9805, average_loss = 0.10441127, global_step = 44000, loss = 13.216616 INFO:tensorflow:Saving 'checkpoint_path' summary for global step 44000: /tmp/tmpojfdm9i4/model.ckpt-44000
eval_results
{'accuracy': 0.9805, 'average_loss': 0.10441127, 'loss': 13.216616, 'global_step': 44000}
y_pred_iter = dnn_clf.predict(input_fn=test_input_fn)
y_pred = list(y_pred_iter)
y_pred[0]
INFO:tensorflow:Calling model_fn. INFO:tensorflow:Done calling model_fn. INFO:tensorflow:Graph was finalized. INFO:tensorflow:Restoring parameters from /tmp/tmpojfdm9i4/model.ckpt-44000 INFO:tensorflow:Running local_init_op. INFO:tensorflow:Done running local_init_op.
{'logits': array([ -1.8939482 , 1.5261059 , -4.122183 , 0.98258054, -6.645769 , -3.2733636 , -16.164238 , 24.242487 , 1.1082871 , 1.5906262 ], dtype=float32), 'probabilities': array([4.4574934e-12, 1.3627025e-10, 4.8015384e-13, 7.9131764e-11, 3.8494690e-14, 1.1220653e-12, 2.8286756e-18, 1.0000000e+00, 8.9731507e-11, 1.4535223e-10], dtype=float32), 'class_ids': array([7]), 'classes': array([b'7'], dtype=object)}
tf.contrib.learn
을 사용¶# from tensorflow.examples.tutorials.mnist import input_data
# mnist = input_data.read_data_sets("/tmp/data/")
# X_train = mnist.train.images
# X_test = mnist.test.images
# y_train = mnist.train.labels.astype("int")
# y_test = mnist.test.labels.astype("int")
config = tf.contrib.learn.RunConfig(tf_random_seed=42) # 책에는 없음
feature_cols = tf.contrib.learn.infer_real_valued_columns_from_input(X_train)
dnn_clf = tf.contrib.learn.DNNClassifier(hidden_units=[300,100], n_classes=10,
feature_columns=feature_cols, config=config)
dnn_clf = tf.contrib.learn.SKCompat(dnn_clf) # if TensorFlow >= 1.1
tf.logging.set_verbosity(tf.logging.INFO)
dnn_clf.fit(X_train, y_train, batch_size=50, steps=40000)
WARNING: The TensorFlow contrib module will not be included in TensorFlow 2.0. For more information, please see: * https://github.com/tensorflow/community/blob/master/rfcs/20180907-contrib-sunset.md * https://github.com/tensorflow/addons If you depend on functionality not listed there, please file an issue. WARNING:tensorflow:From <ipython-input-18-0efa993935b9>:1: RunConfig.__init__ (from tensorflow.contrib.learn.python.learn.estimators.run_config) is deprecated and will be removed in a future version. Instructions for updating: When switching to tf.estimator.Estimator, use tf.estimator.RunConfig instead. WARNING:tensorflow:From <ipython-input-18-0efa993935b9>:3: infer_real_valued_columns_from_input (from tensorflow.contrib.learn.python.learn.estimators.estimator) is deprecated and will be removed in a future version. Instructions for updating: Please specify feature columns explicitly. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/contrib/learn/python/learn/estimators/estimator.py:143: setup_train_data_feeder (from tensorflow.contrib.learn.python.learn.learn_io.data_feeder) is deprecated and will be removed in a future version. Instructions for updating: Please use tensorflow/transform or tf.data. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/contrib/learn/python/learn/learn_io/data_feeder.py:100: extract_pandas_data (from tensorflow.contrib.learn.python.learn.learn_io.pandas_io) is deprecated and will be removed in a future version. Instructions for updating: Please access pandas data directly. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/contrib/learn/python/learn/learn_io/data_feeder.py:159: DataFeeder.__init__ (from tensorflow.contrib.learn.python.learn.learn_io.data_feeder) is deprecated and will be removed in a future version. Instructions for updating: Please use tensorflow/transform or tf.data. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/contrib/learn/python/learn/learn_io/data_feeder.py:340: check_array (from tensorflow.contrib.learn.python.learn.learn_io.data_feeder) is deprecated and will be removed in a future version. Instructions for updating: Please convert numpy dtypes explicitly. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/contrib/learn/python/learn/estimators/estimator.py:183: infer_real_valued_columns_from_input_fn (from tensorflow.contrib.learn.python.learn.estimators.estimator) is deprecated and will be removed in a future version. Instructions for updating: Please specify feature columns explicitly. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/contrib/learn/python/learn/estimators/dnn.py:378: multi_class_head (from tensorflow.contrib.learn.python.learn.estimators.head) is deprecated and will be removed in a future version. Instructions for updating: Please switch to tf.contrib.estimator.*_head. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/contrib/learn/python/learn/estimators/estimator.py:1179: BaseEstimator.__init__ (from tensorflow.contrib.learn.python.learn.estimators.estimator) is deprecated and will be removed in a future version. Instructions for updating: Please replace uses of any Estimator from tf.contrib.learn with an Estimator from tf.estimator.* WARNING:tensorflow:Using temporary folder as model directory: /tmp/tmpgxyz4krv INFO:tensorflow:Using config: {'_task_type': None, '_task_id': 0, '_cluster_spec': <tensorflow.python.training.server_lib.ClusterSpec object at 0x7fd25e595198>, '_master': '', '_num_ps_replicas': 0, '_num_worker_replicas': 0, '_environment': 'local', '_is_chief': True, '_evaluation_master': '', '_train_distribute': None, '_eval_distribute': None, '_device_fn': None, '_tf_config': gpu_options { per_process_gpu_memory_fraction: 1.0 } , '_tf_random_seed': 42, '_save_summary_steps': 100, '_save_checkpoints_secs': 600, '_log_step_count_steps': 100, '_protocol': None, '_session_config': None, '_save_checkpoints_steps': None, '_keep_checkpoint_max': 5, '_keep_checkpoint_every_n_hours': 10000, '_model_dir': '/tmp/tmpgxyz4krv'} WARNING:tensorflow:From <ipython-input-18-0efa993935b9>:6: SKCompat.__init__ (from tensorflow.contrib.learn.python.learn.estimators.estimator) is deprecated and will be removed in a future version. Instructions for updating: Please switch to the Estimator interface. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/contrib/learn/python/learn/learn_io/data_feeder.py:102: extract_pandas_labels (from tensorflow.contrib.learn.python.learn.learn_io.pandas_io) is deprecated and will be removed in a future version. Instructions for updating: Please access pandas data directly. WARNING:tensorflow:From /home/haesun/anaconda3/envs/handson-ml/lib/python3.6/site-packages/tensorflow/contrib/learn/python/learn/estimators/head.py:677: ModelFnOps.__new__ (from tensorflow.contrib.learn.python.learn.estimators.model_fn) is deprecated and will be removed in a future version. Instructions for updating: When switching to tf.estimator.Estimator, use tf.estimator.EstimatorSpec. You can use the `estimator_spec` method to create an equivalent one. INFO:tensorflow:Create CheckpointSaverHook. INFO:tensorflow:Graph was finalized. INFO:tensorflow:Running local_init_op. INFO:tensorflow:Done running local_init_op. INFO:tensorflow:Saving checkpoints for 0 into /tmp/tmpgxyz4krv/model.ckpt. INFO:tensorflow:loss = 2.3451102, step = 1 INFO:tensorflow:global_step/sec: 492.083 INFO:tensorflow:loss = 0.31802297, step = 101 (0.204 sec) INFO:tensorflow:global_step/sec: 548.838 INFO:tensorflow:loss = 0.30232447, step = 201 (0.182 sec) INFO:tensorflow:global_step/sec: 551.427 INFO:tensorflow:loss = 0.38436472, step = 301 (0.181 sec) INFO:tensorflow:global_step/sec: 551.788 INFO:tensorflow:loss = 0.2465452, step = 401 (0.181 sec) INFO:tensorflow:global_step/sec: 589.248 INFO:tensorflow:loss = 0.25312555, step = 501 (0.170 sec) INFO:tensorflow:global_step/sec: 573.652 INFO:tensorflow:loss = 0.056727532, step = 601 (0.174 sec) INFO:tensorflow:global_step/sec: 535.505 INFO:tensorflow:loss = 0.13340972, step = 701 (0.187 sec) INFO:tensorflow:global_step/sec: 607.266 INFO:tensorflow:loss = 0.20130588, step = 801 (0.165 sec) INFO:tensorflow:global_step/sec: 562.028 INFO:tensorflow:loss = 0.12044342, step = 901 (0.178 sec) INFO:tensorflow:global_step/sec: 589.589 INFO:tensorflow:loss = 0.20554487, step = 1001 (0.170 sec) INFO:tensorflow:global_step/sec: 584.346 INFO:tensorflow:loss = 0.19413483, step = 1101 (0.171 sec) INFO:tensorflow:global_step/sec: 571.292 INFO:tensorflow:loss = 0.15674618, step = 1201 (0.175 sec) INFO:tensorflow:global_step/sec: 582.003 INFO:tensorflow:loss = 0.19098362, step = 1301 (0.172 sec) INFO:tensorflow:global_step/sec: 540.3 INFO:tensorflow:loss = 0.055449057, step = 1401 (0.185 sec) INFO:tensorflow:global_step/sec: 549.329 INFO:tensorflow:loss = 0.09881707, step = 1501 (0.182 sec) INFO:tensorflow:global_step/sec: 569.226 INFO:tensorflow:loss = 0.1162917, step = 1601 (0.176 sec) INFO:tensorflow:global_step/sec: 603.679 INFO:tensorflow:loss = 0.046873286, step = 1701 (0.166 sec) INFO:tensorflow:global_step/sec: 566.413 INFO:tensorflow:loss = 0.12048383, step = 1801 (0.177 sec) INFO:tensorflow:global_step/sec: 550.63 INFO:tensorflow:loss = 0.069441885, step = 1901 (0.181 sec) INFO:tensorflow:global_step/sec: 562.451 INFO:tensorflow:loss = 0.085839644, step = 2001 (0.178 sec) INFO:tensorflow:global_step/sec: 542.098 INFO:tensorflow:loss = 0.033949643, step = 2101 (0.184 sec) INFO:tensorflow:global_step/sec: 587.169 INFO:tensorflow:loss = 0.030171711, step = 2201 (0.170 sec) INFO:tensorflow:global_step/sec: 620.304 INFO:tensorflow:loss = 0.061152652, step = 2301 (0.161 sec) INFO:tensorflow:global_step/sec: 597.122 INFO:tensorflow:loss = 0.039993852, step = 2401 (0.168 sec) INFO:tensorflow:global_step/sec: 588.535 INFO:tensorflow:loss = 0.075442255, step = 2501 (0.170 sec) INFO:tensorflow:global_step/sec: 613.202 INFO:tensorflow:loss = 0.05732553, step = 2601 (0.163 sec) INFO:tensorflow:global_step/sec: 579.699 INFO:tensorflow:loss = 0.030963503, step = 2701 (0.172 sec) INFO:tensorflow:global_step/sec: 579.885 INFO:tensorflow:loss = 0.041068997, step = 2801 (0.172 sec) INFO:tensorflow:global_step/sec: 616.332 INFO:tensorflow:loss = 0.072006404, step = 2901 (0.162 sec) INFO:tensorflow:global_step/sec: 598.507 INFO:tensorflow:loss = 0.022036154, step = 3001 (0.167 sec) INFO:tensorflow:global_step/sec: 570.647 INFO:tensorflow:loss = 0.05341647, step = 3101 (0.175 sec) INFO:tensorflow:global_step/sec: 588.379 INFO:tensorflow:loss = 0.017184652, step = 3201 (0.170 sec) INFO:tensorflow:global_step/sec: 612.442 INFO:tensorflow:loss = 0.020275978, step = 3301 (0.163 sec) INFO:tensorflow:global_step/sec: 566.463 INFO:tensorflow:loss = 0.159838, step = 3401 (0.177 sec) INFO:tensorflow:global_step/sec: 587.199 INFO:tensorflow:loss = 0.09738517, step = 3501 (0.170 sec) INFO:tensorflow:global_step/sec: 584.06 INFO:tensorflow:loss = 0.14237829, step = 3601 (0.171 sec) INFO:tensorflow:global_step/sec: 612.104 INFO:tensorflow:loss = 0.036337003, step = 3701 (0.163 sec) INFO:tensorflow:global_step/sec: 569.587 INFO:tensorflow:loss = 0.014561833, step = 3801 (0.176 sec) INFO:tensorflow:global_step/sec: 564.302 INFO:tensorflow:loss = 0.057594523, step = 3901 (0.177 sec) INFO:tensorflow:global_step/sec: 557.231 INFO:tensorflow:loss = 0.10828104, step = 4001 (0.179 sec) INFO:tensorflow:global_step/sec: 558.003 INFO:tensorflow:loss = 0.031443182, step = 4101 (0.179 sec) INFO:tensorflow:global_step/sec: 571.632 INFO:tensorflow:loss = 0.042048283, step = 4201 (0.175 sec) INFO:tensorflow:global_step/sec: 557.663 INFO:tensorflow:loss = 0.11971554, step = 4301 (0.179 sec) INFO:tensorflow:global_step/sec: 618.754 INFO:tensorflow:loss = 0.13275144, step = 4401 (0.162 sec) INFO:tensorflow:global_step/sec: 619.969 INFO:tensorflow:loss = 0.027946675, step = 4501 (0.161 sec) INFO:tensorflow:global_step/sec: 619.538 INFO:tensorflow:loss = 0.021402497, step = 4601 (0.162 sec) INFO:tensorflow:global_step/sec: 576.311 INFO:tensorflow:loss = 0.010770836, step = 4701 (0.173 sec) INFO:tensorflow:global_step/sec: 588.946 INFO:tensorflow:loss = 0.029937793, step = 4801 (0.170 sec) INFO:tensorflow:global_step/sec: 554.656 INFO:tensorflow:loss = 0.06171802, step = 4901 (0.180 sec) INFO:tensorflow:global_step/sec: 534.011 INFO:tensorflow:loss = 0.07065291, step = 5001 (0.187 sec) INFO:tensorflow:global_step/sec: 588.273 INFO:tensorflow:loss = 0.009426829, step = 5101 (0.170 sec) INFO:tensorflow:global_step/sec: 577.549 INFO:tensorflow:loss = 0.047650453, step = 5201 (0.173 sec) INFO:tensorflow:global_step/sec: 561.435 INFO:tensorflow:loss = 0.035001382, step = 5301 (0.178 sec) INFO:tensorflow:global_step/sec: 580.966 INFO:tensorflow:loss = 0.02803141, step = 5401 (0.172 sec) INFO:tensorflow:global_step/sec: 600.08 INFO:tensorflow:loss = 0.03274735, step = 5501 (0.167 sec) INFO:tensorflow:global_step/sec: 606.303 INFO:tensorflow:loss = 0.05977501, step = 5601 (0.165 sec) INFO:tensorflow:global_step/sec: 573.619 INFO:tensorflow:loss = 0.011078225, step = 5701 (0.174 sec) INFO:tensorflow:global_step/sec: 618.428 INFO:tensorflow:loss = 0.011373464, step = 5801 (0.162 sec) INFO:tensorflow:global_step/sec: 613.541 INFO:tensorflow:loss = 0.072194636, step = 5901 (0.163 sec) INFO:tensorflow:global_step/sec: 588.366 INFO:tensorflow:loss = 0.08580964, step = 6001 (0.171 sec) INFO:tensorflow:global_step/sec: 585.879 INFO:tensorflow:loss = 0.016766634, step = 6101 (0.170 sec) INFO:tensorflow:global_step/sec: 577.96 INFO:tensorflow:loss = 0.014873489, step = 6201 (0.173 sec) INFO:tensorflow:global_step/sec: 605.04 INFO:tensorflow:loss = 0.045027524, step = 6301 (0.165 sec) INFO:tensorflow:global_step/sec: 588.952 INFO:tensorflow:loss = 0.036739245, step = 6401 (0.170 sec) INFO:tensorflow:global_step/sec: 629.081 INFO:tensorflow:loss = 0.0196109, step = 6501 (0.159 sec) INFO:tensorflow:global_step/sec: 594.989 INFO:tensorflow:loss = 0.012298155, step = 6601 (0.168 sec) INFO:tensorflow:global_step/sec: 589.404 INFO:tensorflow:loss = 0.010495988, step = 6701 (0.170 sec) INFO:tensorflow:global_step/sec: 580.961 INFO:tensorflow:loss = 0.013333989, step = 6801 (0.172 sec) INFO:tensorflow:global_step/sec: 538.957 INFO:tensorflow:loss = 0.008744521, step = 6901 (0.185 sec) INFO:tensorflow:global_step/sec: 618.507 INFO:tensorflow:loss = 0.025936853, step = 7001 (0.162 sec) INFO:tensorflow:global_step/sec: 618.054 INFO:tensorflow:loss = 0.005803064, step = 7101 (0.162 sec) INFO:tensorflow:global_step/sec: 608.39 INFO:tensorflow:loss = 0.042505816, step = 7201 (0.165 sec) INFO:tensorflow:global_step/sec: 562.192 INFO:tensorflow:loss = 0.004921202, step = 7301 (0.178 sec) INFO:tensorflow:global_step/sec: 576.096 INFO:tensorflow:loss = 0.016862536, step = 7401 (0.174 sec) INFO:tensorflow:global_step/sec: 565.508 INFO:tensorflow:loss = 0.005889205, step = 7501 (0.177 sec) INFO:tensorflow:global_step/sec: 603.045 INFO:tensorflow:loss = 0.034333896, step = 7601 (0.166 sec) INFO:tensorflow:global_step/sec: 603.486 INFO:tensorflow:loss = 0.0077809785, step = 7701 (0.166 sec) INFO:tensorflow:global_step/sec: 615.063 INFO:tensorflow:loss = 0.004997916, step = 7801 (0.163 sec) INFO:tensorflow:global_step/sec: 567.656 INFO:tensorflow:loss = 0.020938748, step = 7901 (0.176 sec) INFO:tensorflow:global_step/sec: 583.101 INFO:tensorflow:loss = 0.005703023, step = 8001 (0.172 sec) INFO:tensorflow:global_step/sec: 584.888 INFO:tensorflow:loss = 0.015334785, step = 8101 (0.171 sec) INFO:tensorflow:global_step/sec: 603.16 INFO:tensorflow:loss = 0.019969221, step = 8201 (0.166 sec) INFO:tensorflow:global_step/sec: 578.731 INFO:tensorflow:loss = 0.045110244, step = 8301 (0.173 sec) INFO:tensorflow:global_step/sec: 576.411 INFO:tensorflow:loss = 0.0050535067, step = 8401 (0.174 sec) INFO:tensorflow:global_step/sec: 612.831 INFO:tensorflow:loss = 0.007333615, step = 8501 (0.163 sec) INFO:tensorflow:global_step/sec: 608.972 INFO:tensorflow:loss = 0.0036406762, step = 8601 (0.164 sec) INFO:tensorflow:global_step/sec: 557.772 INFO:tensorflow:loss = 0.001994214, step = 8701 (0.180 sec) INFO:tensorflow:global_step/sec: 576.959 INFO:tensorflow:loss = 0.008269597, step = 8801 (0.173 sec) INFO:tensorflow:global_step/sec: 587.816 INFO:tensorflow:loss = 0.003621273, step = 8901 (0.170 sec) INFO:tensorflow:global_step/sec: 536.069 INFO:tensorflow:loss = 0.0045940853, step = 9001 (0.187 sec) INFO:tensorflow:global_step/sec: 549.008 INFO:tensorflow:loss = 0.005486887, step = 9101 (0.182 sec) INFO:tensorflow:global_step/sec: 542.454 INFO:tensorflow:loss = 0.006724998, step = 9201 (0.184 sec) INFO:tensorflow:global_step/sec: 606.428 INFO:tensorflow:loss = 0.014083808, step = 9301 (0.165 sec) INFO:tensorflow:global_step/sec: 559.246 INFO:tensorflow:loss = 0.036959503, step = 9401 (0.179 sec) INFO:tensorflow:global_step/sec: 620.778 INFO:tensorflow:loss = 0.0062059658, step = 9501 (0.161 sec) INFO:tensorflow:global_step/sec: 622.896 INFO:tensorflow:loss = 0.009496834, step = 9601 (0.161 sec) INFO:tensorflow:global_step/sec: 562.215 INFO:tensorflow:loss = 0.008183774, step = 9701 (0.178 sec) INFO:tensorflow:global_step/sec: 538.749 INFO:tensorflow:loss = 0.00429501, step = 9801 (0.186 sec) INFO:tensorflow:global_step/sec: 525.39 INFO:tensorflow:loss = 0.019238504, step = 9901 (0.190 sec) INFO:tensorflow:global_step/sec: 596.887 INFO:tensorflow:loss = 0.0076530827, step = 10001 (0.168 sec) INFO:tensorflow:global_step/sec: 621.385 INFO:tensorflow:loss = 0.004769493, step = 10101 (0.161 sec) INFO:tensorflow:global_step/sec: 579.676 INFO:tensorflow:loss = 0.0067348373, step = 10201 (0.172 sec) INFO:tensorflow:global_step/sec: 555.509 INFO:tensorflow:loss = 0.0044888672, step = 10301 (0.180 sec) INFO:tensorflow:global_step/sec: 564.635 INFO:tensorflow:loss = 0.0026622459, step = 10401 (0.177 sec) INFO:tensorflow:global_step/sec: 620.918 INFO:tensorflow:loss = 0.002560972, step = 10501 (0.161 sec) INFO:tensorflow:global_step/sec: 566.355 INFO:tensorflow:loss = 0.010731762, step = 10601 (0.177 sec) INFO:tensorflow:global_step/sec: 569.153 INFO:tensorflow:loss = 0.02476872, step = 10701 (0.176 sec) INFO:tensorflow:global_step/sec: 605.303 INFO:tensorflow:loss = 0.005142131, step = 10801 (0.165 sec) INFO:tensorflow:global_step/sec: 555.011 INFO:tensorflow:loss = 0.0014687899, step = 10901 (0.180 sec) INFO:tensorflow:global_step/sec: 603.142 INFO:tensorflow:loss = 0.021500275, step = 11001 (0.166 sec) INFO:tensorflow:global_step/sec: 565.798 INFO:tensorflow:loss = 0.0057202443, step = 11101 (0.178 sec) INFO:tensorflow:global_step/sec: 557.872 INFO:tensorflow:loss = 0.0013711127, step = 11201 (0.178 sec) INFO:tensorflow:global_step/sec: 554.369 INFO:tensorflow:loss = 0.0060190703, step = 11301 (0.180 sec) INFO:tensorflow:global_step/sec: 610.71 INFO:tensorflow:loss = 0.0090283295, step = 11401 (0.164 sec) INFO:tensorflow:global_step/sec: 613.598 INFO:tensorflow:loss = 0.012596136, step = 11501 (0.163 sec) INFO:tensorflow:global_step/sec: 550.469 INFO:tensorflow:loss = 0.00064278586, step = 11601 (0.182 sec) INFO:tensorflow:global_step/sec: 601.298 INFO:tensorflow:loss = 0.0032277638, step = 11701 (0.167 sec) INFO:tensorflow:global_step/sec: 600.687 INFO:tensorflow:loss = 0.00027793134, step = 11801 (0.166 sec) INFO:tensorflow:global_step/sec: 607.145 INFO:tensorflow:loss = 0.0037988091, step = 11901 (0.165 sec) INFO:tensorflow:global_step/sec: 563.581 INFO:tensorflow:loss = 0.00030214098, step = 12001 (0.177 sec) INFO:tensorflow:global_step/sec: 592.417 INFO:tensorflow:loss = 0.0012906775, step = 12101 (0.169 sec) INFO:tensorflow:global_step/sec: 600.366 INFO:tensorflow:loss = 0.0041380553, step = 12201 (0.167 sec) INFO:tensorflow:global_step/sec: 599.099 INFO:tensorflow:loss = 0.0039740186, step = 12301 (0.167 sec) INFO:tensorflow:global_step/sec: 615.799 INFO:tensorflow:loss = 0.0008845813, step = 12401 (0.163 sec) INFO:tensorflow:global_step/sec: 562.53 INFO:tensorflow:loss = 0.006382004, step = 12501 (0.177 sec) INFO:tensorflow:global_step/sec: 611.096 INFO:tensorflow:loss = 0.0021671809, step = 12601 (0.164 sec) INFO:tensorflow:global_step/sec: 547.824 INFO:tensorflow:loss = 0.002999243, step = 12701 (0.183 sec) INFO:tensorflow:global_step/sec: 570.045 INFO:tensorflow:loss = 0.0053828782, step = 12801 (0.174 sec) INFO:tensorflow:global_step/sec: 534.289 INFO:tensorflow:loss = 0.0030581472, step = 12901 (0.187 sec) INFO:tensorflow:global_step/sec: 577.816 INFO:tensorflow:loss = 0.0032504764, step = 13001 (0.173 sec) INFO:tensorflow:global_step/sec: 580.441 INFO:tensorflow:loss = 0.0015980683, step = 13101 (0.172 sec) INFO:tensorflow:global_step/sec: 612.77 INFO:tensorflow:loss = 0.004015964, step = 13201 (0.163 sec) INFO:tensorflow:global_step/sec: 580.735 INFO:tensorflow:loss = 0.0038952255, step = 13301 (0.172 sec) INFO:tensorflow:global_step/sec: 556.595 INFO:tensorflow:loss = 0.0071106986, step = 13401 (0.180 sec) INFO:tensorflow:global_step/sec: 578.827 INFO:tensorflow:loss = 0.0056826817, step = 13501 (0.172 sec) INFO:tensorflow:global_step/sec: 592.26 INFO:tensorflow:loss = 0.0058757868, step = 13601 (0.169 sec) INFO:tensorflow:global_step/sec: 567.649 INFO:tensorflow:loss = 0.0019712867, step = 13701 (0.176 sec) INFO:tensorflow:global_step/sec: 547.201 INFO:tensorflow:loss = 0.0029933276, step = 13801 (0.183 sec) INFO:tensorflow:global_step/sec: 619.975 INFO:tensorflow:loss = 0.002517118, step = 13901 (0.162 sec) INFO:tensorflow:global_step/sec: 594.389 INFO:tensorflow:loss = 0.0020566876, step = 14001 (0.168 sec) INFO:tensorflow:global_step/sec: 601.399 INFO:tensorflow:loss = 0.005713878, step = 14101 (0.166 sec) INFO:tensorflow:global_step/sec: 615.628 INFO:tensorflow:loss = 0.004194613, step = 14201 (0.163 sec) INFO:tensorflow:global_step/sec: 529.633 INFO:tensorflow:loss = 0.00066771626, step = 14301 (0.189 sec) INFO:tensorflow:global_step/sec: 588.809 INFO:tensorflow:loss = 0.0007644817, step = 14401 (0.170 sec) INFO:tensorflow:global_step/sec: 604.576 INFO:tensorflow:loss = 0.0010867632, step = 14501 (0.165 sec) INFO:tensorflow:global_step/sec: 564.36 INFO:tensorflow:loss = 0.0056726024, step = 14601 (0.177 sec) INFO:tensorflow:global_step/sec: 581.413 INFO:tensorflow:loss = 0.0004162171, step = 14701 (0.172 sec) INFO:tensorflow:global_step/sec: 553.605 INFO:tensorflow:loss = 0.0006648994, step = 14801 (0.181 sec) INFO:tensorflow:global_step/sec: 596.712 INFO:tensorflow:loss = 0.0019335021, step = 14901 (0.168 sec) INFO:tensorflow:global_step/sec: 581.687 INFO:tensorflow:loss = 0.00064709253, step = 15001 (0.172 sec) INFO:tensorflow:global_step/sec: 588.46 INFO:tensorflow:loss = 0.001985025, step = 15101 (0.170 sec) INFO:tensorflow:global_step/sec: 585.244 INFO:tensorflow:loss = 0.0023689247, step = 15201 (0.171 sec) INFO:tensorflow:global_step/sec: 585.036 INFO:tensorflow:loss = 0.0020909624, step = 15301 (0.171 sec) INFO:tensorflow:global_step/sec: 540.38 INFO:tensorflow:loss = 0.0032329368, step = 15401 (0.185 sec) INFO:tensorflow:global_step/sec: 587.736 INFO:tensorflow:loss = 0.0045683496, step = 15501 (0.173 sec) INFO:tensorflow:global_step/sec: 528.923 INFO:tensorflow:loss = 0.0026687828, step = 15601 (0.186 sec) INFO:tensorflow:global_step/sec: 553.657 INFO:tensorflow:loss = 0.0069907536, step = 15701 (0.181 sec) INFO:tensorflow:global_step/sec: 565.784 INFO:tensorflow:loss = 0.0020118984, step = 15801 (0.177 sec) INFO:tensorflow:global_step/sec: 600.593 INFO:tensorflow:loss = 0.0007071229, step = 15901 (0.166 sec) INFO:tensorflow:global_step/sec: 556.363 INFO:tensorflow:loss = 0.0040952037, step = 16001 (0.180 sec) INFO:tensorflow:global_step/sec: 582.518 INFO:tensorflow:loss = 0.0034461406, step = 16101 (0.172 sec) INFO:tensorflow:global_step/sec: 580.442 INFO:tensorflow:loss = 0.00014968254, step = 16201 (0.172 sec) INFO:tensorflow:global_step/sec: 574.646 INFO:tensorflow:loss = 0.0021619012, step = 16301 (0.174 sec) INFO:tensorflow:global_step/sec: 612.848 INFO:tensorflow:loss = 0.0012628483, step = 16401 (0.163 sec) INFO:tensorflow:global_step/sec: 573.874 INFO:tensorflow:loss = 0.001991824, step = 16501 (0.174 sec) INFO:tensorflow:global_step/sec: 531.659 INFO:tensorflow:loss = 0.002245477, step = 16601 (0.188 sec) INFO:tensorflow:global_step/sec: 462.623 INFO:tensorflow:loss = 0.0025873198, step = 16701 (0.216 sec) INFO:tensorflow:global_step/sec: 606.165 INFO:tensorflow:loss = 0.0019077093, step = 16801 (0.165 sec) INFO:tensorflow:global_step/sec: 577.656 INFO:tensorflow:loss = 0.0027277085, step = 16901 (0.173 sec) INFO:tensorflow:global_step/sec: 557.662 INFO:tensorflow:loss = 0.0033591322, step = 17001 (0.179 sec) INFO:tensorflow:global_step/sec: 612.466 INFO:tensorflow:loss = 0.00081264717, step = 17101 (0.163 sec) INFO:tensorflow:global_step/sec: 549.72 INFO:tensorflow:loss = 0.0028142184, step = 17201 (0.182 sec) INFO:tensorflow:global_step/sec: 619.118 INFO:tensorflow:loss = 0.0015742044, step = 17301 (0.162 sec) INFO:tensorflow:global_step/sec: 614.853 INFO:tensorflow:loss = 0.001303041, step = 17401 (0.164 sec) INFO:tensorflow:global_step/sec: 571.001 INFO:tensorflow:loss = 0.0012680978, step = 17501 (0.174 sec) INFO:tensorflow:global_step/sec: 581.156 INFO:tensorflow:loss = 0.00044543087, step = 17601 (0.172 sec) INFO:tensorflow:global_step/sec: 583.566 INFO:tensorflow:loss = 0.00048143737, step = 17701 (0.171 sec) INFO:tensorflow:global_step/sec: 516.066 INFO:tensorflow:loss = 0.000113162714, step = 17801 (0.194 sec) INFO:tensorflow:global_step/sec: 551.238 INFO:tensorflow:loss = 0.0022201536, step = 17901 (0.181 sec) INFO:tensorflow:global_step/sec: 557.068 INFO:tensorflow:loss = 0.00030681453, step = 18001 (0.180 sec) INFO:tensorflow:global_step/sec: 608.674 INFO:tensorflow:loss = 0.00073158706, step = 18101 (0.164 sec) INFO:tensorflow:global_step/sec: 540.467 INFO:tensorflow:loss = 0.0037087274, step = 18201 (0.185 sec) INFO:tensorflow:global_step/sec: 618.651 INFO:tensorflow:loss = 0.010514365, step = 18301 (0.162 sec) INFO:tensorflow:global_step/sec: 594.421 INFO:tensorflow:loss = 0.0027738074, step = 18401 (0.168 sec) INFO:tensorflow:global_step/sec: 600.108 INFO:tensorflow:loss = 0.0005838919, step = 18501 (0.167 sec) INFO:tensorflow:global_step/sec: 547.106 INFO:tensorflow:loss = 0.001977162, step = 18601 (0.183 sec) INFO:tensorflow:global_step/sec: 597.354 INFO:tensorflow:loss = 0.00084020704, step = 18701 (0.167 sec) INFO:tensorflow:global_step/sec: 576.933 INFO:tensorflow:loss = 0.0021770515, step = 18801 (0.173 sec) INFO:tensorflow:global_step/sec: 555.231 INFO:tensorflow:loss = 0.0031298078, step = 18901 (0.180 sec) INFO:tensorflow:global_step/sec: 607.102 INFO:tensorflow:loss = 0.0009287165, step = 19001 (0.165 sec) INFO:tensorflow:global_step/sec: 529.179 INFO:tensorflow:loss = 0.00043610687, step = 19101 (0.189 sec) INFO:tensorflow:global_step/sec: 630.364 INFO:tensorflow:loss = 0.00049805274, step = 19201 (0.159 sec) INFO:tensorflow:global_step/sec: 601.334 INFO:tensorflow:loss = 0.0047699637, step = 19301 (0.166 sec) INFO:tensorflow:global_step/sec: 613.145 INFO:tensorflow:loss = 0.00069915206, step = 19401 (0.163 sec) INFO:tensorflow:global_step/sec: 603.905 INFO:tensorflow:loss = 0.0023377547, step = 19501 (0.166 sec) INFO:tensorflow:global_step/sec: 541.987 INFO:tensorflow:loss = 0.0005096203, step = 19601 (0.184 sec) INFO:tensorflow:global_step/sec: 574.996 INFO:tensorflow:loss = 0.0002367841, step = 19701 (0.174 sec) INFO:tensorflow:global_step/sec: 573.716 INFO:tensorflow:loss = 0.0005644985, step = 19801 (0.174 sec) INFO:tensorflow:global_step/sec: 576.369 INFO:tensorflow:loss = 0.0011820027, step = 19901 (0.173 sec) INFO:tensorflow:global_step/sec: 587.91 INFO:tensorflow:loss = 0.0015222441, step = 20001 (0.170 sec) INFO:tensorflow:global_step/sec: 582.523 INFO:tensorflow:loss = 0.00070636696, step = 20101 (0.172 sec) INFO:tensorflow:global_step/sec: 590.359 INFO:tensorflow:loss = 0.0021241598, step = 20201 (0.171 sec) INFO:tensorflow:global_step/sec: 583.196 INFO:tensorflow:loss = 0.0015302488, step = 20301 (0.170 sec) INFO:tensorflow:global_step/sec: 544.823 INFO:tensorflow:loss = 0.00021270182, step = 20401 (0.184 sec) INFO:tensorflow:global_step/sec: 586.984 INFO:tensorflow:loss = 0.0010946243, step = 20501 (0.170 sec) INFO:tensorflow:global_step/sec: 589.415 INFO:tensorflow:loss = 0.0012895975, step = 20601 (0.170 sec) INFO:tensorflow:global_step/sec: 612.847 INFO:tensorflow:loss = 0.0006077198, step = 20701 (0.163 sec) INFO:tensorflow:global_step/sec: 568.112 INFO:tensorflow:loss = 0.0012670392, step = 20801 (0.176 sec) INFO:tensorflow:global_step/sec: 593.911 INFO:tensorflow:loss = 0.0008119062, step = 20901 (0.168 sec) INFO:tensorflow:global_step/sec: 598.572 INFO:tensorflow:loss = 0.0024994535, step = 21001 (0.167 sec) INFO:tensorflow:global_step/sec: 543.97 INFO:tensorflow:loss = 0.001212596, step = 21101 (0.184 sec) INFO:tensorflow:global_step/sec: 572.878 INFO:tensorflow:loss = 0.0044880807, step = 21201 (0.175 sec) INFO:tensorflow:global_step/sec: 569.419 INFO:tensorflow:loss = 0.0005579956, step = 21301 (0.176 sec) INFO:tensorflow:global_step/sec: 576.432 INFO:tensorflow:loss = 0.001666267, step = 21401 (0.173 sec) INFO:tensorflow:global_step/sec: 608.997 INFO:tensorflow:loss = 0.0003389172, step = 21501 (0.164 sec) INFO:tensorflow:global_step/sec: 577.587 INFO:tensorflow:loss = 0.0006626778, step = 21601 (0.174 sec) INFO:tensorflow:global_step/sec: 574.402 INFO:tensorflow:loss = 0.0011631178, step = 21701 (0.173 sec) INFO:tensorflow:global_step/sec: 612.871 INFO:tensorflow:loss = 0.00034612181, step = 21801 (0.163 sec) INFO:tensorflow:global_step/sec: 605.966 INFO:tensorflow:loss = 0.00080818025, step = 21901 (0.166 sec) INFO:tensorflow:global_step/sec: 577.271 INFO:tensorflow:loss = 0.00022657546, step = 22001 (0.172 sec) INFO:tensorflow:global_step/sec: 623.857 INFO:tensorflow:loss = 0.00012089937, step = 22101 (0.160 sec) INFO:tensorflow:global_step/sec: 612.942 INFO:tensorflow:loss = 0.001126931, step = 22201 (0.163 sec) INFO:tensorflow:global_step/sec: 611.9 INFO:tensorflow:loss = 0.0019331959, step = 22301 (0.163 sec) INFO:tensorflow:global_step/sec: 614.261 INFO:tensorflow:loss = 0.001663991, step = 22401 (0.163 sec) INFO:tensorflow:global_step/sec: 605.744 INFO:tensorflow:loss = 0.001471436, step = 22501 (0.165 sec) INFO:tensorflow:global_step/sec: 609.61 INFO:tensorflow:loss = 0.0024152768, step = 22601 (0.164 sec) INFO:tensorflow:global_step/sec: 604.792 INFO:tensorflow:loss = 0.001117092, step = 22701 (0.165 sec) INFO:tensorflow:global_step/sec: 559.905 INFO:tensorflow:loss = 0.0011551083, step = 22801 (0.179 sec) INFO:tensorflow:global_step/sec: 598.39 INFO:tensorflow:loss = 0.0018551925, step = 22901 (0.167 sec) INFO:tensorflow:global_step/sec: 592.198 INFO:tensorflow:loss = 0.00072174164, step = 23001 (0.169 sec) INFO:tensorflow:global_step/sec: 609.964 INFO:tensorflow:loss = 0.0036146098, step = 23101 (0.164 sec) INFO:tensorflow:global_step/sec: 584.132 INFO:tensorflow:loss = 0.0020106062, step = 23201 (0.171 sec) INFO:tensorflow:global_step/sec: 611.048 INFO:tensorflow:loss = 0.0014956103, step = 23301 (0.164 sec) INFO:tensorflow:global_step/sec: 619.174 INFO:tensorflow:loss = 0.0008220522, step = 23401 (0.161 sec) INFO:tensorflow:global_step/sec: 609.429 INFO:tensorflow:loss = 0.00064344076, step = 23501 (0.164 sec) INFO:tensorflow:global_step/sec: 614.133 INFO:tensorflow:loss = 0.00045825407, step = 23601 (0.163 sec) INFO:tensorflow:global_step/sec: 575.3 INFO:tensorflow:loss = 0.00022047936, step = 23701 (0.174 sec) INFO:tensorflow:global_step/sec: 564.108 INFO:tensorflow:loss = 0.0015265867, step = 23801 (0.177 sec) INFO:tensorflow:global_step/sec: 586.258 INFO:tensorflow:loss = 0.0011534224, step = 23901 (0.171 sec) INFO:tensorflow:global_step/sec: 605.237 INFO:tensorflow:loss = 0.0014475276, step = 24001 (0.166 sec) INFO:tensorflow:global_step/sec: 588.37 INFO:tensorflow:loss = 0.0006489145, step = 24101 (0.170 sec) INFO:tensorflow:global_step/sec: 576.579 INFO:tensorflow:loss = 0.0014438891, step = 24201 (0.173 sec) INFO:tensorflow:global_step/sec: 582.279 INFO:tensorflow:loss = 0.00013492178, step = 24301 (0.172 sec) INFO:tensorflow:global_step/sec: 591.572 INFO:tensorflow:loss = 0.0018164318, step = 24401 (0.169 sec) INFO:tensorflow:global_step/sec: 588.075 INFO:tensorflow:loss = 0.0007827875, step = 24501 (0.170 sec) INFO:tensorflow:global_step/sec: 557.94 INFO:tensorflow:loss = 0.0005252632, step = 24601 (0.179 sec) INFO:tensorflow:global_step/sec: 568.769 INFO:tensorflow:loss = 0.00082520884, step = 24701 (0.176 sec) INFO:tensorflow:global_step/sec: 601.958 INFO:tensorflow:loss = 0.0010905435, step = 24801 (0.166 sec) INFO:tensorflow:global_step/sec: 580.404 INFO:tensorflow:loss = 0.0013812265, step = 24901 (0.172 sec) INFO:tensorflow:global_step/sec: 581.72 INFO:tensorflow:loss = 0.000296785, step = 25001 (0.172 sec) INFO:tensorflow:global_step/sec: 532.304 INFO:tensorflow:loss = 0.0011830023, step = 25101 (0.188 sec) INFO:tensorflow:global_step/sec: 617.722 INFO:tensorflow:loss = 0.0014861291, step = 25201 (0.162 sec) INFO:tensorflow:global_step/sec: 596.738 INFO:tensorflow:loss = 0.00016240163, step = 25301 (0.168 sec) INFO:tensorflow:global_step/sec: 559.637 INFO:tensorflow:loss = 0.00070019526, step = 25401 (0.179 sec) INFO:tensorflow:global_step/sec: 602.358 INFO:tensorflow:loss = 0.0008364168, step = 25501 (0.167 sec) INFO:tensorflow:global_step/sec: 563.528 INFO:tensorflow:loss = 0.0007035256, step = 25601 (0.177 sec) INFO:tensorflow:global_step/sec: 574.091 INFO:tensorflow:loss = 0.00064905005, step = 25701 (0.175 sec) INFO:tensorflow:global_step/sec: 569.65 INFO:tensorflow:loss = 0.0010136625, step = 25801 (0.174 sec) INFO:tensorflow:global_step/sec: 589.046 INFO:tensorflow:loss = 0.0016925582, step = 25901 (0.170 sec) INFO:tensorflow:global_step/sec: 609.377 INFO:tensorflow:loss = 4.019986e-05, step = 26001 (0.164 sec) INFO:tensorflow:global_step/sec: 599.429 INFO:tensorflow:loss = 0.0010253192, step = 26101 (0.167 sec) INFO:tensorflow:global_step/sec: 582.55 INFO:tensorflow:loss = 0.0004353946, step = 26201 (0.171 sec) INFO:tensorflow:global_step/sec: 622.232 INFO:tensorflow:loss = 0.0012551624, step = 26301 (0.161 sec) INFO:tensorflow:global_step/sec: 558.681 INFO:tensorflow:loss = 0.0011457175, step = 26401 (0.179 sec) INFO:tensorflow:global_step/sec: 575.226 INFO:tensorflow:loss = 0.00077512173, step = 26501 (0.174 sec) INFO:tensorflow:global_step/sec: 591.649 INFO:tensorflow:loss = 0.0006089196, step = 26601 (0.169 sec) INFO:tensorflow:global_step/sec: 562.834 INFO:tensorflow:loss = 2.1493912e-05, step = 26701 (0.178 sec) INFO:tensorflow:global_step/sec: 581.117 INFO:tensorflow:loss = 0.00045070797, step = 26801 (0.172 sec) INFO:tensorflow:global_step/sec: 579.912 INFO:tensorflow:loss = 0.00093468383, step = 26901 (0.172 sec) INFO:tensorflow:global_step/sec: 596.649 INFO:tensorflow:loss = 0.0006957704, step = 27001 (0.169 sec) INFO:tensorflow:global_step/sec: 567.435 INFO:tensorflow:loss = 0.00052795606, step = 27101 (0.175 sec) INFO:tensorflow:global_step/sec: 618.532 INFO:tensorflow:loss = 0.00044472318, step = 27201 (0.162 sec) INFO:tensorflow:global_step/sec: 620.087 INFO:tensorflow:loss = 0.0009544973, step = 27301 (0.161 sec) INFO:tensorflow:global_step/sec: 572.733 INFO:tensorflow:loss = 0.00013921122, step = 27401 (0.176 sec) INFO:tensorflow:global_step/sec: 578.235 INFO:tensorflow:loss = 0.0014383527, step = 27501 (0.172 sec) INFO:tensorflow:global_step/sec: 625.161 INFO:tensorflow:loss = 0.0013214696, step = 27601 (0.160 sec) INFO:tensorflow:global_step/sec: 565.016 INFO:tensorflow:loss = 0.00026849075, step = 27701 (0.177 sec) INFO:tensorflow:global_step/sec: 613.106 INFO:tensorflow:loss = 0.00035008916, step = 27801 (0.163 sec) INFO:tensorflow:global_step/sec: 597.176 INFO:tensorflow:loss = 0.00042687863, step = 27901 (0.168 sec) INFO:tensorflow:global_step/sec: 629.476 INFO:tensorflow:loss = 0.0017999372, step = 28001 (0.159 sec) INFO:tensorflow:global_step/sec: 567.065 INFO:tensorflow:loss = 0.00041657663, step = 28101 (0.176 sec) INFO:tensorflow:global_step/sec: 576.685 INFO:tensorflow:loss = 0.00047744508, step = 28201 (0.173 sec) INFO:tensorflow:global_step/sec: 600.838 INFO:tensorflow:loss = 0.0009236564, step = 28301 (0.166 sec) INFO:tensorflow:global_step/sec: 588.246 INFO:tensorflow:loss = 0.0009110287, step = 28401 (0.170 sec) INFO:tensorflow:global_step/sec: 526.444 INFO:tensorflow:loss = 0.00018912686, step = 28501 (0.190 sec) INFO:tensorflow:global_step/sec: 580.034 INFO:tensorflow:loss = 0.00019538727, step = 28601 (0.173 sec) INFO:tensorflow:global_step/sec: 609.796 INFO:tensorflow:loss = 0.0010311238, step = 28701 (0.164 sec) INFO:tensorflow:global_step/sec: 629.891 INFO:tensorflow:loss = 0.0010478238, step = 28801 (0.159 sec) INFO:tensorflow:global_step/sec: 579.509 INFO:tensorflow:loss = 0.00026054308, step = 28901 (0.173 sec) INFO:tensorflow:global_step/sec: 538.373 INFO:tensorflow:loss = 0.001478945, step = 29001 (0.186 sec) INFO:tensorflow:global_step/sec: 593.139 INFO:tensorflow:loss = 0.0015984685, step = 29101 (0.169 sec) INFO:tensorflow:global_step/sec: 596.163 INFO:tensorflow:loss = 0.0012184778, step = 29201 (0.167 sec) INFO:tensorflow:global_step/sec: 547.281 INFO:tensorflow:loss = 0.001256704, step = 29301 (0.183 sec) INFO:tensorflow:global_step/sec: 619.531 INFO:tensorflow:loss = 0.0007791214, step = 29401 (0.161 sec) INFO:tensorflow:global_step/sec: 584.175 INFO:tensorflow:loss = 0.00071598747, step = 29501 (0.171 sec) INFO:tensorflow:global_step/sec: 616.946 INFO:tensorflow:loss = 0.00025601368, step = 29601 (0.162 sec) INFO:tensorflow:global_step/sec: 612.323 INFO:tensorflow:loss = 0.00016068027, step = 29701 (0.163 sec) INFO:tensorflow:global_step/sec: 563.005 INFO:tensorflow:loss = 0.00055066944, step = 29801 (0.178 sec) INFO:tensorflow:global_step/sec: 582.274 INFO:tensorflow:loss = 0.0007775384, step = 29901 (0.172 sec) INFO:tensorflow:global_step/sec: 600.885 INFO:tensorflow:loss = 4.824771e-05, step = 30001 (0.166 sec) INFO:tensorflow:global_step/sec: 536.742 INFO:tensorflow:loss = 0.00079905934, step = 30101 (0.186 sec) INFO:tensorflow:global_step/sec: 573.282 INFO:tensorflow:loss = 0.000464034, step = 30201 (0.175 sec) INFO:tensorflow:global_step/sec: 547.319 INFO:tensorflow:loss = 0.0010382755, step = 30301 (0.182 sec) INFO:tensorflow:global_step/sec: 620.4 INFO:tensorflow:loss = 0.001261039, step = 30401 (0.161 sec) INFO:tensorflow:global_step/sec: 606.614 INFO:tensorflow:loss = 0.00069867, step = 30501 (0.165 sec) INFO:tensorflow:global_step/sec: 606.105 INFO:tensorflow:loss = 0.0008429569, step = 30601 (0.165 sec) INFO:tensorflow:global_step/sec: 558.439 INFO:tensorflow:loss = 0.00054088724, step = 30701 (0.179 sec) INFO:tensorflow:global_step/sec: 615.945 INFO:tensorflow:loss = 0.0006515493, step = 30801 (0.162 sec) INFO:tensorflow:global_step/sec: 601.606 INFO:tensorflow:loss = 0.0011512174, step = 30901 (0.166 sec) INFO:tensorflow:global_step/sec: 606.441 INFO:tensorflow:loss = 0.0011126797, step = 31001 (0.165 sec) INFO:tensorflow:global_step/sec: 581.595 INFO:tensorflow:loss = 0.0009732157, step = 31101 (0.172 sec) INFO:tensorflow:global_step/sec: 595.703 INFO:tensorflow:loss = 0.00028798505, step = 31201 (0.168 sec) INFO:tensorflow:global_step/sec: 588.536 INFO:tensorflow:loss = 0.00073854194, step = 31301 (0.170 sec) INFO:tensorflow:global_step/sec: 571.048 INFO:tensorflow:loss = 0.00086828315, step = 31401 (0.175 sec) INFO:tensorflow:global_step/sec: 549.234 INFO:tensorflow:loss = 0.00046636164, step = 31501 (0.182 sec) INFO:tensorflow:global_step/sec: 596.682 INFO:tensorflow:loss = 0.00024272705, step = 31601 (0.168 sec) INFO:tensorflow:global_step/sec: 604.276 INFO:tensorflow:loss = 0.0006858927, step = 31701 (0.165 sec) INFO:tensorflow:global_step/sec: 607.909 INFO:tensorflow:loss = 0.00027849182, step = 31801 (0.164 sec) INFO:tensorflow:global_step/sec: 616.76 INFO:tensorflow:loss = 0.0008028148, step = 31901 (0.162 sec) INFO:tensorflow:global_step/sec: 567.692 INFO:tensorflow:loss = 0.00021827081, step = 32001 (0.176 sec) INFO:tensorflow:global_step/sec: 605.639 INFO:tensorflow:loss = 0.00025145116, step = 32101 (0.165 sec) INFO:tensorflow:global_step/sec: 558.086 INFO:tensorflow:loss = 0.0010610253, step = 32201 (0.179 sec) INFO:tensorflow:global_step/sec: 549.596 INFO:tensorflow:loss = 0.0004342794, step = 32301 (0.183 sec) INFO:tensorflow:global_step/sec: 558.624 INFO:tensorflow:loss = 0.00012760163, step = 32401 (0.178 sec) INFO:tensorflow:global_step/sec: 563.098 INFO:tensorflow:loss = 0.00048173414, step = 32501 (0.178 sec) INFO:tensorflow:global_step/sec: 581.996 INFO:tensorflow:loss = 8.136925e-05, step = 32601 (0.172 sec) INFO:tensorflow:global_step/sec: 578.376 INFO:tensorflow:loss = 0.0007714884, step = 32701 (0.173 sec) INFO:tensorflow:global_step/sec: 622.035 INFO:tensorflow:loss = 0.0011828557, step = 32801 (0.161 sec) INFO:tensorflow:global_step/sec: 553.014 INFO:tensorflow:loss = 0.00059744803, step = 32901 (0.181 sec) INFO:tensorflow:global_step/sec: 556.893 INFO:tensorflow:loss = 0.00026821953, step = 33001 (0.180 sec) INFO:tensorflow:global_step/sec: 563.61 INFO:tensorflow:loss = 0.0018447504, step = 33101 (0.177 sec) INFO:tensorflow:global_step/sec: 562.931 INFO:tensorflow:loss = 0.0006075809, step = 33201 (0.178 sec) INFO:tensorflow:global_step/sec: 582.692 INFO:tensorflow:loss = 0.00017816921, step = 33301 (0.172 sec) INFO:tensorflow:global_step/sec: 544.115 INFO:tensorflow:loss = 0.0010752638, step = 33401 (0.184 sec) INFO:tensorflow:global_step/sec: 594.049 INFO:tensorflow:loss = 0.00016672479, step = 33501 (0.168 sec) INFO:tensorflow:global_step/sec: 564.132 INFO:tensorflow:loss = 0.0006773797, step = 33601 (0.177 sec) INFO:tensorflow:global_step/sec: 534.434 INFO:tensorflow:loss = 0.0007475652, step = 33701 (0.187 sec) INFO:tensorflow:global_step/sec: 584.275 INFO:tensorflow:loss = 0.00081024895, step = 33801 (0.171 sec) INFO:tensorflow:global_step/sec: 586.596 INFO:tensorflow:loss = 0.0007606104, step = 33901 (0.170 sec) INFO:tensorflow:global_step/sec: 541.474 INFO:tensorflow:loss = 0.0007453459, step = 34001 (0.185 sec) INFO:tensorflow:global_step/sec: 580.558 INFO:tensorflow:loss = 0.00056487654, step = 34101 (0.172 sec) INFO:tensorflow:global_step/sec: 619.68 INFO:tensorflow:loss = 0.0009299599, step = 34201 (0.162 sec) INFO:tensorflow:global_step/sec: 579.864 INFO:tensorflow:loss = 0.00021587823, step = 34301 (0.172 sec) INFO:tensorflow:global_step/sec: 552.252 INFO:tensorflow:loss = 0.00040929543, step = 34401 (0.181 sec) INFO:tensorflow:global_step/sec: 580.58 INFO:tensorflow:loss = 0.0005763147, step = 34501 (0.172 sec) INFO:tensorflow:global_step/sec: 620.445 INFO:tensorflow:loss = 0.0004739043, step = 34601 (0.161 sec) INFO:tensorflow:global_step/sec: 543.304 INFO:tensorflow:loss = 0.0015119809, step = 34701 (0.184 sec) INFO:tensorflow:global_step/sec: 597.189 INFO:tensorflow:loss = 0.000674001, step = 34801 (0.167 sec) INFO:tensorflow:global_step/sec: 581.494 INFO:tensorflow:loss = 0.00034475912, step = 34901 (0.172 sec) INFO:tensorflow:global_step/sec: 569.123 INFO:tensorflow:loss = 0.00055940147, step = 35001 (0.176 sec) INFO:tensorflow:global_step/sec: 586.16 INFO:tensorflow:loss = 0.00087014853, step = 35101 (0.171 sec) INFO:tensorflow:global_step/sec: 549.67 INFO:tensorflow:loss = 0.00023894513, step = 35201 (0.182 sec) INFO:tensorflow:global_step/sec: 572.214 INFO:tensorflow:loss = 0.000138041, step = 35301 (0.175 sec) INFO:tensorflow:global_step/sec: 556.875 INFO:tensorflow:loss = 0.0011388202, step = 35401 (0.181 sec) INFO:tensorflow:global_step/sec: 582.317 INFO:tensorflow:loss = 0.00018684927, step = 35501 (0.171 sec) INFO:tensorflow:global_step/sec: 608.476 INFO:tensorflow:loss = 0.00018745154, step = 35601 (0.164 sec) INFO:tensorflow:global_step/sec: 575.008 INFO:tensorflow:loss = 0.0006908841, step = 35701 (0.174 sec) INFO:tensorflow:global_step/sec: 559.336 INFO:tensorflow:loss = 0.00070670916, step = 35801 (0.179 sec) INFO:tensorflow:global_step/sec: 617.563 INFO:tensorflow:loss = 0.00054090185, step = 35901 (0.162 sec) INFO:tensorflow:global_step/sec: 606.564 INFO:tensorflow:loss = 0.0003731058, step = 36001 (0.165 sec) INFO:tensorflow:global_step/sec: 616.641 INFO:tensorflow:loss = 0.0011918206, step = 36101 (0.162 sec) INFO:tensorflow:global_step/sec: 619.707 INFO:tensorflow:loss = 0.00064709573, step = 36201 (0.161 sec) INFO:tensorflow:global_step/sec: 575.716 INFO:tensorflow:loss = 0.00025932075, step = 36301 (0.175 sec) INFO:tensorflow:global_step/sec: 546.966 INFO:tensorflow:loss = 0.0007245174, step = 36401 (0.182 sec) INFO:tensorflow:global_step/sec: 600.053 INFO:tensorflow:loss = 0.00018499527, step = 36501 (0.168 sec) INFO:tensorflow:global_step/sec: 573.538 INFO:tensorflow:loss = 0.00025028634, step = 36601 (0.174 sec) INFO:tensorflow:global_step/sec: 575.703 INFO:tensorflow:loss = 0.00044182275, step = 36701 (0.173 sec) INFO:tensorflow:global_step/sec: 619.262 INFO:tensorflow:loss = 0.0008609672, step = 36801 (0.161 sec) INFO:tensorflow:global_step/sec: 580.882 INFO:tensorflow:loss = 0.0005228994, step = 36901 (0.172 sec) INFO:tensorflow:global_step/sec: 571.551 INFO:tensorflow:loss = 0.000739621, step = 37001 (0.175 sec) INFO:tensorflow:global_step/sec: 574.717 INFO:tensorflow:loss = 0.00022675189, step = 37101 (0.174 sec) INFO:tensorflow:global_step/sec: 567.49 INFO:tensorflow:loss = 0.00021757817, step = 37201 (0.176 sec) INFO:tensorflow:global_step/sec: 597.996 INFO:tensorflow:loss = 0.00048570606, step = 37301 (0.167 sec) INFO:tensorflow:global_step/sec: 585.657 INFO:tensorflow:loss = 0.0003734218, step = 37401 (0.172 sec) INFO:tensorflow:global_step/sec: 593.716 INFO:tensorflow:loss = 0.00033477123, step = 37501 (0.167 sec) INFO:tensorflow:global_step/sec: 556.965 INFO:tensorflow:loss = 0.00023778708, step = 37601 (0.180 sec) INFO:tensorflow:global_step/sec: 555.381 INFO:tensorflow:loss = 7.513482e-05, step = 37701 (0.180 sec) INFO:tensorflow:global_step/sec: 552.038 INFO:tensorflow:loss = 0.00058054813, step = 37801 (0.181 sec) INFO:tensorflow:global_step/sec: 608.115 INFO:tensorflow:loss = 0.0012024788, step = 37901 (0.164 sec) INFO:tensorflow:global_step/sec: 617.472 INFO:tensorflow:loss = 0.00015282346, step = 38001 (0.162 sec) INFO:tensorflow:global_step/sec: 564.76 INFO:tensorflow:loss = 0.001171692, step = 38101 (0.177 sec) INFO:tensorflow:global_step/sec: 558.202 INFO:tensorflow:loss = 0.0005760422, step = 38201 (0.179 sec) INFO:tensorflow:global_step/sec: 562.643 INFO:tensorflow:loss = 0.00012748956, step = 38301 (0.178 sec) INFO:tensorflow:global_step/sec: 532.459 INFO:tensorflow:loss = 0.00020312564, step = 38401 (0.188 sec) INFO:tensorflow:global_step/sec: 585.301 INFO:tensorflow:loss = 0.00043357856, step = 38501 (0.171 sec) INFO:tensorflow:global_step/sec: 614.041 INFO:tensorflow:loss = 0.0007085696, step = 38601 (0.163 sec) INFO:tensorflow:global_step/sec: 606.99 INFO:tensorflow:loss = 0.0005537599, step = 38701 (0.165 sec) INFO:tensorflow:global_step/sec: 555.094 INFO:tensorflow:loss = 5.7141384e-05, step = 38801 (0.180 sec) INFO:tensorflow:global_step/sec: 581.784 INFO:tensorflow:loss = 0.00131531, step = 38901 (0.172 sec) INFO:tensorflow:global_step/sec: 622.613 INFO:tensorflow:loss = 8.0722086e-05, step = 39001 (0.161 sec) INFO:tensorflow:global_step/sec: 622.775 INFO:tensorflow:loss = 0.00080231635, step = 39101 (0.161 sec) INFO:tensorflow:global_step/sec: 578.969 INFO:tensorflow:loss = 0.00035499, step = 39201 (0.173 sec) INFO:tensorflow:global_step/sec: 584.063 INFO:tensorflow:loss = 0.00020848228, step = 39301 (0.171 sec) INFO:tensorflow:global_step/sec: 614.922 INFO:tensorflow:loss = 0.00030716695, step = 39401 (0.163 sec) INFO:tensorflow:global_step/sec: 580.459 INFO:tensorflow:loss = 0.00016974908, step = 39501 (0.172 sec) INFO:tensorflow:global_step/sec: 574.219 INFO:tensorflow:loss = 0.00039360396, step = 39601 (0.174 sec) INFO:tensorflow:global_step/sec: 604.972 INFO:tensorflow:loss = 0.00011240821, step = 39701 (0.165 sec) INFO:tensorflow:global_step/sec: 571.511 INFO:tensorflow:loss = 0.0012242816, step = 39801 (0.175 sec) INFO:tensorflow:global_step/sec: 611.909 INFO:tensorflow:loss = 0.0013449484, step = 39901 (0.163 sec) INFO:tensorflow:Saving checkpoints for 40000 into /tmp/tmpgxyz4krv/model.ckpt. INFO:tensorflow:Loss for final step: 0.0004099389.
SKCompat()
from sklearn.metrics import accuracy_score
y_pred = dnn_clf.predict(X_test)
accuracy_score(y_test, y_pred['classes'])
INFO:tensorflow:Graph was finalized. INFO:tensorflow:Restoring parameters from /tmp/tmpgxyz4krv/model.ckpt-40000 INFO:tensorflow:Running local_init_op. INFO:tensorflow:Done running local_init_op.
0.9817
from sklearn.metrics import log_loss
y_pred_proba = y_pred['probabilities']
log_loss(y_test, y_pred_proba)
0.07212044412362126
import tensorflow as tf
n_inputs = 28*28 # MNIST
n_hidden1 = 300
n_hidden2 = 100
n_outputs = 10
reset_graph()
X = tf.placeholder(tf.float32, shape=(None, n_inputs), name="X")
y = tf.placeholder(tf.int32, shape=(None), name="y")
def neuron_layer(X, n_neurons, name, activation=None):
with tf.name_scope(name):
n_inputs = int(X.get_shape()[1])
stddev = 2 / np.sqrt(n_inputs)
init = tf.truncated_normal((n_inputs, n_neurons), stddev=stddev)
W = tf.Variable(init, name="kernel")
b = tf.Variable(tf.zeros([n_neurons]), name="bias")
Z = tf.matmul(X, W) + b
if activation is not None:
return activation(Z)
else:
return Z
with tf.name_scope("dnn"):
hidden1 = neuron_layer(X, n_hidden1, name="hidden1",
activation=tf.nn.relu)
hidden2 = neuron_layer(hidden1, n_hidden2, name="hidden2",
activation=tf.nn.relu)
logits = neuron_layer(hidden2, n_outputs, name="outputs")
with tf.name_scope("loss"):
xentropy = tf.nn.sparse_softmax_cross_entropy_with_logits(labels=y,
logits=logits)
loss = tf.reduce_mean(xentropy, name="loss")
learning_rate = 0.01
with tf.name_scope("train"):
optimizer = tf.train.GradientDescentOptimizer(learning_rate)
training_op = optimizer.minimize(loss)
with tf.name_scope("eval"):
correct = tf.nn.in_top_k(logits, y, 1)
accuracy = tf.reduce_mean(tf.cast(correct, tf.float32))
init = tf.global_variables_initializer()
saver = tf.train.Saver()
n_epochs = 40
batch_size = 50
def shuffle_batch(X, y, batch_size):
rnd_idx = np.random.permutation(len(X))
n_batches = len(X) // batch_size
for batch_idx in np.array_split(rnd_idx, n_batches):
X_batch, y_batch = X[batch_idx], y[batch_idx]
yield X_batch, y_batch
with tf.Session() as sess:
init.run()
for epoch in range(n_epochs):
for X_batch, y_batch in shuffle_batch(X_train, y_train, batch_size):
sess.run(training_op, feed_dict={X: X_batch, y: y_batch})
acc_batch = accuracy.eval(feed_dict={X: X_batch, y: y_batch})
acc_valid = accuracy.eval(feed_dict={X: X_valid, y: y_valid})
print(epoch, "배치 데이터 정확도:", acc_batch, "검증 세트 정확도:", acc_valid)
save_path = saver.save(sess, "./my_model_final.ckpt")
0 배치 데이터 정확도: 0.9 검증 세트 정확도: 0.9146 1 배치 데이터 정확도: 0.92 검증 세트 정확도: 0.936 2 배치 데이터 정확도: 0.96 검증 세트 정확도: 0.9448 3 배치 데이터 정확도: 0.92 검증 세트 정확도: 0.951 4 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9558 5 배치 데이터 정확도: 0.96 검증 세트 정확도: 0.9566 6 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9612 7 배치 데이터 정확도: 0.96 검증 세트 정확도: 0.9632 8 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9648 9 배치 데이터 정확도: 0.96 검증 세트 정확도: 0.9662 10 배치 데이터 정확도: 0.92 검증 세트 정확도: 0.9686 11 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9688 12 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9666 13 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9706 14 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9712 15 배치 데이터 정확도: 0.94 검증 세트 정확도: 0.9732 16 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9732 17 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9742 18 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9748 19 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9744 20 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9748 21 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.976 22 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9766 23 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9752 24 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9766 25 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9768 26 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9778 27 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9774 28 배치 데이터 정확도: 0.96 검증 세트 정확도: 0.9754 29 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9776 30 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9754 31 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9772 32 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9776 33 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9792 34 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9784 35 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.978 36 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9784 37 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9778 38 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9792 39 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.978
with tf.Session() as sess:
saver.restore(sess, "./my_model_final.ckpt") # 또는 save_path를 사용합니다
X_new_scaled = X_test[:20]
Z = logits.eval(feed_dict={X: X_new_scaled})
y_pred = np.argmax(Z, axis=1)
INFO:tensorflow:Restoring parameters from ./my_model_final.ckpt
print("예측 클래스:", y_pred)
print("진짜 클래스:", y_test[:20])
예측 클래스: [7 2 1 0 4 1 4 9 6 9 0 6 9 0 1 5 9 7 3 4] 진짜 클래스: [7 2 1 0 4 1 4 9 5 9 0 6 9 0 1 5 9 7 3 4]
from tensorflow_graph_in_jupyter import show_graph
show_graph(tf.get_default_graph())
neuron_layer()
대신 dense()
사용¶n_inputs = 28*28 # MNIST
n_hidden1 = 300
n_hidden2 = 100
n_outputs = 10
reset_graph()
X = tf.placeholder(tf.float32, shape=(None, n_inputs), name="X")
y = tf.placeholder(tf.int32, shape=(None), name="y")
with tf.name_scope("dnn"):
hidden1 = tf.layers.dense(X, n_hidden1, name="hidden1",
activation=tf.nn.relu)
hidden2 = tf.layers.dense(hidden1, n_hidden2, name="hidden2",
activation=tf.nn.relu)
logits = tf.layers.dense(hidden2, n_outputs, name="outputs")
y_proba = tf.nn.softmax(logits)
WARNING:tensorflow:From <ipython-input-38-28239acea1fc>:3: dense (from tensorflow.python.layers.core) is deprecated and will be removed in a future version. Instructions for updating: Use keras.layers.dense instead.
with tf.name_scope("loss"):
xentropy = tf.nn.sparse_softmax_cross_entropy_with_logits(labels=y, logits=logits)
loss = tf.reduce_mean(xentropy, name="loss")
learning_rate = 0.01
with tf.name_scope("train"):
optimizer = tf.train.GradientDescentOptimizer(learning_rate)
training_op = optimizer.minimize(loss)
with tf.name_scope("eval"):
correct = tf.nn.in_top_k(logits, y, 1)
accuracy = tf.reduce_mean(tf.cast(correct, tf.float32))
init = tf.global_variables_initializer()
saver = tf.train.Saver()
n_epochs = 20
n_batches = 50
with tf.Session() as sess:
init.run()
for epoch in range(n_epochs):
for X_batch, y_batch in shuffle_batch(X_train, y_train, batch_size):
sess.run(training_op, feed_dict={X: X_batch, y: y_batch})
acc_batch = accuracy.eval(feed_dict={X: X_batch, y: y_batch})
acc_valid = accuracy.eval(feed_dict={X: X_valid, y: y_valid})
print(epoch, "배치 데이터 정확도:", acc_batch, "검증 세트 정확도:", acc_valid)
save_path = saver.save(sess, "./my_model_final.ckpt")
0 배치 데이터 정확도: 0.9 검증 세트 정확도: 0.9024 1 배치 데이터 정확도: 0.92 검증 세트 정확도: 0.9254 2 배치 데이터 정확도: 0.94 검증 세트 정확도: 0.9372 3 배치 데이터 정확도: 0.9 검증 세트 정확도: 0.9416 4 배치 데이터 정확도: 0.94 검증 세트 정확도: 0.947 5 배치 데이터 정확도: 0.94 검증 세트 정확도: 0.951 6 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9548 7 배치 데이터 정확도: 0.94 검증 세트 정확도: 0.9612 8 배치 데이터 정확도: 0.96 검증 세트 정확도: 0.9622 9 배치 데이터 정확도: 0.94 검증 세트 정확도: 0.965 10 배치 데이터 정확도: 0.92 검증 세트 정확도: 0.9654 11 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9668 12 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9686 13 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9702 14 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9696 15 배치 데이터 정확도: 0.94 검증 세트 정확도: 0.9718 16 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9728 17 배치 데이터 정확도: 1.0 검증 세트 정확도: 0.9728 18 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.975 19 배치 데이터 정확도: 0.98 검증 세트 정확도: 0.9754
show_graph(tf.get_default_graph())
부록 A 참조.
깊은 다층 퍼셉트론을 MNIST 데이터셋에 훈련시키고 98% 정확도를 얻을 수 있는지 확인해보세요. 9장의 마지막 연습문제에서와 같이 모든 부가 기능을 추가해보세요(즉, 체크포인트를 저장하고, 중지되었을 때 마지막 체크포인트를 복원하고, 서머리를 추가하고, 텐서보드를 사용해 학습 곡선을 그려보세요).
먼저 심층 신경망을 만듭니다. 한가지 추가된 것 외에는 앞서 했던 것과 동일합니다. 텐서보드에서 학습 곡선을 볼 수 있도록 훈련하는 동안 손실과 정확도를 기록하는 tf.summary.scalar()
추가합니다.
n_inputs = 28*28 # MNIST
n_hidden1 = 300
n_hidden2 = 100
n_outputs = 10
reset_graph()
X = tf.placeholder(tf.float32, shape=(None, n_inputs), name="X")
y = tf.placeholder(tf.int32, shape=(None), name="y")
with tf.name_scope("dnn"):
hidden1 = tf.layers.dense(X, n_hidden1, name="hidden1",
activation=tf.nn.relu)
hidden2 = tf.layers.dense(hidden1, n_hidden2, name="hidden2",
activation=tf.nn.relu)
logits = tf.layers.dense(hidden2, n_outputs, name="outputs")
with tf.name_scope("loss"):
xentropy = tf.nn.sparse_softmax_cross_entropy_with_logits(labels=y, logits=logits)
loss = tf.reduce_mean(xentropy, name="loss")
loss_summary = tf.summary.scalar('log_loss', loss)
learning_rate = 0.01
with tf.name_scope("train"):
optimizer = tf.train.GradientDescentOptimizer(learning_rate)
training_op = optimizer.minimize(loss)
with tf.name_scope("eval"):
correct = tf.nn.in_top_k(logits, y, 1)
accuracy = tf.reduce_mean(tf.cast(correct, tf.float32))
accuracy_summary = tf.summary.scalar('accuracy', accuracy)
init = tf.global_variables_initializer()
saver = tf.train.Saver()
텐서보드 로그를 기록할 디렉토리를 정의합니다:
from datetime import datetime
def log_dir(prefix=""):
now = datetime.utcnow().strftime("%Y%m%d%H%M%S")
root_logdir = "tf_logs"
if prefix:
prefix += "-"
name = prefix + "run-" + now
return "{}/{}/".format(root_logdir, name)
logdir = log_dir("mnist_dnn")
텐서보드 로그를 작성하는 데 필요한 FileWriter
객체를 만듭니다:
file_writer = tf.summary.FileWriter(logdir, tf.get_default_graph())
잠시만요! 조기 종료를 구현하는 것이 좋겠죠? 이렇게 하려면 검증 세트가 필요합니다.
# X_valid = mnist.validation.images
# y_valid = mnist.validation.labels
m, n = X_train.shape
n_epochs = 10001
batch_size = 50
n_batches = int(np.ceil(m / batch_size))
checkpoint_path = "/tmp/my_deep_mnist_model.ckpt"
checkpoint_epoch_path = checkpoint_path + ".epoch"
final_model_path = "./my_deep_mnist_model"
best_loss = np.infty
epochs_without_progress = 0
max_epochs_without_progress = 50
with tf.Session() as sess:
if os.path.isfile(checkpoint_epoch_path):
# 체크포인트 파일이 있으면 모델을 복원하고 에포크 숫자를 로드합니다
with open(checkpoint_epoch_path, "rb") as f:
start_epoch = int(f.read())
print("이전 훈련이 중지되었습니다. 에포크 {}에서 시작합니다".format(start_epoch))
saver.restore(sess, checkpoint_path)
else:
start_epoch = 0
sess.run(init)
for epoch in range(start_epoch, n_epochs):
for X_batch, y_batch in shuffle_batch(X_train, y_train, batch_size):
sess.run(training_op, feed_dict={X: X_batch, y: y_batch})
accuracy_val, loss_val, accuracy_summary_str, loss_summary_str = sess.run([accuracy, loss, accuracy_summary, loss_summary], feed_dict={X: X_valid, y: y_valid})
file_writer.add_summary(accuracy_summary_str, epoch)
file_writer.add_summary(loss_summary_str, epoch)
if epoch % 5 == 0:
print("에포크:", epoch,
"\t검증 세트 정확도: {:.3f}%".format(accuracy_val * 100),
"\t손실: {:.5f}".format(loss_val))
saver.save(sess, checkpoint_path)
with open(checkpoint_epoch_path, "wb") as f:
f.write(b"%d" % (epoch + 1))
if loss_val < best_loss:
saver.save(sess, final_model_path)
best_loss = loss_val
else:
epochs_without_progress += 5
if epochs_without_progress > max_epochs_without_progress:
print("조기 종료")
break
에포크: 0 검증 세트 정확도: 90.240% 손실: 0.35380 에포크: 5 검증 세트 정확도: 95.100% 손실: 0.17919 에포크: 10 검증 세트 정확도: 96.540% 손실: 0.12785 에포크: 15 검증 세트 정확도: 97.180% 손실: 0.10325 에포크: 20 검증 세트 정확도: 97.480% 손실: 0.09168 에포크: 25 검증 세트 정확도: 97.620% 손실: 0.08212 에포크: 30 검증 세트 정확도: 97.760% 손실: 0.07890 에포크: 35 검증 세트 정확도: 97.800% 손실: 0.07426 에포크: 40 검증 세트 정확도: 97.840% 손실: 0.07170 에포크: 45 검증 세트 정확도: 98.080% 손실: 0.06751 에포크: 50 검증 세트 정확도: 98.040% 손실: 0.06737 에포크: 55 검증 세트 정확도: 98.040% 손실: 0.06689 에포크: 60 검증 세트 정확도: 98.040% 손실: 0.06732 에포크: 65 검증 세트 정확도: 98.220% 손실: 0.06677 에포크: 70 검증 세트 정확도: 98.180% 손실: 0.06617 에포크: 75 검증 세트 정확도: 98.100% 손실: 0.06657 에포크: 80 검증 세트 정확도: 98.160% 손실: 0.06677 에포크: 85 검증 세트 정확도: 98.260% 손실: 0.06613 에포크: 90 검증 세트 정확도: 98.200% 손실: 0.06754 에포크: 95 검증 세트 정확도: 98.140% 손실: 0.06903 에포크: 100 검증 세트 정확도: 98.220% 손실: 0.06893 에포크: 105 검증 세트 정확도: 98.220% 손실: 0.07091 에포크: 110 검증 세트 정확도: 98.200% 손실: 0.07081 에포크: 115 검증 세트 정확도: 98.280% 손실: 0.07086 에포크: 120 검증 세트 정확도: 98.240% 손실: 0.07330 에포크: 125 검증 세트 정확도: 98.280% 손실: 0.07168 조기 종료
os.remove(checkpoint_epoch_path)
with tf.Session() as sess:
saver.restore(sess, final_model_path)
accuracy_val = accuracy.eval(feed_dict={X: X_test, y: y_test})
INFO:tensorflow:Restoring parameters from ./my_deep_mnist_model
accuracy_val
0.9796