为了账号安全,请及时绑定邮箱和手机立即绑定

数据科学中的陷阱I:变量的数学运算合理吗?

标签:
大数据

数据科学中有各种各样的模型,有的听起来很简单,比如线性回归;有的呢,听起来就很吓人,比如深度学习。但是不管什么样的模型,从本质上来讲,模型都是对训练数据做数学运算,并以此求得模型参数的估计值。所以我们需要保证两点:

  • 第一,训练数据能进行数学运算

  • 第二,对变量所做的数学运算是合理的

对于第一点,通常只在一些特定的应用场景里才需要比较复杂的处理,比如自然语言处理、图像识别等。但对于第二点,几乎所有的场景都会遇到。这里将注重研究第二点“对变量所做的数学运算是合理的”,它表示的内涵是:对于变量,数字的运算有相应的实际意义,包括以下两个方面。

  • 数字的大小关系。

  • 数字的四则运算。

为了更好地讨论问题,将模型的自变量分类。正如前面章节所提到的,在模型里使用的变量可以分为两类:数值型变量和类别型变量。如图1所示。

webp

图1

数值型变量,在学术上也被称为定量变量(quantitative variable),如长度、收入、重量等。它们的数值表示具体的测量或计数。事实上,定量变量按是否连续可进一步细分为连续型变量和离散型变量。在一定区间内可以任意取值的变量叫连续型变量,比如人的身高、体重等;反之则是离散型变量,比如公司员工人数等。对于这类变量,数字间的不等关系是有实际意义的。比如对于收入,在数学上,100小于1000;在实际生活中,100元也小于1000元。数字间的四则运算也同理,这里就不赘述了。当然由于数字的等于关系和四则运算,数值型变量常常隐含着边际效应恒定的假设,正如我们在第5章里讨论的那样。在某些场景下,这个隐含假设与现实不符,直接使用变量会影响模型的效果。

类别型变量,也被称为定性变量(categorical variable)。它并不是表示数量上的变化,而是表示类别。比如性别、省份、学历、产品等级等。这类变量的取值通常是用文字而非数字来表示。比如对于性别这个变量,可能的取值为男、女。因此要将文字变量转换为数字变量,并且保证对于转换之后的变量,数学运算是有意义的,这并不是一件容易的事情。通常针对一个类别型变量,我们会用一个数字去表示其中的一个类别,但这样的转换方法并不能满足要求:

  • 对于有序的类别型变量,比如产品等级,0表示合格、1表示良好、2表示优秀。这种情况下,0小于1的确对应着合格等级次于良好等级,但数字间的四则运算就没有对应意义了。数学上2减1等于1,但对于产品等级,优秀减去良好还等于良好吗?

  • 对于无序的类别型变量,比如对于省份,0表示北京、1表示上海、2表示深圳等。数字间的大小关系和四则运算都是没有实际意义的。

因此,在模型里直接使用类别型变量是没有任何道理的,也会严重影响模型的效果。由此可见,不管是数值型变量还是类别型变量,通常都需要根据问题场景做相应变换后,再放到模型中使用。


作者:tgbaggio
链接:https://www.jianshu.com/p/3ff78d24e663

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消