机器学习中特征工程的实用方法
2023年07月17日 由 Camellia 发表
659867
0
特征学习是机器学习中的一个重要组成部分,但往往很少有人谈论它,很多指南和博客文章都集中在机器学习生命周期的后期阶段。这一支持性步骤可以使机器学习模型更准确、更高效,将原始数据转化为更具体可用的形式。没有它,建立完全优化的模型是不可能的。
[caption id="attachment_55533" align="aligncenter" width="740"]
图片来源:Pixabay[/caption]
本文将讨论特征学习在机器学习中的工作原理,以及如何通过简单而实用的步骤来实施它。此外,我们还将讨论机器学习的一些优缺点,全面概述这一重要过程。
什么是特征工程?
特征工程是一种重要的机器学习技术,它处理数据集并将其转化为与特定任务相关的可用数据集。
特征是被分析的数据元素,在数据集中以列的形式出现。通过对这些数据元素进行修正、排序和标准化,可以优化模型的性能。特征学习修改这些数据元素使它们相关,从而使模型更准确,响应时间更快,因为使用的变量更少。
特征工程的过程可以分为以下几个步骤:
1.通过分析来修正数据中的任何问题,例如不完整的字段、不一致性和其他异常。
2.删除与模型行为没有关联的任何变量。
3.删除重复数据。
4.对记录进行关联和标准化。
为什么特征工程在机器学习中如此重要?
如果没有特征工程,将无法设计能够准确执行其功能的预测模型。特征学习还可以减少所需的时间和计算资源,使模型更高效。
数据的特征决定了预测模型的工作方式,有助于训练每个模型以实现期望的结果。这意味着即使是不完全适用于特定功能的数据也可以通过修改来实现适当的结果。特征学习还大大缩短了以后进行数据分析的时间。
虽然特征学习是必不可少的,但它也有一些局限性,以及明显的优势,如下所列。
特征工程:优点
1.具有工程特征的模型在数据处理方面效率更高。
2.模型更简化,因此更容易维护。
3.预测和估计更准确。
特征工程:缺点
1.特征工程可能是一个耗时的过程。
2.需要进行深入分析来构建一个有效的特征列表,其中包括对数据集、模型的处理行为和业务背景的全面理解。
在机器学习中实施特征工程的实际方法:六个步骤
既然我们对特征学习的能力以及它的缺点有更好的理解,让我们考虑一种实际的方法来进行六个关键步骤的过程。
1.数据准备
特征工程过程中的第一步是将从各种来源收集到的原始数据转换为可用的格式。可用的机器学习格式包括.csc、.tfrecords、.json、.xml和.avro。为了准备好数据,它必须经过一系列的处理,如清理、融合、摄取和加载。
2.数据分析
分析阶段,有时被称为探索性阶段,是从数据集中提取洞察和描述性统计数据,然后通过可视化展示以更好地了解数据。然后找到相关变量及其属性,以便清理。
3.改善
一旦数据经过分析和清理,就是改善它的时候了,可以通过添加任何缺失值、标准化、转换和缩放来改进数据。数据还可以通过添加虚拟值进一步修改,这些虚拟值是表示分类数据的定性/离散变量。
4.构建
特征可以通过手动和自动使用算法(例如tSNE或主成分分析(PCA))进行构建。在特征构建方面有几乎无穷无尽的选择。然而,解决方案总是取决于问题。
5.选择
特征/变量/属性选择通过只选择对构建模型的目标变量最相关的变量,来减少输入变量(特征列)的数量。这有助于提供更好的处理速度并减少计算资源的使用。
特征选择技术包括:
1.用于删除任何不相关特征的过滤器
2.用于训练机器学习模型使用多个特征的包装器
3.结合了过滤器和包装器的混合模型
例如,基于过滤器的技术依赖于统计测试来确定特征与目标变量的相关程度。
6.评估和验证
评估过程确定模型在训练数据上使用所选特征的准确性。如果准确性达到所需标准,那么可以对模型进行验证。如果不符合要求,则需要重新进行特征选择阶段。
机器学习中的特征工程用例
现在让我们来看看机器学习中特征工程的三个常见用例。
从同一数据集中获取额外的信息
许多数据集包含任意值,例如日期、年龄等,可以将其修改为提供有关查询的特定信息的不同格式。例如,日期和持续时间细节可以进行交叉引用,以确定用户行为,例如他们访问网站的频率和在网站上花费的时间。
预测模型
选择正确的特征有助于为各种行业构建预测模型,其中一个行业可以从这样的模型中受益的是公共交通,帮助评估有多少乘客可能在特定的一天使用某项服务。
恶意软件检测
手动检测恶意软件非常困难,大多数神经网络在这方面也存在问题。然而,特征工程可以结合手动技术和神经网络来突出异常行为。
机器学习中的特征工程:结论
特征工程是构建机器学习模型的重要阶段,在这个阶段做好工作可以确保机器学习模型更准确、使用更少的计算资源,并且处理速度更快。
特征工程的过程可以分为六个阶段,从最初的数据准备到验证,只选择最相关的数据元素来执行特定任务。
来源:https://www.kdnuggets.com/2023/07/practical-approach-feature-engineering-machine-learning.html