您当前的位置:首页 > 电脑百科 > 人工智能

简介机器学习中的特征工程

时间:2020-08-10 12:56:35  来源:  作者:

要解决一个机器学习问题,我们不能仅仅通过将算法应用到提供的数据上。比如.fit() 。我们首先需要构建一个数据集。

将原始数据转换为数据集的任务称为特征工程。

例如,预测客户是否坚持订阅特定产品。这将有助于进一步提高产品或用户体验,还有助于业务增长。

原始数据将包含每个客户的详细信息,如位置、年龄、兴趣、在产品上花费的平均时间、客户续订订阅的次数。这些细节是数据集的特性。创建数据集的任务是从原始数据中了解有用的特性,并从对结果有影响的现有特性中创建新特性,或者操作这些特性,使它们可以用于建模或增强结果。整个过程被简称为特性工程。

有多种方法可以实现特征工程。根据数据和应用程序不同来分类。

在本文中,我们将了解为什么使用特征工程和特征工程的各种方法。

为什么使用特征工程?

特征工程出现在机器学习工作流程的最初阶段。特性工程是决定结果成败的最关键和决定性的因素。

简介机器学习中的特征工程

 

特征工程在机器学习工作流程中的地位

许多Kaggle比赛都是通过基于问题创建适当的功能而获胜的。例如,在一场汽车转售比赛中,获胜者的解决方案包含一个分类特征——普通汽车的颜色,稀有汽车的颜色。这一特性增加了汽车转售的预测效果。既然我们已经理解了特性工程的重要性,现在让我们深入研究用于实现的各种标准方法。

现在让我们了解如何实现特性工程。以下是广泛使用的基本特征工程技术,

· 编码

· 分箱

· 归一化

· 标准化

· 处理缺失值

· 数据归责技术

编码

有些算法只处理数值特征。但是,我们可能有其他数据,比如在我们的例子中"用户观看的内容类型"。为了转换这种数据,我们使用编码。

One-Hot编码

将分类数据转换为列,并将每个惟一的类别作为列值,这是一种One-Hot编码。

下面是实现One-Hot编码的代码片段,

encoded_columns = pd.get_dummies(data['column'])
data = data.join(encoded_columns).drop('column', axis=1)

当分类特征具有不那么独特的类别时,这种方法被广泛使用。我们需要记住,当分类特征的独特类别增加时,维度也会增加。

标签编码

通过为每个类别分配一个唯一的整数值,将分类数据转换为数字,称为标签编码。

比如"喜剧"为0,"恐怖"为1,"浪漫"为2。但是,这样划分可能会使分类具有不必要的一般性。

当类别是有序的(特定的顺序)时,可以使用这种技术,比如3代表"优秀",2代表"好",1代表"坏"。在这种情况下,对类别进行排序是有用的。

下面是要实现标签编码器的代码片段。

from sklearn.preprocessing import ColumnTransformer
labelencoder = ColumnTransformer()
x[:, 0] = labelencoder.fit_transform(x[:, 0])

分箱

另一种相反的情况,在实践中很少出现,当我们有一个数字特征,但我们需要把它转换成分类特征。分箱(也称为bucketing)是将一个连续的特性转换成多个二进制特性的过程,通常基于数值。

简介机器学习中的特征工程

 

将数值数据分成4、8、16个箱子

#Numerical Binning Example
Value      Bin       
0-30   ->  Low       
31-70  ->  Mid       
71-100 ->  High#Categorical Binning Example
Value      Bin       
Germany->  Europe      
Italy  ->  Europe       
India  ->  Asia
Japan  ->  Asia

分箱的主要目的是为了使模型更健壮,防止过拟合,但这对性能有一定的影响。每次我们丢弃信息,我们就会牺牲一些信息。

正则化

归一化(也称为最小最大归一化)是一种缩放技术,当应用它时,特征将被重新标定,使数据落在[0,1]的范围内。

特征的归一化形式可通过如下方法计算:

简介机器学习中的特征工程

 

归一化的数学公式。

这里' x '是原始值而' x '是归一化值。

简介机器学习中的特征工程

 


简介机器学习中的特征工程

 

原始数据、归一化数据的散点图

在原始数据中,alcohol在[11,15],malic在[0,6]。归一化数据中,alcohol在[0,1]之间,malic在[0,1]之间。

标准化

标准化(也叫Z-score归一化)是一种缩放技术,当它被应用时,特征会被重新调整,使它们具有标准正态分布的特性,即均值为0,标准差为=1;其中,μ 为平均值(average),σ为与平均值的标准差。

