机器学习实战 | 数据探索(变量变换、生成)

1.1、什么是变量变换?

在数据建模中,变换是指通过函数替换变量。 例如,通过平方/立方根或对数x替换变量x是一个变换。 换句话说,变换是一个改变变量与其他变量的分布或关系的过程。

1.2、什么时候需要变量变换?

当我们想要改变一个变量的比例(change the scale)或标准化(standardize)变量的值以便更好地理解。 如果数据具有不同的尺度,则此变换是必须的,但此变换不会更改变量分布的形状。对应处理方法:机器学习之特征工程-数据预处理(无量纲化)。

当我们将复杂的非线性关系转化为线性关系时。 与非线性关系相比,变量之间存在线性关系更容易理解。 转换有助于将非线性关系转换为线性关系。 散点图可用于查找两个连续变量之间的关系,这些变化也改善了预测,log是常用的转换技术之一。

Relation.png

对称分布优于倾斜分布,因为它更容易解释和产生推论。 一些模型需要正态分布变量, 所以,每当遇到倾斜分布,使用变量变换。 对于右倾斜分布,取变量的平方/立方根或对数,对于左倾斜分布,取变量的平方/立方或指数。

Transformation_1.png

从程序实现角度考虑变量转换。 例如在员工绩效项目中,发现年龄与员工绩效直接相关,即年龄越高,绩效越好。 从实现的角度来看,基于年龄的程序可能会面临实现挑战。 然而,将员工分为三个年龄阶段30岁,30-45岁和45岁以上,制定三种不同的策略是一种明智的做法。 这种分类技术被称为变量分组(Binning)。

1.3、变量变换的常用方法是什么?

变换变量有许多方法,如平方根,立方根,对数,合并,倒数等等。来看看这些方法的细节和利弊。

对数(log):变量求对数是用于在分布图上更改变量分布形状的常用变换方法。通常用于减少变量的右偏差,虽然,它也不能应用于零值或负值。

平方/立方根:变量的平方和立方根对改变变量的分布有效果。然而,它不如对数变换那么有效。立方根有自己的优势,可以应用于包括零和负值,平方根可以应用于包括零的正值。

分箱(Binning):用于对变量进行分类。以原始值,百分位数或频率进行分类,分类技术的决策是基于对于业务的理解。例如,可以将收入分为三类:高,中,低,也可以对多个变量执行分箱。

生成特征

生成特征是基于现有特征生成新特征的过程。 例如,将日期(dd-mm-yy)作为数据集中的输入特征,可以生成新特征,如日,月,年,周,工作日,可能与target有更好的关系。 此步骤用于突出显示变量中的隐藏关系。

Derived.png

2.1、生成特征的类别

生成派生变量

使用一组函数或不同方法从现有变量创建新变量。在“Titanic – Kaggle competition”中,年龄存在缺少值,为了预测缺失值,用姓名中称呼(Master,Mr,Miss,Mrs)作为新变量。如何决定要生成哪个变量?这取决于分析师对业务理解,以及他对这个问题的假设。诸如采用变量求对数,变量分组或其他变量变换方法也可用于生成新变量。

生成虚拟变量

虚拟变量最常用的应用之一是将分类变量转换成数字变量,虚拟变量也称为指标变量(Indicator Variables)。将分类变量作为统计模型中的预测因子是有用的,如:性别可以产生两个变量,即为1(Male)和0(No male)的“Var_Male”和值为1(Female)和0(No Female)的“Var_Female”。还可以为两类以上分类变量生成n或n-1个虚拟变量。

Dummy.png

2.2、生成特征的常用方法

生成日期,时间和地址差异的变量

可以通过考虑日期和时间的差异来创建新变量, 例如:与在30分钟内填写相同申请的人相比,需要几天填写申请表的申请人可能对产品的兴趣较少。 同样,对于银行来说,在线门户登录详细信息和客户登录之间的时间可能会显示客户使用在线门户网站的意愿。同样,靠近银行分行的客户比远离客户的参与度更高。

生成比例变量

