对输入特征进行规范化normalization

对输入特征进行规范化normalization

第一步

使数据集的平均值成为0
u = \frac{1}{m} \sum\limits_{i=1}^m x^{(i)}

x = x - u

第二步

使数据集的方差变为1(方差是用来衡量数据集的离散程度的)

\sigma = \frac{1}{m} \sum\limits_{i=1}^m (x^{(i)})^2 (注:这里的x^{(i)}是指执行了第一步之后的)

x = x/ \sigma

方差变为1之后,每个样本都在[-1, 1]之间了。

注意:

如果对训练集的输入特征进行了规范化处理,那么也必须对测试集及实际应用中要预测的数据进行规范化处理。在规范处理时,要使用由训练集计算出来的 u\sigma 。由于测试集和实际的待检测数据的数量很小,所以由他们计算出来的u\sigma是很片面的。

规范化处理normalization的原因:

进行规范处理之后,能大大提高神经网络的学习速度。因为规范化操作会把输入特征的分布映射到均值为0方差为1的标准正态分布,这样使得输入值落到了激活函数对输入特征比较敏感的区域——激活函数在0附近的梯度都比较大。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容