数据归一化问题

  统计/机器学习 监督式学习 深度学习    浏览次数:2727        分享
1

如果输入数据进行了归一化操作,经过网络模型,得到的预测输出值是不是也会偏小;意思是输入数据归一化,会影响预测的输出值?这时候是不是标签数据也需要进行归一化操作?


 

梦雨666   2018-06-21 13:58



   2个回答 
3

数据归一化(normalization)相当于做数据矩阵的较弱的right preconditioning,目的是减小矩阵的condition number,从而让梯度递减一类的优化算法收敛更快,而且求矩阵逆的误差减小。

举个简单的例子,一层的线性回归,$Xw=y$,其中$X$是mxn输入数据矩阵,每一行是一个n维数据点,$w$是要求的网络参数,y是m个1维输出。当做数据归一化时,相当于乘上了right preconditioner$P$。

$XP^{-1}Pw=y$

其中$P$是个简单的可逆的对角线矩阵。$P_{ii}=\sigma_i$, $P_{ij}=0,i \neq j$, $\sigma_i$是输入数据X第i维的标准差。新求的网络参数是$Pw=w'$。新矩阵$XP^{-1}=X'$的condition number会小于$X$。还可以看出对$y$没有变化。

当用最小二乘法时,$loss=argmin_w(|XP^{-1}w'-y|^2)$,近似锥形。当condition number约等于1时,loss function在$w'$空间上的等高线(contour)更接近于圆/球;否则,当condition number是一个很大的正数时,等高线更接近于椭圆/椭球。对于梯度下降算法,圆形等高线下降更快。

结论是应该对输入数据做归一化,保持原始输出。

SofaSofa数据科学社区DS面试题库 DS面经

Zealing   2018-06-23 14:28

normalization是数据正则化吧?归一化和正则化不是一个东西吧? - dzzxjl   2018-09-25 10:00
正则化是regularization吧。normalization可以说是归一化,也可以说是正规化。 - u_u   2018-09-25 10:33
归一化,标准化,正规化,正则化这几个词被用混了。 我理解的归一化是rescaling,把值变为0,1之间。标准化(normalization)也可叫正规化(standarization),指z-score normalization。正则化(regularization)指给损失函数(loss function)中加入正则项(regularization term),比如L1/L2/total variation。 - Zealing   2018-09-25 10:44
1

归一化是把数据都变为(0,1)的范围内,这样的话处理起来方便,计算量也大大减少了,损失函数更容易收敛。

SofaSofa数据科学社区DS面试题库 DS面经

GodStick   2018-09-25 21:41



  相关主题

一个关于机器学习模型性能的问题。   1回答

用神经网络做二元分类,输出层用Sigmoid还是Softmax?   3回答

请问深度学习的书有推荐吗   6回答

前馈神经网络如何选择隐藏层的数量   2回答

dropout rate一般设置多大?   3回答

深度学习模型的“蒸馏”是什么意思?   0回答

deep learning中的pooling是什么意思?   6回答

epoch和batch之间有什么关系?   2回答

训练神经网络中经常提到的epoch是什么意思   2回答

深度学习和人工神经网络是一回事吗?   1回答

吴恩达深度学习第一课第四周作业L层结果收敛在0.64的问题   1回答

神经网络中的dense和sparse是什么意思?   2回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!