通过上期的分享TensorBoard可视化基础,我们分享了TensorBoard的基础操作,但是上期的文章,只是显示了一个TensorFlow的基本层的GRAPHS,并没有实际的训练,本期修改一下上期的代码,用TensorBoard显示下图biases 与weights信息以及其他训练信息
TensorFlow可视化
定义数据x_data=np.linspace(-1,1,300)[:,np.newaxis] noise=np.random.normal(0,0.05,x_data.shape) y_data=np.square(x_data)-0.5+noise定义一个一元二次函数,TensorFlow来训练拟合此函数
添加层with tf.name_scope('inputs'): xs=tf.placeholder(tf.float32,[None,1],name='x_input') ys=tf.placeholder(tf.float32,[None,1],name='y_input') hidden layer predition=add_layer(lay_one,10,1,n_layer=2,activation_function=None)搜集loss信息 with tf.name_scope('train'): train_step=tf.train.GradientDescentOptimizer(0.1).minimize(loss)通过summary.scalar方法,可以在TensorBoard下scalars视图看到loss的变化信息,通过查看loss的变化,能够分析出你的TensorFlow是否在训练
loss
loss越来越小,说明TensorFlow在优化训练
初始化TensorFlow在这里,我们可以看到除了变量需要初始化外,tf.summary需要搜集所有的summary信息,并合并到一起
init = tf.global_variables_initializer() merged=tf.summary.merge_all() 训练TensorFlowwith tf.Session() as sess: 每50step搜集一个summary信息 result=sess.run(merged,feed_dict={xs:x_data,ys:y_data}) #添加summary信息到log文件 writer.add_summary(result,i)运行TensorBoard(参考上期),可以看到完整的可视化数据
TensorFlow可视化
不仅能够看到每层的biases与weights训练过程,也可以清楚的看到loss的变化曲线
下期预告下期分享TensorFlow中的过拟合(Overfitting)与dropout的概念
机械学习
谢谢大家的点赞与转发,关于分享的文章,大家有任何问题,可以在评论区一起探讨学习!!!
本站所发布的文字与图片素材为非商业目的改编或整理,版权归原作者所有,如侵权或涉及违法,请联系我们删除
热门信息
阅读 ()
1 注册微信号怎么注册第二个阅读 ()
2 怎么把照片变成卡通头像阅读 ()
3 手机越充越少电怎么解决