平均滑动模型

  深度网络的最终计算是求出w,即每个节点的权重。计算w的方法通常是通过损失函数进行反向传播,最终调整w的值, 这里就出现一个问题,即 噪音点会使得最终计算出w造成偏差。

   举个例子,通过n轮学习后,w的值稳定为1. 突然经过下一轮学习,既n+1轮后,w的值变成了10。 说明很可能第n+1轮的数据是强噪音,因为这条数据让稳定值产生了比较大的波动!

  平均滑动模型就是为了避免这种情况。我们先来直观了解下,什么是平均滑动模型: 最近的n条数据的平均值!   

举个例子,一开始有10条数据

 1  1  1  1  1  1  1  1  1  1 


他们的平均值很是明显为1,现在加入一个新的数据,10:

 1  1  1  1  1  1  1  1  1  10

由于只取最近n条,我们将n就定为10,那么, 原来的第1条数据,就被删除了,现在,最近10条的平均值变成了:(9+10)/10=1.9

作用已经很明显了,再用这个例子来说回我们的w,前10次w的平均值为1,当第11次w的值变为10时,通过平均滑动模型,将w从10拉回到1.9,将这个噪音的影响降到最低! 这就是平均滑动模型的意义。

有tensorflow中,并不是用的这种公式,然而想要达到的效果是一致的。

你可能感兴趣的:(平均滑动模型)