cost曲线和准确率曲线贴图如下,蓝线为训练集,橙线为测试集!
运行环境:
python==3.6
Tensorflow==1.8.0
出图程序是自己加的,大致如下
是否打印成本
if print_cost:
# 每5代打印一次损失值和训练集准确度
if epoch % 5 == 0:
# 当前的预测情况
corrent_prediction = tf.equal(tf.argmax(Z3, 1), tf.argmax(Y, 1))
# 当前的准确度
corrent_accuracy = tf.reduce_mean(tf.cast(corrent_prediction, "float"))
Ac_train = corrent_accuracy.eval({X: X_train, Y: Y_train}) # 当前训练集准确度
Ac_test = corrent_accuracy.eval({X: X_test, Y: Y_test}) # 当前测试集准确度
# 当前测试集损失值
test_cost = sess.run(cost, feed_dict={X: X_test, Y: Y_test})
print("当前是第 " + str(epoch) + " 迭代,成本值为:" + str(minibatch_cost) + "训练集准确度为:" + str(Ac_train))
# 记录成本
if epoch % 5 == 0:
costs.append(minibatch_cost)
accuracys_train.append(Ac_train)
accuracys_test.append(Ac_test)
test_costs.append(test_cost)
如图,测试集的cost值在增大,而准确率在缓慢上升,是数据集的问题还是模型的问题,还是出图程序的问题?
提前感激大佬了!!!