深度学习数据预处理

深度学习数据预处理

1.常见数据预处理方式:(红色的线指出各维度的数值范围)

data_process1

均值减法:对数据中每个独立特征减去均值,集合上理解为:在每个维度上,都将数据云的中心迁移到原点

归一化:将所有维度都做归一化:

第一种做法:先对数据做零中心化处理,然后每个维度都除以标准差
第二种做法:每个维度都做归一化,使得每个维度最大和最小值都是 1 和 -1
PCA 降维:取得数据的主成分,可以对数据去除相关性

白化whitening:先对数据进行旋转(旋转的矩阵就是 SVD 分解中的 U矩阵),然后对每个维度除以特征值(为防止分母为0,通常加一个很小的值作为平滑系数)来对数值范围进行归一化

如果数据服从多变量的高斯分布,则白化之后,数据的分布是一个均值为零,且协方差相等的矩阵
该变换的缺点是:可能会放大数据中的噪声。因为它将所有维度都拉伸到相同的维度,这包括了那些大多数是噪声的维度。这个问题可以采用更强的平滑系数来解决
data_process2

实际在神经网络中,并不会采用 PCA 和白化。

2.任何预处理策略都只能在训练集的数据上进行,然后再应用到验证集或测试集上。

如数据均值:首先分成训练集、验证集、测试集,从训练集中求数据的均值。然后训练集、验证集、测试集中的数据减去这个均值。 而不是减去测试集均值或者验证集均值

3.激活函数:当前推荐使用 ReLU 激活函数

4.Batch Normalization:让数据在通过激活函数之前,添加一个 batch normalization

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
深度学习数据预处理是在将数据输入到模型之前对其进行处理和准备的过程。以下是一些常用的深度学习数据预处理方法: 1. 数据清洗:去除异常值、缺失值和噪声数据,以确保数据的质量和一致性。 2. 特征缩放:对于具有不同量级的特征,可以使用特征缩放技术如归一化(将数据缩放到0-1之间)或标准化(将数据转换为均值为0,标准差为1的分布)来统一特征的范围。 3. 特征编码:将非数值型特征转换为数值型特征。例如,使用独热编码(One-Hot Encoding)将分类变量转化为二进制向量。 4. 特征选择:根据特征的相关性和重要性选择最具代表性的特征。可以使用相关系数、方差阈值或基于模型的方法进行特征选择。 5. 数据增强:通过对原始数据进行变换和扩充,生成更多的训练样本。例如,对图像进行旋转、平移、缩放等操作,以增加模型的鲁棒性。 6. 数据划分:将数据集划分为训练集、验证集和测试集,用于模型的训练、调优和评估。 7. 序列填充和截断:对于序列型数据,可以使用填充技术(如零填充或平均值填充)来补全不完整的序列,或者截断长序列以保持一致性。 8. 数据标准化:对于数值型数据,可以使用标准化技术(如Z-score标准化)使数据具有零均值和单位方差,以便更好地满足模型的要求。 这些方法可以根据具体问题和数据集的特点进行灵活选择和组合,以提高深度学习模型的性能和鲁棒性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值