特征工程概述

【AI深究】特征工程(Feature Engineering)深度解析:原理、算法与工程实践|核心原理、主流方法、数学表达、未来趋势|归一化与标准化、降维、文本、时间、类别型、AutoFE|未来前沿 大家好,我是爱酱。本篇延续将会系统梳理特征工程(Feature Engineering)的定义、核心流程、主流方法、数学表达、工程实践与未来趋势,结合数学公式,帮助你全面理解这一机器学习与AI落地的“灵魂工程”。 注:本文章含大量数学算式、详细例子说明及大量代码演示,大量干货,建议先收藏再慢慢观看理解。新频道发展不易,你们的每个赞、收藏跟转发都是我继续分享的动力! 阅读详情


Feature engineering is the process of using domain knowledge of the data to create features that
make machine learning algorithms work.

工业界广泛流传这么一句话:数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。顾名思义,特征工程本质是一项工程活动,目的是最大限度地从原始数据中提取特征以供算法和模型使用。

1.特征处理

1.1 特征与标注数据清洗

1.1.1数据采样

对于二分类问题:选取正例,负例,负类设置为0, 正类设置为1.

对于多分类问题:选取多分类,编码到[0,classnum).

类别不平衡问题:样本层面可以采用oversampling/undersampling. 算法层面可以采用代价敏感方法/样本设置权重

1.1.2 样本过滤

基于统计的异常点检测算法
例如极差,四分位数间距,均差,标准差等,这种方法适合于挖掘单变量的数值型数据。

基于距离的异常点检测算法

主要通过距离方法来检测异常点,将数据集中与大多数点之间距离大于某个阈值的点视为异常点,主要使用的距离度量方法有绝对距离(曼哈顿距离)、欧氏距离和马氏距离等方法。

基于密度的异常点检测算法

考察当前点周围密度,可以发现局部异常点。

1.2 无量纲化

为了平衡取值范围不一致的特征,需要对特征进行无量纲化。常用的无量纲化操作有标准化和归一化。

标准化:标准化需要计算特征的均值和标准差,然后使用如下公式计算放缩后的特征值:

x′=x−X⃗ S

区间缩放法:区间缩放法的思路有多种,常见的一种为利用两个最值进行缩放,公式表达为:
x′=x−MinMax−Min

1.3离散化与哑编码

1.3.1 离散化

在上面介绍过连续值的取值空间可能是无穷的,为了便于表示和在模型中处理,需要对连续值特征进行离散化处理。常用的离散化方法包括等值划分和等量划分。例如某个特征的取值范围为[0,10],我们可以将其划分为10段, [0,1),[1,2),⋯,[9,10)

  1. 离散特征的增加和减少都很容易,易于模型的快速迭代;
  2. 稀疏向量内积乘法运算速度快,计算结果方便存储,容易扩展;
  3. 离散化后的特征对异常数据有很强的鲁棒性模型也会更稳定;
  4. 离散化后可以进行特征交叉,由M+N个变量变为M*N个变量,进一步引入非线性 提 升表达能力;
  5. 特征离散化以后,起到了简化了逻辑回归模型的作用,降低了模型过拟合的风险

1.3.2 哑编码

哑编码主要是采用N位状态寄存器来对N个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候只有一位有效。

例子:

对于国籍特征假设有三个选项,{中国,美国,加拿大} One-hot encoding 之后,中国变成了[1,0,0],美国变成了[0,1,0],加拿大变成了[0,0,1]

好处:

  1. 使用one-hot编码,将离散特征的取值扩展到了欧式空间,离散特征的某个取值就对 应欧式空间的某个点。
  2. 在回归,分类,聚类等机器等学习算法中,特征之间距离的计算或相似度的计算是 非常重要的,而我们常用的距离或相似度的计算都是在欧式空间的相似度计算,计算 余弦相似性,基于的就是欧式空间。
  3. 将离散型特征使用one-hot编码,确实会让特征之间的距离计算更加合理
  4. 对离散型特征进行one-hot编码可以加快计算速度。

1.4 缺失值处理

