今天来学习特征工程的基本方法。
基本方法包括:特征选择(Feature Selection)、特征提取(Feature Extraction)和特征构建(Feature Construction)。
一、特征选择(Feature Selection)
从给定的特征集合中选出相关特征子集的过程。
去除无关特征,降低特征学习难度,让模型简单,降低计算复杂度。
抛弃这部分特征(冗余特征),可能会降低模型的性能,计算复杂度 和 模型性能 之间的取舍。
要注意不能丢弃重要特征!
这是一个取舍的问题,诚然,数据决定着模型的性能和质量,但是数据维度过大,也是一个灾难。
二、特征提取(Feature Extraction)
一般是在特征选择之前,提取的对象是原始数据,目的是自动构建新特征(深度学习),将原始数据构建为一组具有明显物理意义(Gabor、纹理特征、几何特征)或统计意义的特征。
特征提取-转换;特征选择-挑选;
特征提取,是将原始数据进行转换,构建新的特征;特征选择则是挑选,进行数据的取舍。
三、特征构建(Feature Construction)
从原始数据中人工构建新的特征,观察原始数据,思考问题的潜在形式和数据结构,数据特殊性和机器学习实战有助于构建。
特征的构建,需要“读”数据,需要一定的创造力和想象力!这是非常有趣的环节!
比如上面的数据,要进行读和分析,看到有Dog和Cat两种动物,同时有时间,进行一定的转换,发现其中的规律和特征。
延伸学习:
(以下内容整理自网络、文心一言等出处,并非课程笔记,因此成为延伸学习,每篇笔记均有延伸学习的环节。如果相关定义和内容和笔记有出入,仅供参考。)
特征工程中的特征挑选、特征提取与特征构建
1. 特征挑选(Feature Selection)
定义:特征挑选是从原始特征集中选择出对模型预测性能有重要贡献的特征子集的过程。
场景:当数据集包含大量特征时,其中许多特征可能是冗余的、不相关的或噪声,这些特征会降低模型的性能。特征挑选旨在去除这些不相关或冗余的特征,提高模型的泛化能力和计算效率。
关键技术:常见的特征挑选技术包括过滤法(如方差阈值、相关系数、卡方检验等)、包装法(如递归特征消除、基于模型的特征选择等)和嵌入法(如基于树模型的特征重要性选择)。
举例:在信用卡欺诈检测中,原始数据集可能包含用户的交易金额、交易时间、交易地点等数十个特征。通过特征挑选,可以选择出如“交易金额”、“交易频率”、“异常交易地点”等对欺诈检测最为重要的特征,从而简化模型并提高性能。
2. 特征提取(Feature Extraction)
定义:特征提取是通过转换或组合原始特征,创造出新的、更有代表性的特征集的过程。
场景:当原始数据集中的特征不足以充分描述数据的内在结构或模式时,或者当特征维度过高导致计算复杂时,需要进行特征提取。
关键技术:常见的特征提取技术包括主成分分析(PCA)、线性判别分析(LDA)、独立成分分析(ICA)等降维方法,以及文本处理中的词袋模型、TF-IDF等。
举例:在图像识别中,原始数据是像素矩阵,直接将其作为特征会导致维度过高。通过特征提取技术如卷积神经网络(CNN),可以从原始像素中提取出边缘、纹理等低层次特征,再进一步组合成高层次的抽象特征,从而有效提高图像识别的准确性。
3. 特征构建(Feature Construction)
定义:特征构建是根据领域知识和对数据的理解,手动创造新的特征以捕获数据中重要信息的过程。
场景:当现有特征无法充分描述业务场景或目标变量时,或者当领域知识表明某些特定组合或变换对模型性能有显著提升时,需要进行特征构建。
关键技术:特征构建依赖于领域知识和数据分析技能,没有固定的技术方法。常见的操作包括特征的组合(如相乘、相加)、变换(如对数变换、幂变换)和编码(如独热编码、标签编码)等。
举例:在房价预测中,除了房屋的面积、卧室数等直接特征外,还可以通过特征构建创造出如“面积与卧室数的比值”、“每平方米的价格”等更有意义的特征。这些新构建的特征可能更能反映房价的实际影响因素,从而提高预测模型的准确性。