
二分类模型中,如何应对分类自变量取值过多
这是个信息无限充裕的年代,是个数据爆炸的年代,也是数据过载的年代。大数据之大,不仅在于体量巨大,更在于结构和内容的复杂,因此如何处理好数据一直是我们工作少为人知、却也无法忽视的重点。本期,我们就以二分类模型中自变量取值过载为例,给大家讲讲应对之道~
在二分类建模过程中,难免会遇到分类自变量取值过多的情况,比如用来表示观测值地域属性的自变量,在我国即使选用省级层面的信息,最多也可达31种取值。处理分类自变量时,最常用的方法是将其拆分为若干取值为“0”和”1”的二分变量,这样就会导致模型的维度过多,自由度降低,不仅对建模样本提出了更高的要求,还增加了模型参数估计的难度和模型的训练时间。因此,今天我们基于自己的经验,在这里谈谈对这个问题的处理思路。
一、利用聚类算法进行类别合并
既然这个问题是分类变量取值过多导致的,那么,最直接的解决思路显然就是对类别进行合并。当然,合并不能是主观随意的,而应该是基于定量分析之后的结果。为了便于叙述,不妨假设某个分类型自变量X有A1,A2,…,An等取值,我们可以计算出每个类别中实际的Y=1比例。具体计算过程如下表所示:
然后就可以利用聚类分析来进行类别的合并了。第一种思路是采用系统聚类法,将A1,A2,…,An看做聚类的对象,各个类别的Y=1比例作为指标进行聚类,即有n个聚类对象,1个聚类指标。聚类结束之后,将聚为一类的类别进行合并。当然,究竟聚为几类最合适,还可以采用一些指标来辅助确定,比如SAS软件中的R-square、半偏态R-square以及伪F统计量等,都可以用来辅助确定类的个数。
第二种思路就是采用有序样品的聚类,长期关注我们公众号的小伙伴可能还记得,我们在前期的文章中曾经利用这个方法来进行数据离散化,这里我们利用这个方法进行类别的合并,处理起来也比较简单,将各个类别按照Y=1比例从小到大的顺序进行排列,再利用Fisher算法将Y=1比例相近的类别进行合并。这样做最大的好处是我们可以根据信息损失,得到最优的类别个数和相应的最优合并方法。
二、利用决策树进行类别合并
利用决策树进行类别合并时,首先需要选择一个衡量分类变量之间相关性或影响程度的指标,我们可以使用在前期的文章中曾经介绍过IV信息量或一致性比率。这种类别合并的基本步骤可以表示为:
1、将各个类别按照Y=1比例从小到大的顺序进行排列,并将所有类别视为一个组;
2、利用IV信息量(或者一致性比率),找出最优的二元分割方法,使得被选中的分组方案是所有分组方案中预测能力最强的,这样将所有类别分成了两组,不妨假设为组1和组2;
3、将组1按照上一步同样的步骤分为组11和组12,组2分为组21和组22。再利用IV信息量比较组1和组2的最优分组的预测能力大小,取预测能力最强的组进行分裂,这样将所有类别分成了三组,不妨假设为组1、组2和组3。
然后,按照第3步的做法不断分裂下去,直到分裂形成的组数达到预先设定的个数为止。如果因变量是二分变量,可以使用IV信息量或一致性比率;如果因变量的取值个数大于2,那么就可以使用一致性比率来进行预测力的判断。《SAS编程与数据挖掘商业案例》一书种提供了一份观测值为32264的数据集,其中因变量是二分变量,有一个分类自变量LOCATION有19种可能的取值,我们利用这里介绍的算法对变量LOCATION进行合并,将合并后的类别个数设定为5,下图是分裂的具体过程:
其中原始的19个变量记为B1,B2,…,B19,经过4次分裂,19个取值最后被分为5个组,圆圈里面的表示的就是这5个组里面包括的原始变量名称,每个方框下面对应的数字表示该步分裂所对应的顺序。由于采用的是自上而下的分裂算法,很显然,分裂后保留的组数越多,算法所耗费的时间也就越长。
三、WOE编码
WOE就是所谓的证据权重(weight of evidence),该方法计算出分类变量每一个类别的WOE值,这样就可以用这个WOE值组成的新变量来替代原来的分类变量。由于新变量是数值型变量,因此该方法实际是将分类变量转化为数值变量,不用再生成虚拟变量,避免了由此产生的维度过多的问题。我们用下面的表格来表示WOE值的计算过程:
注:LN表示自然对数函数。
从上表可以看出,WOE值实际上是该类别中Y=1与Y=0比例之比的自然对数。需要注意的是,该表的Y=1比例与上一张表的Y=1比例计算方式是不一样的,上一张表的Y=1比例是该类别中Y=1观测个数与该类别所有观测个数之比,而这一张表示该类别Y=1观测个数与样本中所有Y=1观测个数之比。WOE编码法在利用logistic模型建立信用评分卡时应用较多。
四、小结
比较而言,前两种类别合并的方法,虽然减少了类别个数,但是仍然需要生成若干二分变量;当使用一致性比率进行预测力判断时,第二种方法也适用于多分类模型;第三种方法将分类变量直接转化为数值型变量,模型简洁,易于操作。但是如果出现类别中Y=1或者Y=0个数为零的情况,将导致WOE值无法计算。因此,也可以将两种方法结合起来,先进行简单的类别合并,避免Y=1或者Y=0个数为零的情况,然后再进行WOE编码。
总之,数据的世界是日益复杂的,大数据尤其如此。在面对繁复的海量数据时,我们需要很多方法和经验,将数据转化成更简洁有效的信息;希望大家能从本文中得到一点启发。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
2025 年,数据如同数字时代的 DNA,编码着人类社会的未来图景,驱动着商业时代的运转。从全球互联网用户每天产生的2.5亿TB数据, ...
2025-06-052025 年,数据如同数字时代的 DNA,编码着人类社会的未来图景,驱动着商业时代的运转。从全球互联网用户每天产生的2.5亿TB数据, ...
2025-05-27CDA数据分析师证书考试体系(更新于2025年05月22日)
2025-05-26解码数据基因:从数字敏感度到逻辑思维 每当看到超市货架上商品的排列变化,你是否会联想到背后的销售数据波动?三年前在零售行 ...
2025-05-23在本文中,我们将探讨 AI 为何能够加速数据分析、如何在每个步骤中实现数据分析自动化以及使用哪些工具。 数据分析中的AI是什么 ...
2025-05-20当数据遇见人生:我的第一个分析项目 记得三年前接手第一个数据分析项目时,我面对Excel里密密麻麻的销售数据手足无措。那些跳动 ...
2025-05-20在数字化运营的时代,企业每天都在产生海量数据:用户点击行为、商品销售记录、广告投放反馈…… 这些数据就像散落的拼图,而相 ...
2025-05-19在当今数字化营销时代,小红书作为国内领先的社交电商平台,其销售数据蕴含着巨大的商业价值。通过对小红书销售数据的深入分析, ...
2025-05-16Excel作为最常用的数据分析工具,有没有什么工具可以帮助我们快速地使用excel表格,只要轻松几步甚至输入几项指令就能搞定呢? ...
2025-05-15数据,如同无形的燃料,驱动着现代社会的运转。从全球互联网用户每天产生的2.5亿TB数据,到制造业的传感器、金融交易 ...
2025-05-15大数据是什么_数据分析师培训 其实,现在的大数据指的并不仅仅是海量数据,更准确而言是对大数据分析的方法。传统的数 ...
2025-05-14CDA持证人简介: 万木,CDA L1持证人,某电商中厂BI工程师 ,5年数据经验1年BI内训师,高级数据分析师,拥有丰富的行业经验。 ...
2025-05-13CDA持证人简介: 王明月 ,CDA 数据分析师二级持证人,2年数据产品工作经验,管理学博士在读。 学习入口:https://edu.cda.cn/g ...
2025-05-12CDA持证人简介: 杨贞玺 ,CDA一级持证人,郑州大学情报学硕士研究生,某上市公司数据分析师。 学习入口:https://edu.cda.cn/g ...
2025-05-09CDA持证人简介 程靖 CDA会员大咖,畅销书《小白学产品》作者,13年顶级互联网公司产品经理相关经验,曾在百度、美团、阿里等 ...
2025-05-07相信很多做数据分析的小伙伴,都接到过一些高阶的数据分析需求,实现的过程需要用到一些数据获取,数据清洗转换,建模方法等,这 ...
2025-05-06以下的文章内容来源于刘静老师的专栏,如果您想阅读专栏《10大业务分析模型突破业务瓶颈》,点击下方链接 https://edu.cda.cn/g ...
2025-04-30CDA持证人简介: 邱立峰 CDA 数据分析师二级持证人,数字化转型专家,数据治理专家,高级数据分析师,拥有丰富的行业经验。 ...
2025-04-29CDA持证人简介: 程靖 CDA会员大咖,畅销书《小白学产品》作者,13年顶级互联网公司产品经理相关经验,曾在百度,美团,阿里等 ...
2025-04-28CDA持证人简介: 居瑜 ,CDA一级持证人国企财务经理,13年财务管理运营经验,在数据分析就业和实践经验方面有着丰富的积累和经 ...
2025-04-27