Advertisement

机器学习中数据清洗和特征选择总结

阅读量:

一.数据清洗

1.预处理:理解数据及数据特征(很重要)

2.异常样本数据:

  • 统一规范地调整时间格式
  • 清理多余特殊符号
  • 过滤无关字段(如性别字段对应的内容为空)
  • 实施数据去重操作
  • 修正异常数值记录
  • 验证多源数据之间的关联关系是否合理

3.采样:

数据不均衡问题:

  • 配置损失函数权重参数时,在小类中提高其惩罚系数。
  • 过采样与欠采样技术:通过从多数类别的样本中随机选择一定数量的数据点来平衡两类分布。

在集成学习框架下应用普通欠采样可能会导致重要信息的丢失;因此,在处理类别不平衡问题时通常建议结合集成学习与欠采样的策略来有效解决这一问题。通过不放回抽样的方法从多数类样本中选取部分实例作为训练集;随后将选出的多数类样本数据与少数类样本数据相结合构建训练集;重复上述过程可建立多个模型;通过集成这些模型的预测结果实现最终分类或预测目标

过采样/上采样(Over Sampling):通过有放回地进行抽样以补充 少数类样本的数量,并将 抽样的样本与原始数据结合使用 以构建训练数据集用于模型训练;然而这种做法往往会导致模型出现 过拟合现象,因此建议控制 抽样的数量不超过50%

通过数据合成的方式创建更多的样本,在小数据集场景下取得了较为理想的成果。其中一种常用的方法是SMOTE算法,这种方法通过分析小类样例在其特征空间中的相似关系来生成新的样本。

二.特征转换

1.词袋法:统计词频

2.TF-IDF:TF词频,IDF逆文档频率:表示词在各个文档中出现的概率

  1. HashTF-IDF:不用计算每个单词的出现次数(即词频),而是统计每个单词经过哈希处理后对应出现的样本数量。在数据规模较大的情况下,则采用HashTF的形式来简化处理过程。其特点在于具有较高的运行速度;但无法捕获高频词特征;这可能导致不同的单词被映射到同一个哈希值中。

4.缺省值填充

5.哑编码(OneHotEncoder)

  1. Binaryzation (Binarizer):对于具有连续取值的定量数据(特征),基于设定的临界点将其转换为二元变量.当数值超过该阈限时,变量被映射到1;反之,则映射到0.

  2. 标准化: 依据特征属性的数值计算其均值与标准差,并通过归一化处理使各特征指标满足标准正态分布要求。

8.区间缩放法(归一化):是指按照数据(特征属性即列)的数值范围特性对数据进行标准化处理使数据标准化处理落在指定区间范围内

  1. 正则化:与标准化不同,在处理矩阵各行的数据时进行操作。其目的是使每一行都转化为单位向量。

降维:通过主成分分析法(PCA)和线性判别分析(LDA)实现维度缩减以降低计算复杂度,并加快训练速度。通过主成分分析法(PCA),我们能够使数据映射后具有更大的分散性;主成分分析法属于无监督学习方法。线性判别分析(LDA)旨在使数据在低维空间中具有最佳的分类性能,并且属于有监督学习方法。

规范数据处理的标准方法旨在减少不同特征因数值范围差异可能对模型训练效果产生的影响。例如,在同一特征下不同样本的数据可能会呈现出显著差异性。此外,在各个特征间存在明显数值差距时,则可能导致某些极端值对模型准确性的误导作用出现。特别地,在梯度下降等优化算法的应用场景中会更加明显地反映出来这一问题。通过调整数据分布特性带来的双重优势包括:1)提升迭代收敛速度;2)提高计算精度。

归一化 对于不同特征维度的伸缩变换的主要目标是使得各个维度之间具有可比性的同时不会影响原始数据的分布情况(相同特性的特征经过变换后仍然保持其特性)。类似于标准化的方法,归一化也属于无量纲化处理的一种方法。

Regularization 是通过范数规则约束特征属性的一种方法,在机器学习中我们都知道L1、L2正则能够有效降低模型过拟合的风险。在执行正则化操作时,并不会影响数据的整体分布情况;然而它会改变各个特征之间的相互关联性。

复制代码
    如果面试有人问标准化和归一化的区别:标准化会改变数据的分布情况,归一化不会,标准化的主要作用是提高迭代速度,降低不同维度之间影响权重不一致的问题。

全部评论 (0)

还没有任何评论哟~