有些特征可能因为无法采样或者没有观测值而缺失.例如距离特征,用户可能禁止获取地理位置或者获取地理位置失败,此时需要对这些特征做特殊的处理,赋予一个缺省值。缺省值如何赋予,也有很多种方法。例如单独表示,众数,平均值等。

1.5 特征生成以及特征学习

特征生成

根据已有特征生成新特征,增加特征的非线性。常见的数据变换有基于多项式的、基于指数函数的、基于对数函数的。

例如4个特征,度为2的多项式转换公式如下:

特征学习

特征学习可以分为监督特征学习和无监督特征学习:

监督特征学习包括监督神经网络、多层感知机;

无监督特征学习包括无监督PCA、LDA、AutoEncoder、MF和各种形式的聚类算法。


2.特征选择

2.1 概述

在机器学习或者统计学中,又称为变量选择、属性选择或者变量子集选择,是在模型构建中,选择相关特征并构成特征子集的过程。

目的

  • 简化模型,增加模型的可解释性
  • 缩短训练时间
  • 避免维度灾难
  • 改善模型通用性、降低过拟合

2.2一般过程

[1]Dash, Manoranjan, and Huan Liu. “Feature selection forclassification.” Intelligent data analysis 1.1-4 (1997): 131-156.

[2]Tang, Jiliang, Salem Alelyani, and Huan Liu. “Feature selection forclassification: A review.” Data Classification: Algorithms andApplications (2014): 37.

2.3搜索方法

Screen Shot 2017-12-07 at 9.39.37 AM

2.4评价标准


Filter:

  • 执行时间短(+):一般不会在数据集上进行迭代计算,且是分类器无关的,相比于训练分类器要快。
  • 一般性(+):评价数据中属性的本身的性质,而不是属性与特定分类器的关联关系(适合程度),所以得到的结果更具有一般性,而且对于很多分类器都能表现“良好”。
  • 选择大规模子集(-):倾向于选择全部最优的特征子集,导致决定停止的条件决定权交给了用户,具有较强的主观性

Wrapper:

  • 准确性(+):由于特征子集是针对特定的分类器调准,能获得较好的识别率。
  • 泛化能力(+):有很多机制可以防止过拟合,例如在分类器中可以使用交叉验证等技术。
  • 执行速度(-):对于每个候选的特征子集,必须重新训练一个分类器甚至多个分类器(交叉验证),所以对于计算密集型非常不适合。
  • 一般性(-):由于此种方法对分类器敏感,而不同的分类器具有不同原理的评价函数(损失函数),只能说最终选择特征子集是对当前分类器“最好”的。

2.4.1 过滤法


2.4.2 封装法

  1. 基于目标函数
  2. 完全搜索[穷举]
  3. 启发式搜索[贪心]
  4. 随机搜索[策略+好运气]

2.4.3 嵌入法

在模型既定的条件下,寻找最优特征子集

  1. 正则化项( L1、L2 )
  2. LASSO回归
  3. 岭回归(RidgeRegression)
  4. 决策树
  5. ID3、C4.5、CART
  6. 深度学习

3.特征降维

3.1 概述

目的:最大限度地降低数据的维度的前提下能够同时保证保留目标的重要的信息

3.2 主成分分析/PCA



3.3 线性判别分析/LDA





3.4局部线性嵌入/LLE





3.5拉普拉斯特征映射/LE




3.6 随机邻域嵌入/SNE


3.7 t-分布邻域嵌入/T-SNE



参考文献:徐坤,汇报

python 机器学习(一)机器学习概述与特征工程 同步更新在个人网站:http://www.wangpengcufe.com/machinelearning/pythonml-pythonml1/ 一、机器学习概述 1.1、什么是机器学习? 机器学习是从数据中自动分析获得规律(模型),并利用规律对未知数据进行预测 1.2、为什么需要机器学习? 解放生产力,智能客服,可以不知疲倦的24小时作业 解决专业问题,ET医疗,帮助看病 提供社会便利,例... 阅读详情

相关推荐

【机器学习-09】特征工程

