欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据挖掘模型中的IV和WOE详解.docx

    • 资源ID:4808879       资源大小:150.66KB        全文页数:17页
    • 资源格式: DOCX        下载积分:1金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要1金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据挖掘模型中的IV和WOE详解.docx

    1、数据挖掘模型中的IV和WOE详解数据挖掘模型中的 IV 和 WOE详解标签: IVWOE 信息价值证据权重数据挖掘模型2016-03-02 15:36 28747 人阅读 评论 (8) 收藏举报分类:数据挖掘模型( 7 )版权声明:本文为博主原创文章,未经博主允许不得转载。目录 (?)+1.IV 的用途IV 的全称是 Information Value ,中文意思是信息价值,或者信息量。我们在用逻辑回归、 决策树等模型方法构建分类模型时, 经常需要对自变量进行筛选。 比如 我们有 200 个候选自变量,通常情况下,不会直接把 200 个变量直接放到模型中去进行拟 合训练,而是会用一些方法,从这

    2、 200 个自变量中挑选一些出来,放进模型,形成入模变 量列表。那么我们怎么去挑选入模变量呢?挑选入模变量过程是个比较复杂的过程, 需要考虑的因素很多,比如: 变量的预测能力,变 量之间的相关性,变量的简单性(容易生成和使用),变量的强壮性(不容易被绕过),变 量在业务上的可解释性(被挑战时可以解释的通) 等等。 但是,其中最主要和最直接的衡量 标准是变量的预测能力。“变量的预测能力”这个说法很笼统,很主观,非量化,在筛选变量的时候我们总不能说: “我觉得这个变量预测能力很强, 所以他要进入模型” 吧?我们需要一些具体的量化指标来 衡量每自变量的预测能力,并根据这些量化指标的大小,来确定哪些变

    3、量进入模型。 IV 就 是这样一种指标, 他可以用来衡量自变量的预测能力。 类似的指标还有信息增益、 基尼系数 等等。2. 对 IV 的直观理解从直观逻辑上大体可以这样理解“用 IV 去衡量变量预测能力”这件事情:我们假设在一个 分类问题中,目标变量的类别有两类: Y1,Y2 。对于一个待预测的个体 A,要判断 A 属于 Y1 还是 Y2 ,我们是需要一定的信息的,假设这个信息总量是 I ,而这些所需要的信息,就蕴含在所有的自变量 C1,C2,C3,Cn 中,那么,对于其中的一个变量 Ci 来说,其 蕴含的信息越多, 那么它对于判断 A 属于 Y1 还是 Y2 的贡献就越大, Ci 的信息价值

    4、就越大, Ci 的 IV 就越大,它就越应该进入到入模变量列表中。前面我们从感性角度和逻辑层面对 IV 进行了解释和描述,那么回到数学层面,对于一个待 评估变量, 他的 IV 值究竟如何计算呢?为了介绍 IV 的计算方法, 我们首先需要认识和理解 另一个概念 WOE ,因为 IV 的计算是以 WOE 为基础的。3.1WOEWOE 的全称是“ Weight of Evidence ”,即证据权重。 WOE 是对原始自变量的一种编码 形式。要对一个变量进行 WOE 编码,需要首先把这个变量进行分组处理 (也叫离散化、 分箱等等, 说的都是一个意思)。分组后,对于第 i 组, WOE 的计算公式如下

    5、:其中, pyi 是这个组中响应客户(风险模型中,对应的是违约客户,总之,指的是模型中预 测变量取值为“是”或者说 1 的个体)占所有样本中所有响应客户的比例, pni 是这个组中 未响应客户占样本中所有未响应客户的比例, #yi 是这个组中响应客户的数量, #ni 是这个 组中未响应客户的数量, #yT 是样本中所有响应客户的数量, #nT 是样本中所有未响应客 户的数量。从这个公式中我们可以体会到, WOE 表示的实际上是“当前分组中响应客户占所有响应客户的比例”和“当前分组中没有响应的客户占所有没有响应的客户的比例”的差异。对这个公式做一个简单变换,可以得到:变换以后我们可以看出, WO

    6、E 也可以这么理解, 他表示的是当前这个组中响应的客户和未 响应客户的比值, 和所有样本中这个比值的差异 。这个差异是用这两个比值的比值, 再取对 数来表示的。 WOE 越大,这种差异越大,这个分组里的样本响应的可能性就越大, WOE 越小,差异越小,这个分组里的样本响应的可能性就越小。关于 WOE 编码所表示的意义,大家可以自己再好好体会一下。3.2 IV 的计算公式有了前面的介绍, 我们可以正式给出 IV 的计算公式。对于一个分组后的变量, 第 i 组的 WOE前面已经介绍过,是这样计算的:同样,对于分组 i,也会有一个对应的 IV 值,计算公式如下:有了一个变量各分组的 IV值,我们就可

    7、以计算整个变量的 IV 值,方法很简单, 就是把各分组的 IV 相加:其中, n 为变量分组个数。3.3 用实例介绍 IV 的计算和使用下面我们通过一个实例来讲解一下 IV 的使用方式。3.3.1实例假设我们需要构建一个预测模型, 这个模型是为了预测公司的客户集合中的每个客户对于我 们的某项营销活动是否能够响应, 或者说我们要预测的是客户对我们的这项营销活动响应的 可能性有多大。 假设我们已经从公司客户列表中随机抽取了 100000 个客户进行了营销活动 测试,收集了这些客户的响应结果, 作为我们的建模数据集, 其中响应的客户有 10000 个。 另外假设我们也已经提取到了这些客户的一些变量,

    8、 作为我们模型的候选变量集, 这些变量包括以下这些 (实际情况中, 我们拥有的变量可能比这些多得多, 这里列出的变量仅仅是为 了说明我们的问题):最近一个月是否有购买; 最近一次购买金额; 最近一笔购买的商品类别; 是否是公司 VIP 客户;假设,我们已经对这些变量进行了离散化,统计的结果如下面几张表所示。(1) 最近一个月是否有过购买:(2) 最近一次购买金额:(3) 最近一笔购买的商品类别:(4) 是否是公司 VIP 客户:3.3.2计算 WOE 和 IV我们以其中的一个变量“最近一次购买金额”变量为例:我们把这个变量离散化为了 4 个分段: =500 元。首 先,根据 WOE 计算公式,

    9、这四个分段的 WOE 分别为:插播一段,从上面的计算结果中我们可以看一下 WOE 的基本特点:当前分组中,响应的比例越大, WOE 值越大;当前分组 WOE 的正负,由当前分组响应和未响应的比例,与样本整体响应和未 响应的比例的大小关系决定, 当前分组的比例小于样本整体比例时, WOE 为负, 当前分组的比例大于整体比例时, WOE 为正,当前分组的比例和整体比例相等 时, WOE 为 0。WOE 的取值范围是全体实数。我们进一步理解一下 WOE ,会发现, WOE 其实描述了变量当前这个分组,对判断个体是 否会响应(或者说属于哪个类)所起到影响方向和大小,当 WOE 为正时,变量当前取值对

    10、判断个体是否会响应起到的正向的影响,当 WOE 为负时,起到了负向影响。而 WOE 值的 大小,则是这个影响的大小的体现。好,回到正题,计算完 WOE ,我们分别计算四个分组的 IV 值:再插播一段,从上面 IV 的计算结果我们可以看出 IV 的以下特点:对于变量的一个分组, 这个分组的响应和未响应的比例与样本整体响应和未响应 的比例相差越大, IV 值越大,否则, IV 值越小;极端情况下, 当前分组的响应和未响应的比例和样本整体的响应和未响应的比例 相等时, IV 值为 0 ;IV 值的取值范围是 0,+ ),且,当当前分组中只包含响应客户或者未响应客户 时, IV = + 。OK ,再次

    11、回到正题。最后,我们计算变量总 IV 值:3.3.3IV 值的比较和变量预测能力的排序我们已经计算了四个变量中其中一个的 WOE 和 IV 值。另外三个的计算过程我们不再详细 的说明,直接给出 IV 结果。最近一个月是否有过购买: 0.250224725最近一笔购买的商品类别: 0.615275563是否是公司 VIP 客户: 1.56550367前面我们已经计算过,最近一次购买金额的 IV 为 0.49270645这四个变量 IV 排序结果是这样的:是否是公司 VIP 客户 最近一笔购买的商品类别 最 近一次购买金额 最近一个月是否有过购买。我们发现“是否是公司 VIP 客户”是预测能 力最

    12、高的变量, “最近一个月是否有过购买” 是预测能力最低的变量。 如果我们需要在这四 个变量中去挑选变量,就可以根据 IV 从高到低去挑选了。4. 关于 IV 和 WOE 的进一步思考4.1 为什么用 IV 而不是直接用 WOE 从上面的内容来看,变量各分组的 WOE 和 IV 都隐含着这个分组对目标变量的预测能力这 样的意义。 那我们为什么不直接用 WOE 相加或者绝对值相加作为衡量一个变量整体预测能 力的指标呢? 并且,从计算公式来看,对于变量的一个分组, IV 是 WOE 乘以这个分组响应占比和未响 应占比的差。而一个变量的 IV 等于各分组 IV 的和。如果愿意,我们同样也能用 WOE

    13、构造 出一个这样的一个和出来,我们只需要把变量各个分组的 WOE 和取绝对值再相加,即(取 绝对值是因为 WOE 可正可负, 如果不取绝对值, 则会把变量的区分度通过正负抵消的方式 抵消掉):那么我们为什么不直接用这个 WOE 绝对值的加和来衡量一个变量整体预测能力的好坏, 而 是要用 WOE 处理后的 IV 呢。我们这里给出两个原因。 IV 和 WOE 的差别在于 IV 在 WOE 基础上乘以的那个我们暂且用 pyn 来代表这个值。第一个原因, 当我们衡量一个变量的预测能力时, 我们所使用的指标值不应该是负数, 否则, 说一个变量的预测能力的指标是 -2.3 ,听起来很别扭。 从这个角度讲,

    14、 乘以 pyn 这个系数, 保证了变量每个分组的结果都是非负数,你可以验证一下,当一个分组的 WOE 是正数时, pyn 也是正数,当一个分组的 WOE 是负数时, pyn 也是负数,而当一个分组的 WOE=0 时, pyn 也是 0。当然,上面的原因不是最主要的,因为其实我们上面提到的 这个指 标也可以完全避免负数的出现。更主要的原因,也就是第二个原因是,乘以 pyn 后,体现出了变量当前分组中个体的数量 占整体个体数量的比例,对变量预测能力的影响。怎么理解这句话呢?我们还是举个例子。 假设我们上面所说的营销响应模型中, 还有一个变量 A,其取值只有两个: 0,1 ,数据如下:我们从上表可以

    15、看出,当变量 A 取值 1 时,其响应比例达到了 90% ,非常的高,但是我们 能否说变量 A 的预测能力非常强呢?不能。为什么呢?原因就在于, A 取 1 时,响应比例 虽然很高,但这个分组的客户数太少了,占的比例太低了。虽然,如果一个客户在 A 这个 变量上取 1,那他有 90%的响应可能性,但是一个客户变量 A 取1 的可能性本身就非常的低。所以, 对于样本整体来说, 变量的预测能力并没有那么强。我们分别看一下变量各分组和整体的 WOE , IV。考虑了这个分组中样本占整体样本的比例, 比例越低, 这个分组对变量整体预测能力的贡献越低。相反,如果直接用 WOE 的绝对值加和,会得到一个很

    16、高的指标,这是不合理的。4.2 IV 的极端情况以及处理方式IV 依赖 WOE ,并且 IV 是一个很好的衡量自变量对目标变量影响程度的指标。但是,使用 过程中应该注意一个问题:变量的任何分组中,不应该出现响应数 =0 或非响应数 =0 的情 况。此时对应的 IVi 为+ 。而当变量一个分组中,没有响应的数量 = 0 时, 此时的 IVi 为 + 。IVi 无论等于负无穷还是正无穷,都是没有意义的。由上述问题我们可以看到,使用 IV 其实有一个缺点,就是不能自动处理变量的分组中出现 响应比例为 0 或 100% 的情况。 那么, 遇到响应比例为 0 或者 100% 的情况, 我们应该怎么 做呢

    17、?建议如下:(1 )如果可能,直接把这个分组做成一个规则,作为模型的前置条件或补充条件;(2 )重新对变量进行离散化或分组,使每个分组的响应比例都不为 0 且不为 100% ,尤其是当一个分组个体数很小时(比如小于 100 个),强烈建议这样做,因为本身把一个分组 个体数弄得很小就不是太合理。(3 )如果上面两种方法都无法使用,建议人工把该分组的响应数和非响应的数量进行一定 的调整。如果响应数原本为 0 ,可以人工调整响应数为 1 ,如果非响应数原本为 0 ,可以人 工调整非响应数为 1.评分卡模型剖析之一( woe、IV 、ROC、信息熵)算法 python3m 12 个月前 (09-26)

    18、 1287 信用评分卡模型在国外是一种成熟的预测方法, 尤其在信用风险评估以及金融风险控制领域 更是得到了比较广泛的使用,其原理是将模型变量 WOE 编码方式离散化之后运用 logistic 回归模型进行的一种二分类变量的广义线性模型。本文重点介绍模型变量 WOE 以及 IV 原理,为表述方便,本文将模型目标标量为 1 记为违 约用户,对于目标变量为 0 记为正常用户;则 WOE(weight of Evidence) 其实就是自变量取 某个值的时候对违约比例的一种影响, 怎么理解这句话呢?我下面通过一个图标来进行说明。Woe 公式如下:Age#bad#goodWoe0-1050200=ln(

    19、50/100)/(200/1000)=ln(50/200)/(100/1000)10-1820200=ln(20/100)/(200/1000)=ln(20/200)/(100/1000)18-355200=ln(5/100)/(200/1000)=ln(5/200)/(100/1000)35-5015200=ln(15/100)/(200/1000)=ln(15/200)/(100/1000)50 以上10200=ln(10/100)/(200/1000)=ln(10/200)/(100/1000)汇总1001000表中以 age 年龄为某个自变量,由于年龄是连续型自变量,需要对其进行离散化

    20、处理,假 设离散化分为 5 组(至于如何分组,会在以后专题中解释), #bad 和 #good 表示在这五组 中违约用户和正常用户的数量分布,最后一列是 woe 值的计算,通过后面变化之后的公式 可以看出, woe 反映的是在自变量每个分组下违约用户对正常用户占比和总体中违约用户 对正常用户占比之间的差异; 从而可以直观的认为 woe 蕴含了自变量取值对于目标变量 (违 约概率)的影响。再加上 woe 计算形式与 logistic 回归中目标变量的 logistic 转换 (logist_p=ln(p/1-p) 如此相似,因而可以将自变量 woe 值替代原先的自变量值; 讲完 WOE 下面来说

    21、一下 IV :IV 公式如下:其实 IV 衡量的是某一个变量的信息量,从公式来看的话, 相当于是自变量 woe 值的一个加 权求和,其值的大小决定了自变量对于目标变量的影响程度;从另一个角度来看的话, IV 公式与信息熵的公式极其相似。事实上,为了理解 WOE 的意义,需要考虑对评分模型效果的评价。因为我们在建模时对模 型自变量的所有处理工作, 本质上都是为了提升模型的效果。 在之前的一些学习中, 我也总 结了这种二分类模型效果的评价方法,尤其是其中的 ROC 曲线。为了描述 WOE 的意义, 还真的需要从 ROC 说起。仍旧是先画个表格。数据来自于著名的 German credit data

    22、set,取了其中一个自变量来说明问题。第一列是自变量的取值, N表示对应每个取值的样本数, n1和 n0分别表示了违约样本数与正常样本数,p1 和 p0 分别表示了违约样本与正常样本占各自总体的比例, cump1 和 cump0 分别表示了 p1 和 p0 的累计和, woe 是对应自变量每个取值的 WOE (ln(p1/p0) ),iv 是 woe*(p1-p0) 。 对 iv 求和 (可以看成是对 WOE 的加权求和 ) ,就得到 IV(information value 信息值 ),是衡量 自变量对目标变量影响的指标之一 (类似于 gini,entropy 那些 ),此处是 0.666

    23、,貌似有点太 大了,囧。上述过程研究了一个自变量对目标变量的影响, 事实上也可以看成是单个自变量的评分模型, 更进一步地, 可以直接将自变量的取值当做是某种信用评分的得分, 此时需要假设自变量是 某种有序变量,也就是仅仅根据这个有序的自变量直接对目标变量进行预测。正是基于这种视角,我们可以将 “模型效果的评价 ”与 “自变量筛选及编码 ”这两个过程统一起 来。筛选合适的自变量, 并进行适当的编码, 事实上就是挑选并构造出对目标变量有较高预 测力 (predictive power) 的自变量, 同时也可以认为, 由这些自变量分别建立的单变量评分模 型,其模型效果也是比较好的。就以上面这个表格为

    24、例,其中的 cump1 和 cump0 ,从某种角度看就是我们做 ROC 曲线时 候的 TPR 与 FPR 。例如,此时的评分排序为 A12,A11,A14,A13 ,若以 A14 为 cutoff ,则此 时的 TPR=cumsum(p1)3/(sum(p1) , FPR=cumsum(p0)3/(sum(p0) ,就是 cump13 和 cump03 。于是我们可以画出相应的 ROC 曲线。可以看得出来这个 ROC 不怎么好看。之前也学习过了, ROC 曲线有可以量化的指标 AUC , 指的就是曲线下方的面积。 这种面积其实衡量了 TPR 与 FPR 之间的距离。 根据上面的描述, 从另一

    25、个角度看 TPR 与 FPR ,可以理解为这个自变量(也就是某种评分规则的得分)关于 0/1 目标变量的条件分布,例如 TPR ,即 cump1 ,也就是当目标变量取 1 时,自变量(评 分得分) 的一个累积分布。 当这两个条件分布距离较远时, 说明这个自变量对目标变量有较 好的辨识度。既然条件分布函数能够描述这种辨识能力,那么条件密度函数行不行呢?这就引出了 IV 和 WOE 的概念。事实上,我们同样可以衡量两个条件密度函数的距离,这就是 IV。这从 IV 的计算公式里面可以看出来, IV=sum(p1-p0)*log(p1/p0) ,其中的 p1 和 p0 就是相应的密 度值。 IV 这个

    26、定义是从相对熵演化过来的,里面仍然可以看到 x*lnx 的影子。 至此应该已经可以总结到: 评价评分模型的效果可以从 “条件分布函数距离 ”与 “条件密度函数 距离”这两个角度出发进行考虑,从而分别得到 AUC 和 IV 这两个指标。这两个指标当然也 可以用来作为筛选自变量的指标, IV 似乎更加常用一些。 而 WOE 就是 IV 的一个主要成分。 那么, 到底为什么要用 WOE 来对自变量做编码呢?主要的两个考虑是: 提升模型的预测效 果,提高模型的可理解性。首先,对已经存在的一个评分规则, 例如上述的 A12,A11,A14,A13 ,对其做各种函数变化, 可以得到不同的 ROC 结果。但

    27、是,如果这种函数变化是单调的,那么 ROC 曲线事实上是 不发生变化的。因此,想要提高 ROC ,必须寄希望于对评分规则做非单调的变换。传说中 的 NP 引理证明了,使得 ROC 达到最优的变换就是计算现有评分的一个 WOE ,这似乎叫 做“条件似然比 ”变换。用上述例子,我们根据计算出的 WOE 值,对评分规则(也就是第一列的 value )做排序, 得到新的一个评分规则。此处按照 WOE 做了逆序排列 (因为 WOE 越大则违约概率越大) ,照例可以画出 ROC 线。可以看出来,经过 WOE 的变化之后,模型的效果好多了。事实上, WOE 也可以用违约概 率来代替,两者没有本质的区别。用

    28、WOE 来对自变量做编码的一大目的就是实现这种 “条 件似然比 ”变换,极大化辨识度。同时, WOE 与违约概率具有某种线性关系,从而通过这种 WOE 编码可以发现自变量与目 标变量之间的非线性关系(例如 U 型或者倒 U 型关系)。在此基础上,我们可以预料到模 型拟合出来的自变量系数应该都是正数, 如果结果中出现了负数, 应当考虑是否是来自自变 量多重共线性的影响。另外, WOE 编码之后,自变量其实具备了某种标准化的性质,也就是说,自变量内部的各 个取值之间都可以直接进行比较( WOE 之间的比较),而不同自变量之间的各种取值也可 以通过 WOE 进行直接的比较。进一步地,可以研究自变量内

    29、部 WOE 值的变异(波动)情 况,结合模型拟合出的系数, 构造出各个自变量的贡献率及相对重要性。 一般地,系数越大, woe 的方差越大,则自变量的贡献率越大(类似于某种方差贡献率),这也能够很直观地 理解。总结起来就是, 做信用评分模型时, 自变量的处理过程(包括编码与筛选) 很大程度上是基 于对单变量模型效果的评价。 而在这个评价过程中, ROC 与 IV 是从不同角度考察自变量对 目标变量的影响力, 基于这种考察, 我们用 WOE 值对分类自变量进行编码,从而能够更直 观地理解自变量对目标变量的作用效果及方向,同时提升预测效果。这么一总结,似乎信用评分的建模过程更多地是分析的过程(而不是模型拟合的过程) ,也 正因此, 我们对模型参数的估计等等内容似乎并不做太多的学习, 而把主要的精力集中于研 究各个自变量与目标变量的关系, 在此基础上对自变量做筛选和编码, 最终再次评估模


    注意事项

    本文(数据挖掘模型中的IV和WOE详解.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开