3. 预测模型的介绍:从相关性到监督分割模型

From Correlation to Supervised Segmentation

基础概念:Identifying informative attributes; Segmenting data by progressive attribute selection.(定义信息化特征,通过程序化的特征选择进行数据分割) --本章关注模型预测(predictive modeling)

从对数据分组(分割)入手。信息(information)是降低某件事情不确定性的总量,仅是降低,但通常不会将事情变为确定事件。

Models, Induction, and Prediction(模型、归纳和预测)

此处对建模进行了举例说明:将实地绘制成地图时,实地的绝大部分信息都被忽略,只有道路或其他关键信息进行收集和呈现,数据建模同理。

这里又提到了两个大的类型:classification models(分类模型)和regression models(回归模型),一个关注分组、一个关注数值。

首先进行描述模型,即关潜在的注现象和过程,还不包括数字化的预测值。

术语:监督学习是一种建模方式,主要过程为,通过将已知各变量(attributes or features)作为参数,带入特定函数式(functions),得到一个预先设定的变量(即目标变量),通过目标变量(target variable)来反应预测结果。

创造模型的过程通常被称为模型归纳,从数据创造模型的过程也叫做归纳算法(induction algorithm)或学习(learner)。

术语:induction(归纳) and deduction(推演),推演是通过某个特性规则,对事件进行预测,过程与归纳相反。

Supervised Segmentation

小节目标:我们如何挑选一个或多个变量,来用于最好地将样本数据分割成多个类型分组,以便于找到目标变量(target variable of interest)。

举例(帮助理解):在电信用户携号转网(churn)案例中“中等年龄的专家,在纽约居住信用卡欠款(balance)在平均水平的人,有5%的几率携号转网”,此处“中等年龄的专家,在纽约居住欠款在平均水平的人”是分组定义(definition of the segment)而“有5%的几率携号转网”是目标变量分组的预测值(predicted value of the target variable for the segment)。

Selecting Informative  Attributes

Pure:同组中所有元素的某个特征,对于目标变量都是一致的情况;

Impure:同组中,至少有一个元素的特征值,对于目标变量,与其他的元素是不同的情况。

一些并发症or复杂的情况:

1. 元素特征并不能完美匹配分组,即当某一个分组偶尔变为pure分组时,其他的分组也很难基于这个特征变为pure分组;

2. 当某个特征可以将数据分割出一个pure分组时,这个特征会比其他的,不能完美制造pure分组的特征,更能够降低整体数据的impurity吗;

3. 并非所有特征都是用于二元区分数据的,更可能包含三元甚至多元分组的特征;

4. 某些特征值是数字值形式,针对每个值结果进行分组拆分是否有意义?

entropy:熵,用来衡量分组后的数据impurity值。

Entropy公式定义(公式3-1):


公式解释:每个是特征在数据集中出现的概率,范围从0(没有元素包含特征)到1(所有元素都含有特征),同时这也表示,至少会有2种或以上种类的数据特征可用来统计。

以一个+&-的二元分布来举例说明entropy的概念:

故,当或等于1时,entropy = 0 为熵值最小,所有元素特征一致;

当时,entropy = 1 为熵值最大,所有元素一半为+特征,一半为-特征;

整个情况下,随着的从0到1的变化,entropy呈抛物线曲线的方式在坐标轴上呈现。

名词简称:information gain(IG)表示将数据进行重新分组后,purity的变化的量化考量结果。

Information gain(公式3-2)


举例1(按balance-账单欠款数分组,<50k或≥50k):这里找了·和☆的例子,来说明对样本数据进行重新分割(segment)后,purity的变化(从parent到children),原始数据(parent)16个·&14个☆,entropy=0.99,很impure,但是将这30个数据拆成2组,组1(<50k)有12个点1个☆,组2(≥50k)有4个点13个 ☆,此时组1entropy=0.39,组2entropy=0.79,结合公式3-2的表述,IG=0.99-[0.43x0.39+0.57x0.79]≈0.37,所以这个拆分方法,有效降低了数据组的entropy,降低值的数字结果为0.37。

举例2(按居住属性分组):对同样的·和☆的一个样本组,根据另外的属性进行充分组,假定他们的居住情况分为自持住宅(OWN),租赁(RENT)和其他(OTHER)这样三个组,并有如下的entropy特征:

entropy(parent)≈0.99

entropy(Residence=OWN)≈0.54

entropy(Residence=RENT)≈0.97

entropy(Residence=OTHER)≈0.98

IG≈0.13