特征工程是机器学习模型构建的初步工作,但它的重要性却贯穿整个模型生命周期。在进行特征工程时,我们需要充分利用数据科学的知识和技巧,结合具体的应用场景和业务需求,来制定出最合适的特征提取和转换策略。只有这样,我们才能为机器学习模型提供最有价值的输入,从而使其发挥出最大的潜力。总之,特征工程是机器学习中的一项关键任务,它需要我们用心去探索、去实践、去创新。只有不断地优化和完善特征工程的过程,我们才能构建出更加准确、更加可靠的机器学习模型,为实际应用带来更大的价值。

qq_38614074的博客 2万+

机器学习之特征工程详解

本文以特征工程的基本概念为引,着重介绍了特征工程的主要工作流程和实现方法,供大家学习参考。

weixin_46880696的博客 8888

机器学习 | 特征工程综述

一、前言 数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。特征工程指的是把原始数据转变为模型的训练数据的过程,它的目的就是获取更好的训练数据特征,使得机器学习模型逼近这个上限。 构建一个算法模型需要几个步骤,包括数据准备、特征工程、模型构建、模型调优等,其中特征工程是最重要的步骤,需要 70% 甚至以上的工作量。特征工程主要包括数据预处理、特征选择、特征构造、特征降维等。 通过总结和归纳的特征工程包括以下方面: 二、数据预处理 数据预处理是特征工程的最重要的起始步骤,..

2743

什么是特征工程?如何进行特征工程?

再让我们回归一下本文开始的特征工程的思维导图,我们可以使用sklearn完成几乎所有特征处理的工作,而且不管是数据预处理,还是特征选择,抑或降维,它们都是通过某个类的方法fit_transform完成的,fit_transform要不只带一个参数:特征矩阵,要不带两个参数:特征矩阵加目标向量。这些难道都是巧合吗?还是故意设计成这样?方法fit_transform中有fit这一单词,它和训练模型的fit方法有关联吗?接下来,我将在《使用sklearn优雅地进行数据挖掘》中阐述其中的奥妙!

Machine Learning with Tutors 10万+

机器学习之概述与特征工程

机器学习概述与特征工程

学习中 1480

FPGA八股文(2)——笔试的FPGA问题汇总(持续更新)

常见FPGA笔试题的概念总结

居安士的博客 8907

特征工程与数据预处理概述

一个机器学习系统可以学习的程度主要由训练数据的质量决定。尽管每个学习算法都有其自身的优点和缺点,但系统性能上的差异往往来自于数据的准备方式或者表现形式的不同。因此特征工程可以理解为数据表示的一个工具。特征工程是数据预处理流程的一部分,具体结构如下图所示。

2301_81480617的博客 597

STM32中断实战:用ITR9606红外传感器DIY转速计数器(附完整代码)

本文详细介绍了如何使用STM32中断机制和ITR9606红外传感器DIY高精度转速计数器。从传感器选型、中断配置到抗干扰设计,提供完整的实战指南和优化代码,特别适合嵌入式开发者和硬件工程师快速实现工业级转速检测系统。

weixin_29159613的博客 289

day01- 机器学习之概述、特征工程

一、机器学习 概述 机器学习是从数据中自动分析获得规律(模型),并利用规律对未知数据进行预测 机器学习应用场景 二、数据来源和类型 数据来源 企业日益积累的大量数据(互联网公司更为显著) 政府掌握的各种数据 科研机构的实验数据 … 数据类型 离散型数据 连续性数据 可用的数据集 Kaggle: 大数据竞赛平台 80万科学家 真实数据 数据量巨大 UCI 收集了360个数据集 覆盖科学,经济等领域 数据量几十万 scikit-learn 数据量较小 方便学习 Kagg

qq_36334897的博客 323

【原创,解决CLodop安装后无法调用的问题】已经安装过CLodop,但是网页上仍然提示“clodop云打印服务(localhost本地)未安装启动,点击这里执行安装....”

在某些国内web网站中,需要安装一个名为“CLodop”的插件;但在实际使用过程中,即使安装了CLodop插件,网页试图调用它时还是会提示“clodop云打印服务(localhost本地)未安装启动,点击这里执行安装...”,且无法完成相关打印任务 本文属原创博客,分析了解决CLodop无法被调用的问题,并附上了原理和解决方法,本质上是和跨域请求以及CORS类安全组策略相关