生成变量之间的比例可能会增加很多价值。 经常使用的一些比例是:输入/输出(过去的表现),生产率,效率和百分比。 例如,为了预测分行的信用卡销售的未来表现,像信用卡销售/销售人员或信用卡销售/营销支出之类的比率将比销售的绝对数量更强大。

应用标准变换

通过查看变量和输出的变化和绘图,是否变量的基本变换创建了更好的关系。 最常用的变换包括Log,指数,二次和三次变化。 例如,与绝对营销支出相比,营销支出的对数可能与Sales有更具代表性的关系。

考虑影响因素的影响

影响因素可以是组织的雇员,组织的代理人或组织的客户。 引起这些相关实体的影响可以显著改善模型。 例如,由经纪人(而不是所有经纪人)发起的贷款在锁定期后,更有可能转移到不同的实体。 同样,一组涉及到销售人员的子公司,可能对其客户进行交叉销售。

考虑变量的季节性

很多企业面临着季节性的问题,可能是由税收优惠,节日季节或天气驱动的。 如果是这种情况,需要考虑季节性。 如何在建模时应对季节性影响的更多细节可以参考:Festive season special: Building models on seasonal data。

参考

5 Simple manipulations to extract maximum information out of your data

原文发布于微信公众号 - 人工智能LeadAI(atleadai)

原文发表时间:2017-11-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏WOLFRAM

偶述 Wolfram 中文分词算法

从 2000 年开始学习和使用 Mathematica,《Mathematica 演示项目笔记》作者,发表Wolfram Demonstrations Proj...

742
来自专栏华章科技

数据挖掘150道试题,测测你的专业能力过关吗

2.以下两种描述分别对应哪两种对分类算法的评价标准?(A) (a)警察抓小偷,描述警察抓的人中有多少个是小偷的标准。 (b)描述有多少比例的小偷给警察抓了的标准...

431
来自专栏PPV课数据科学社区

数据挖掘150道试题 测测你的专业能力过关吗?

100个iOS开发/设计程序员面试题汇总,你将如何作答? 大数据技术Hadoop面试题,看看你能答对多少?答案在后面 单选题 1. 某超市研究销售纪录数据后发现...

2434
来自专栏AI科技评论

开发 | 如何加速神经语言模型训练?东北大学小牛翻译团队有妙招

团队简介:东北大学自然语言处理实验室(小牛翻译团队)由姚天顺教授于1980年创立,长期从事机器翻译及语言分析方面的研究。小牛翻译团队所研发的NiuTrans系统...

31113
来自专栏达观数据

干货分享丨基于半监督学习技术的达观数据文本过滤系统

社交、直播、论坛、电商等各类平台每天都会产生海量UGC(User Generated Content),其中不可避免地混杂有大量垃圾文本。这些内容不但严重影响用...

2947
来自专栏机器之心

入门 | 极致的优化:智能手机是如何处理大型神经网络的

1466
来自专栏机器之心

学界 | 谷歌大脑提出MAPO:用于程序合成的策略优化方法

该框架可用于从弱监督 (如问答对) 中学习语义解析和程序合成,这比全监督 (如问答对) 更容易收集,也更灵活。应用程序包括虚拟助手、数据库的自然语言接口、人机交...

893
来自专栏大数据挖掘DT机器学习

一个贯穿图像处理与数据挖掘的永恒问题

作者: 左飞 著有《算法之美——隐匿在数据结构背后的原理(C++版)》 原文 http://blog.csdn.net/baimafujinji/articl...

2293
来自专栏AI研习社

微软开源 repo 1.0 ,旨在创造深度学习框架通用语言

AI 研习社按,日前,微软提出深度学习框架的通用语言——repo1.0,号称希望通过构建这一深度学习框架「Rosetta Stone(罗塞塔石碑)」,让研究者们...

1132
来自专栏李春晓的专栏

机器学习:从入门到第一个模型

从入门到第一个模型”差点就成了“从入门到放弃”。本文是机器学习在运维场景下的一次尝试,用一个模型实现了业务规律挖掘和异常检测。这只是一次尝试,能否上线运转还有待...

1.5K2

扫码关注云+社区