计算样本的标准分数(也称z分数)如下:

简介机器学习中的特征工程

 

标准化的数学公式

这将特征在[-1,1]之间进行缩放

简介机器学习中的特征工程

 


简介机器学习中的特征工程

 

原始数据、标准化数据的散点图

在原始数据中,alcohol在[11,15],malic在[0,6]。在标准化数据中,二者居中于0。

处理缺失值

数据集可能包含一些缺失的值。这可能是在输入数据的失误或出于保密方面的考虑。无论原因是什么,减少它对结果的影响是至关重要的。下面是处理缺失值的方法,

· 简单地删除那些缺少值的数据点(当数据很大而缺少值的数据点较少时,这样做更可取)

· 使用处理缺失值的算法(取决于实现该算法的库)

· 使用数据注入技术(取决于应用程序和数据)

数据归责技术

数据填充就是简单地用一个不会影响结果的值替换缺失的值。

对于数值特征,缺失的值可以替换为:

· 0或默认值

#Filling all missing values with 0
data = data.fillna(0)

· 重复率最高的值

#Filling missing values with mode of the columns
data = data.fillna(data.mode())

· 该特征的均值(受离群值影响,可以用特征的中值替换)

#Filling missing values with medians of the columns
data = data.fillna(data.median())

对于分类特征,缺失的值可以替换为:

· 重复率最高的值

#Most repeated value function for categorical columns
data['column_name'].fillna(data['column_name'].value_counts()
.idxmax(), inplace=True)

· "其他"或任何新命名的类别,这意味着对数据点的估算

在本文中,我们了解了广泛使用的基本特性工程技术。我们可以根据数据和应用程序创建新特性。但是,如果数据很小而且质量不好,这些方法可能就没有用了。

作者:Ramya Vidiyala

deephub翻译组:孟翔杰