可以看出通过居住属性进行分类,IG也得到了一定程度的提升,但是提升的效果不如案例1中按照balance(信用卡账单欠款数)进行分组,原因是OWN组虽然提高了purity,但是RENT组和OTHER组这两个子组并没有提升purity,他们的purity依然很差。这样,在这组样本数据中,居住属性的分组方式不如按balance分组更加有信息提供的价值。

综上总结出,在为了分类问题进行监督分割创建时,我们并不需要完全的数据purity,而是需要更关注分组后的IG。

Numeric variables

数字化的样本数据,可以被一个或多个点进行分段式的分割,例如balance数据可以被分成2个或多个范围。此处IG可以用来衡量这个分段结果的segmentation评分,我们依然可以用IG来计算,每个分段方式的显著性并通过IG值进行比较。

注:IG仅关注于每个segmentation(分组方式)下的entropy比较,并不能表示分组后的每个子组的独立purity情况。

一个衡量单组数值型样本数据的impurity情况的衡量指标是方差(variance)。

如果组内值都一样,那么方差为0,如果组内值相差比较大,那么方差的值就会较大。可以对parent数据和children数据组的方差进行对比,衡量IG。

Example:Attribute Selection with Information Gain

通过选取特定的分类方式(attribute)可以精简需要分析的数据量。

案例样本数据:此处的样本数据为5644种蘑菇,目标变量是是否能吃(edible),将这5644条数据作为训练集,其中2156种毒蘑菇和3488种可以吃的蘑菇,这些蘑菇有23个特征类别,每个特征下面的特征值从2到N多个,可以利用IG值的方法,来从这23个特征中,挑选出和edible的目标变量相关性最高的特征。

全数据的entropy基于2156个有毒和3488个可吃,entropy=0.96。

entropy图形化,全量样本数据的entropy图形是一个在坐标系1*1正方形内,y=0.96的一个横线切开的两部分,下方为0.96的面积即entropy,上方为purity的面积0.04。

entropy图形化-分组(children):使用GILL-COLOR进行分组后的entropy展示,如下图3-7:


图3-7:children分类(基于GILL-GOLOR)下的entropy的图形化表示(y=yellow、u=purple、n=brown、and so on)

每个长方形的宽度表示该特征的样本占总样本数据的比例(或可描述成有利场数量),高度是该子样本束的entropy。可以看出GILL-COLOR子类降低了entropy值。

此处还列举了另几个features的例子进行说明,包括SPORE-PRINT-COLOR(孢子印花颜色)、ODOR(气味),在此分类下entropy也被有效降低,与GILL-COLOR类似。

并且可以看到,通过ODOR进行分类得到了最大的IG值(0.96-0.1=0.86,IG为0.86),即最多地降低了数据的entropy,这表示通过气味辨别蘑菇是否有毒或可食用是一个相对更加准确的判断方法。如果只选择一个特征来判断蘑菇是否有毒,那你应该选气味,如果要通过多特征进行鉴定,那么你应该从ODOR入手开始,再加入其它的因素进行建模分析。

Supervised Segmentation with Tree-Structured Models

本章节主要讲解classification tree(分类树)或者叫decision tree(决策树)的方法,用于通过多因素进行数据分割segmentation,概览可参考下图:


图3-10 决策树分类法,Leaf表示单个segmentation,nodes是不同的用于进行分类的特征

write-off = 冲销,非叶片的节点通常被叫做决策节点,

举例说明:通过3-1中的名为Claudio的人的特征来举例说明,他的特征情况为:Balance=115k,Employed=No,Age=40。参考上图3-10的决策树决策过程,先通过employed判断,结果是No,选右分支;下一个是balance,值为115k大于50k,再次选右分支;下一个是Age,值为40小于45所以选择左侧分支,这样就来到了一个 Not Write-off 的类别,即没有不符特征的一个节点,或者说我们把Claudio分类到了一个 未被冲销(not write-off) 的特征值为(Employed=No,Balance=115k,Age<45)的一个分组segment。(此处用于决策哪部分人是确实没有信用卡还款能力者,这部分人的欠款将被write-off即当做坏账被注销,从决策树可以看出,失业的欠款大于等于50k并且年龄大于等于45岁的才会被注销欠款)这个模型用于预测,谁的欠款后面将不用还了,银行会当做坏账处理掉。

名词解释:Write-Off(坏账注销)

A “write-off” on the other hand is when a creditor forgives a portion of the balance that is legitimately owed. For example, if you owe $15,000 and a creditor agrees to settle the account for $0.50 on the dollar, they write off $7,500.

区别于charge-off,charge-off只是将欠款进行类别名称的改变,但是并未被冲销,仍需全额还钱。(妈的英语生僻词太多了)

接下来开始正式的多因素建模过程:


