ML中的数据预处理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yanhe156/article/details/83422433
  1. 原始数据(必须)要做 Normalization!
    在进行数据分析的时候,什么情况下需要对数据进行标准化处理? 见Maigo大佬的回答。
    如果不做Normalization 会出现什么后果?今天遇到一种情况,原始数据范围大概是(5000,10000),神经网络第一层是卷积,激活函数是sigmoid。直接将原始数据作为神经网络的输入,最后发现对不同样本,神经网络的输出竟然都是相同的。。。训练时loss自然也不下降。原因自然是sigmoid函数的输入太大了,输出值接近1,对任何样本这一层的输出直接变成常数了,模型的输出自然也都相同。

    在这里插入图片描述

    Normalization指将数据范围变为[0,1],有时是[-1,1],中文翻译成归一化,有的也叫标准化,我觉得归一化比较贴切,标准化一般会想到标准正态分布。深度学习里还有一种batch normalization,这里的normalization指的是将把每层的输入转化为标准正态分布,这样能够加速训练。
    说起来对数据进行Normalization 应该是常识…

猜你喜欢

转载自blog.csdn.net/yanhe156/article/details/83422433