Tags:机器学习   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
基于算法的业务或者说AI的应用在这几年发展得很快。但是,在实际应用的场景中,我们经常会遇到一些非常奇怪的偏差现象。例如,Facebook将黑人标记为灵长类动物、城市图像识别系统...【详细内容】
2021-11-08  Tags: 机器学习  点击:(32)  评论:(0)  加入收藏
这是几位机器学习权威专家汇总的725个机器学习术语表,非常全面了,值得收藏! 英文术语 中文翻译 0-1 Loss Function 0-1损失函数 Accept-Reject Samplin...【详细内容】
2021-10-21  Tags: 机器学习  点击:(43)  评论:(0)  加入收藏
要开始为开源项目做贡献,有一些先决条件:1. 学习一门编程语言:由于在开源贡献中你需要编写代码才能参与开发,你需要学习任意一门编程语言。根据项目的需要,在后期学习另一种语言...【详细内容】
2021-10-20  Tags: 机器学习  点击:(37)  评论:(0)  加入收藏
作者:阿米特·V. 乔希(Ameet V Joshi)来源:华章科技 01 人工智能艾伦·图灵(Alan Turing)对人工智能的定义如下:如果窗帘后面有一台机器,并且有人正在与之互动(无论以何...【详细内容】
2021-09-07  Tags: 机器学习  点击:(74)  评论:(0)  加入收藏
字节跳动基础架构团队基于火山引擎机器学习平台 Clever 及其丰富的行业落地经验,推出开源项目 Klever,以工程化的方式降低智能技术落地门槛,助力企业快速打造智能业务。作者: 陈...【详细内容】
2021-02-19  Tags: 机器学习  点击:(170)  评论:(0)  加入收藏
特征选择是识别和选择与目标变量最相关的输入变量子集的过程。特征选择最简单的情况可能是存在数字输入变量和用于回归预测建模的数字目标的情况。这是因为可以计算出每个输...【详细内容】
2021-01-15  Tags: 机器学习  点击:(117)  评论:(0)  加入收藏
1、集成学习及Boosting算法集成学习属于机器学习,它是一种“训练思路”,并不是某种具体的方法或者算法。集成学习的核心思想是把已有的算法进行结合,从而得到更好的效果。集成...【详细内容】
2020-12-29  Tags: 机器学习  点击:(176)  评论:(0)  加入收藏
“终有一天,人工智能会像我们看待非洲平原上低级生物的化石一样看待我们。在人工智能眼中,人类只是直立行走的猿猴,用着粗糙的语言和简陋的工具,从诞生起就注定会灭绝。”&mdash...【详细内容】
2020-12-17  Tags: 机器学习  点击:(147)  评论:(0)  加入收藏
专注Python、AI、大数据,请关注公众号七步编程!人工智能方向的项目,和数据可视化是紧密相连的。模型训练过程中梯度下降过程是什么样的?损失函数的走向如何?训练模型的准确度怎么...【详细内容】
2020-10-15  Tags: 机器学习  点击:(355)  评论:(0)  加入收藏
在数据领域,很多人都在说机器学习,但是只有很少的人能说清楚怎么回事。网上关于机器学习的文章,大多都是充斥各种定理的厚重学术三部曲(我搞定半个定理都够呛),或是关于人工智能...【详细内容】
2020-09-25  Tags: 机器学习  点击:(111)  评论:(0)  加入收藏
▌简易百科推荐
作为数据科学家或机器学习从业者,将可解释性集成到机器学习模型中可以帮助决策者和其他利益相关者有更多的可见性并可以让他们理解模型输出决策的解释。在本文中,我将介绍两个...【详细内容】
2021-12-17  deephub    Tags:AI   点击:(15)  评论:(0)  加入收藏
基于算法的业务或者说AI的应用在这几年发展得很快。但是,在实际应用的场景中,我们经常会遇到一些非常奇怪的偏差现象。例如,Facebook将黑人标记为灵长类动物、城市图像识别系统...【详细内容】
2021-11-08  数据学习DataLearner    Tags:机器学习   点击:(32)  评论:(0)  加入收藏
11月2日召开的世界顶尖科学家数字未来论坛上,2013年诺贝尔化学奖得主迈克尔·莱维特、2014年诺贝尔生理学或医学奖得主爱德华·莫索尔、2007年图灵奖得主约瑟夫·斯发斯基、1986年图灵奖得主约翰·霍普克罗夫特、2002...【详细内容】
2021-11-03  张淑贤  证券时报  Tags:人工智能   点击:(39)  评论:(0)  加入收藏
鉴于物联网设备广泛部署、5G快速无线技术闪亮登场,把计算、存储和分析放在靠近数据生成的地方来处理,让边缘计算有了用武之地。 边缘计算正在改变全球数百万个设备处理和传输...【详细内容】
2021-10-26    计算机世界  Tags:边缘计算   点击:(45)  评论:(0)  加入收藏
这是几位机器学习权威专家汇总的725个机器学习术语表,非常全面了,值得收藏! 英文术语 中文翻译 0-1 Loss Function 0-1损失函数 Accept-Reject Samplin...【详细内容】
2021-10-21  Python部落    Tags:机器学习   点击:(43)  评论:(0)  加入收藏
要开始为开源项目做贡献,有一些先决条件:1. 学习一门编程语言:由于在开源贡献中你需要编写代码才能参与开发,你需要学习任意一门编程语言。根据项目的需要,在后期学习另一种语言...【详细内容】
2021-10-20  TSINGSEE青犀视频    Tags:机器学习   点击:(37)  评论:(0)  加入收藏
SimpleAI.人工智能、机器学习、深度学习还是遥不可及?来这里看看吧~ 从基本的概念、原理、公式,到用生动形象的例子去理解,到动手做实验去感知,到著名案例的学习,到用所学来实现...【详细内容】
2021-10-19  憨昊昊    Tags:神经网络   点击:(47)  评论:(0)  加入收藏
语言是人类思维的基础,当计算机具备了处理自然语言的能力,才具有真正智能的想象。自然语言处理(Natural Language Processing, NLP)作为人工智能(Artificial Intelligence, AI)的核心技术之一,是用计算机来处理、理解以及运...【详细内容】
2021-10-11    36氪  Tags:NLP   点击:(48)  评论:(0)  加入收藏
边缘计算是什么?近年来,物联网设备数量呈线性增长趋势。根据艾瑞测算, 2020年,中国物联网设备的数量达74亿,预计2025年突破150亿个。同时,设备本身也变得越来越智能化,AI与互联网在...【详细内容】
2021-09-22  汉智兴科技    Tags:   点击:(54)  评论:(0)  加入收藏
说起人工智能,大家总把它和科幻电影中的机器人联系起来,而实际上这些科幻场景与现如今的人工智能没什么太大关系。人工智能确实跟人类大脑很相似,但它们的显著差异在于人工智能...【详细内容】
2021-09-17  异步社区    Tags:人工智能   点击:(57)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条