本想开始CNN的实现,发现还有一些需要提前分享给大家:
1.可视化结果:
matplotlib可用来可视化tensorflow曲线拟合过程:
①真实的x,y散点图:
import matplotlib.pyplot as plt
fig =plt.figure()
ax = fig.add_subplot(1,1,1)
ax.scatter(x_data, y_data)
plt.ion() #show()之后不会终止程序运行
plt.show()
②画出每次更新的拟合曲线:
try:
ax.lines.remove(lines[0])
except Exception:
pass
③拟合曲线:
lines= ax.plot(x_data, predict_value, 'r-', lw=5)
plt.pause(0.1)
2.加速NN训练过程
优化器的选择,会影响到NN的训练速度,tensorflow中有7中优化器:
①GradientDescentOptimizer类,包括SGD;建议初学者使用;
②AdadeltaOptimizer;
③AdagradOPtimizer;
④MomentumOptimizer;最常用的优化器之一,建议熟手使用;
⑤AdamOptimizer;最常用的优化器之一,建议熟手使用;
⑥FtrlOptimizer;
⑦RMSPropOptimizier;
3.可视化神经网络结构:
<