美文网首页深度学习
数据预处理、特征工程和特征学习

数据预处理、特征工程和特征学习

作者: 庵下桃花仙 | 来源:发表于2019-03-26 21:00 被阅读0次

神经网络的数据预处理

数据预处理的目的是使原始数据更适合神经网络处理,包括向量化、标准化、处理缺失值和特征提取。

向量化

神经网络的输入和目标都必须是浮点数张量。

值标准化

将取值较大的数据或异质数据(heterogeneous data)输入网络不安全,会造成较大的梯度更新,导致网络无法收敛。输入数据应有以下特征:

  • 取值较小:在 0 - 1 范围内;
  • 同质性(homogenous):所有特征值的取值在大致相同的范围;
    下面是更严格的标准化方法
  • 将每个特征分别标准化,使其平均值为0;
  • 将每个特征分别标准化,使其标准差为1。
# 假设 x 是一个形状为(samples, features)的二维矩阵
x -= x.mean(axis=0)
x /= x.std(axis=0)

处理缺失值

处理数据中可能会有缺失值。在神经网络中,一般设置为0(只要0不是一个有意义的值)。网络能够学到0是缺失值,并忽略这个值。
如果测试集中有缺失值,而训练集上没有,则要手动造成一些有缺失值的训练样本。

特征工程

特征工程(feature engineering)是指:在输入数据之前,利用自己关于数据和机器学习算法的知识,对数据进行硬编码变换(不是模型学到的),以改善模型的效果。
特征工程本质:用更简单的方式表述问题,从而使问题变得更容易。
特征工程重要的原因:
1、良好的特征可以使用更少的资源,更优雅的解决问题;
2、良好的特征可以使用更少的数据解决问题。

相关文章

网友评论

    本文标题:数据预处理、特征工程和特征学习

    本文链接:https://www.haomeiwen.com/subject/vxvivqtx.html