数据预处理方式(去均值、归一化、PCA降维)

一.去均值

1.各维度都减对应维度的均值,使得输入数据各个维度都中心化为0,进行去均值的原因是因为如果不去均值的话会不容易拟合。   这是因为如果在神经网络中,特征值x比较大的时候,会导致W*x+b的结果也会很大,这样进行激活函数(如relu)输出时,会导致对应位置数值变化量太小,进行反向传播时因为要使用这里的梯度进行计算,所以会导致梯度消散问题,导致参数改变量很小,也就会不易于拟合,效果不好。

右图为去均值之后的效果。

                 

二.归一化

1.一种是最值归一化,比如把最大值归一化成1,最小值归一化成-1;或把最大值归一化成1,最小值归一化成0。适用于本来就分布在有限范围内的数据。        

       另一种是均值方差归一化,一般是把均值归一化成0,方差归一化成1。适用于分布没有明显边界的情况。

                           

2. 进行归一化的原因是把各个特征的尺度控制在相同的范围内,这样可以便于找到最优解,不进行归一化时如左图,进行归一化后如右图,可发现能提高收敛效率,省事多了。

    

三.PCA/白化

1.PCA是指通过抛弃携带信息量较少的维度,保留主要的特征信息来对数据进行降维处理,思路上是使用少数几个有代表性、互不相关的特征来代替原先的大量的、存在一定相关性的特征,从而加速机器学习进程。(降维技术可单独讲)      

 PCA可用于特征提取,数据压缩,去噪声,降维等操作。      

2.白化的目的是去掉数据之间的相关联度和令方差均一化,由于图像中相邻像素之间具有很强的相关性,所以用于训练时很多输入是冗余的。这时候去相关的操作就可以采用白化操作,从而使得:                    

       1.减少特征之间的相关性                    

       2.特征具有相同的方差(协方差阵为1)      

3.举个白化的例子,如对于两个特征的关联分布如左图,可以看出特征组合点存在线性关系,此时我们进行白化后(特征向量的投影)可以变成右图的形式,无关联性。    

而且白化因为进行了方差均一化,所以还可以提升训练速度。      

                                

在处理MNIST数据集时,对数据进行归一化是很重要的。归一化是将数据缩放到一个特定的范围内,通常是将数据映射到0到1之间。这可以帮助我们更好地训练模型并提高模型的性能。 对于MNIST数据集,一种常用的归一化方法是将像素值除以255,这样可以将像素值转化为0到1之间的浮点数。这个方法可以确保所有的像素值都处于相同的范围内,使得模型更容易学习到有效的特征。 在使用PyTorch框架下载和读取MNIST数据集时,可以通过使用torchvision.transforms模块中的ToTensor()方法来进行归一化操作。ToTensor()方法将图像转换为张量,并将像素值除以255,从而实现了归一化。 因此,对于mnist数据集归一化的方法是将像素值除以255,可以使用PyTorch框架中的ToTensor()方法来实现。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [图像识别-MNIST分类问题](https://blog.csdn.net/weixin_45753078/article/details/121480857)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [【PyTorch】KNN实战之MNIST数据分类与归一化处理](https://blog.csdn.net/qq_44833724/article/details/123526142)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值