link_in_csdn的博客 2万+

Ferry工单平台部署

ferry工单平台部署

运维求生之路 1897

机器学习-特征工程与 sklearn 机器学习概述

实例化预估器 (估计器) 对象 (estimator):根据任务选择,如分类(KNeighborsClassifier、MultinomialNB 等)、回归(LinearRegression、Ridge)、无监督学习(KMeans)。进行训练模型评估方式 1:对比 y_predict = estimator.predict (x_test) 和 y_test。方式 2:计算准确率 accuracy = estimator.score (x_test, y_test)。使用模型 (预测)

2201_75768010的博客 1427

图神经网络学习笔记-点云数据处理(专题七)

本教程解释了如何利用图神经网络(Graph Neural Networks,GNNs)来处理和训练点云数据。尽管点云默认情况下不具有图结构,但我们可以利用 PyG 的转换工具,将其转化为适合 PyG 所提供的全套 GNN 模型的形式。关键思想是从点云数据中创建一个,通过 GNN 的消息传递机制,从中学习有意义的局部几何结构。这些点的表示可以被用于例如点云分类或分割等任务。

351

特征工程的概述

在建立模型的时候,最终是希望模型有较好的预测能力,但是在另一方面,也希望模型不要太复杂,以至于能有较好的解释性和适用性。 1、定义 定义:在机器学习或者统计学中,又称为变量选择、属性选择或者变量子集选择,是在模型构建中,选择相关特征并构成特征子集的过程[3]。 defination in wiki: In machine learning and statistics, feature...

dinghetie3251的博客 520

uniapp - 使用web-view加载本地网页vue页面,用webview导入本地网页,uniAPP中使用web-view加载的本地及远程vue页面+双向通讯功能(兼容微信小程序、安卓苹果APP)

uniapp的App端web-view加载本地html,uniapp微信小程序webview加载本地HTML文件,在uniAPP中使用web-view加载的本地及远程vue页面且进行双向通讯,uni-app的web-view组件,支持加载远程网页,在app环境下,还支持加载本地HTML页面。uniapp WebView组件实现本地网页加载与通讯传值,uniAPP如何内嵌webView引入本地的vue网页示例代码,uniapp在web-view加载的本地及远程HTML中调用uni的API及网页和vue页面跳转

🏆 前端领域优质创作者 5226

农业无人机:无人机图像处理_(8).遥感图像处理与分析

遥感图像处理与分析在农业无人机技术中具有重要作用,通过图像预处理、特征提取、分类与分割、目标检测等技术,可以实现对农田的精细管理、作物监测、病虫害预测等应用。本节详细介绍了这些技术的基本概念、常用方法和具体实现,希望对您在农业无人机图像处理方面的学习和应用有所帮助。

zhubeibei168的博客 1336

机器学习重中之重-特征工程概述

数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。特征工程,其本质是一项工程活动,目的是最大限度地从原始数据中提取特征以供算法和模型使用。特征工程是机器学习和数据分析中至关重要的一步,它涉及对原始数据进行转换、提取和选择,以便更好地表示数据并改善机器学习算法的性能。特征工程是利用数据领域的相关知识来创建能够使机器学习算法达到最佳性能的特征的过程。

qq_65664454的博客 1272

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

特征工程基础知识总结概述

对于数据挖掘项目,本文将学习应该从哪些角度做特征工程?从哪些角度做数据清洗,如何对特征进行增删,如何使用PCA降维技术等。

Carroll的博客 1227

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

数据预处理之特征工程概述

何为特征工程呢?顾名思义,就是对原始数据进行一系列工程处理,将其提炼为特征,作为输入供算法和模型使用。本质上讲,特征工程是一个表示和展现数据的过程;实际工作中,特征工程的目的是去除原始数...

weixin_41432734的博客 519

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

上一篇: Django开发速成
下一篇: Vue2.js工程实践1:环境搭建
相国大人
博客等级 码龄10年 1009粉丝 132原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值