图3-14 决策树的分类全过程(将信用卡欠款人员特征点图形化,如长方身体和椭圆身体等)

分类树就是一个切分和适配的递归过程,整个过程的目标点是所有的分组结果都是完全pure的组或者已经没有更多的feature用来做拆分。关于如何在完全pure或用完feature之前停止分类树递归过程并得到合适的结果,将在第五章讨论。

Visualizing Segmentations(可视化分割)

可视化分割指将每个features当做一个坐标轴,通过坐标轴划线对数据进行分割的方法,遵循决策树的分类,但是每个可分割点都需要把同一个因素进行全项考虑进去的分割,详见下图:


图3-15 分类树及划分方法(partitions)将样本空间分割开。黑色点表示write-off的样本,加号表示non-write-off的样本。背景图片表示决策树叶片对样本区间的划分结果。

此案例为根据决策树,将决策结果在二维平面上进行直观的可视化展示,将样本点在不同的segment当中进行展示,图形化展示对应关系。

Trees as Set of Rules(决策树和规则集)

规则集:沿着决策树,从树根一路向下的所有决策条件通过AND连接的一个条件交集。

例如图3-15中最左侧的路径的规则集可表示为:

IF (Balance<50k) AND (Age<50) THEN Class=Write-off

用同样的方式对每个终端叶节点统计其条件路径,图3-15中包含其他3个规则集(共4个规则集,与叶子节点数目一致)。

在这个例子中,决策树和规则集两种表示方法都简单且易于理解,当数据规模扩大时,有些人会偏好使用决策树,有些人会偏好使用规则集,进行同样的分类方法的表达。

Probability Estimation(概率预测)

此处主要讲通过决策树进行概率预测时的过拟合矫正,矫正方法为使用拉普拉斯修正(Laplace correction)方法:

公式中,n为类别c(类别c的决策树叶子节点)中的样本数量,m为不属于类别c的样本数量,通过这个修正公式来矫正c发生的概率。(补充说明,当n=2,m=0时,p(c)=0.75;当n=20,m=0时,p(c)=21/22,可见当样本量增加时,拉普拉斯修正的概率影响在减小,故可通过拉普拉斯修正来处理样本量过小导致的偏差)

过拟合(overfitting):基于决策树进行概率评估时,当总样本数量过小时,通过决策树很可能对某个叶子节点概率评估到100%或接近100%,产生偏离实际值的情况,这种情况本章叫做过拟合,后续章节会更详细进行定义。

Example : Addressing(考虑、处理问题) the Churn Problem with Tree Induction

此处通过20000个电信用户的特征数据(包含10个feature和1个target variable-是否churn)对churn问题进行预测。


图3-17 churn 特征的IG值排名


图3-18 此图是使用churn数据通过分类树学习的结果。长方形叶子表示总体样本拆分后的分割,由从根节点到当前叶子的整条路径决定。每个叶子节点的概率也根据各分割(segment)从根节点的整条路径决定;括号内表示由0.5的可能性开始,计算出的这个叶子节点的事件分类。

1. 对每个独立特征进行IG值的计算,得出各自的information gain值;

2. 将IG最高的house value作为决策树的根节点开始执行决策树;

3. 左侧第二节点为IG第二的OVERAGE,但右侧第二节点就不是OVERAGE了,而是IG排名第五的INCOME,原因是啥呢?

4. 原因在这里!!!图3-17中的IG排名为对比全量样本时的排名,但是在描绘决策树时,需要根据已经上树的节点以外的节点,对剩余的样板进行重新的IG值的排行,从而选出最高的IG值的feature,从而搭建下一个决策节点。也就是一个全量样本和剩余样本的计算差异导致。

5. 最终形成的决策树概率预测结果如图3-18所示。

通常情况下,根据总样本量的情况,会拿出一半的数据进行学习,即用一半的数据搭建如图3-18所示的决策树,然后再用剩下的一半的数据来验证这个模型预测的准确性,通过实际数据可知,上面模型的准确性为73%,这带来了两个问题:

1.  你是否相信这个数值,如果将这个决策树用在同样本空间的另外20000个元素做预测时,仍然可以得到73%的准确率吗?

2. 如果你信任这个数值,那代表这是一个好的模型吗?换句话说,73%准确率的模型值得使用吗?

我们会在第七章和第八章来回顾这些问题,这两个章节将深入谈及模型的评价。

Summary

没啥新内容但是留了一个问题,当对于一个回归问题使用决策树模型时,哪些点需要做修改,相对于分类问题。

你可能感兴趣的:(3. 预测模型的介绍:从相关性到监督分割模型)