数据可视化可以直观数据分析的结果,还能帮助我们理解TensorFlow在训练过程中的每一步的变化,学起来更加直观。本文主要介绍Deep Playground,下一篇会介绍TensorBoard。
PlayGround
Deep playground是一个简单神经网络演示过程的平台,适合新手们玩一玩,教学向。
主展示页一共分成了四块:
- Data
- Feature
- Hidden Layers
- Output
Data
Playground提供了四种不同形态(圆形、异或、高斯、螺旋)的初始数据,蓝色是正值,黄色是负值。
可以定义一个数据集中训练样本和测试样本的比例,还可以加噪音,以及设置每批(batch)进入神经网络的点可以为1-30个。
Feature
每个数据都有X1(横坐标)和X2(纵坐标)两个特征,在此基础上还衍生了其他几种特征:
- X1X1(抛物线信息)
- X2X2 (抛物线信息)
- X1X2 (双抛物线信息)
- sin(X1) (关于横坐标的正弦函数的信息)
- sin(X2) (关于纵坐标的正弦函数的信息)
Hidden Layers
在这里可以设置隐藏层以及每层隐藏层中的神经元个数,还有激活函数。(注意:激活函数设置为Sigmoid或ReLU时,所有神经元均变为渐变蓝小方块,因为Sigmoid值域为(0,1),ReLU值域为[0,+∞))
隐藏层之间的连线是权重weight,粗细深浅表示权重的绝对值的大小(换句话说就是这个因素对下一层的影响威力的大小)。把鼠标放在线上,可以查看权重具体数值以及修改。
在模型训练的时候,通过反向传播调整权重,我们可以观察到连线的粗细深浅的变化。
Output
显示每次神经网络的输出结果,右上角可以看到测试损失(test loss)和训练损失(train loss)逐渐下降,趋于平缓之后,网络就训练好了。
你可以勾选下面两个选项,来查看训练数据分布和离散显示输出结果。