拒绝推断问题(转)

拒绝推断(Reject Inference)是金融领域信用评分中的一个术语。对于要向银行借钱的人,我们需要考虑他们赖账的可能性。这样就需要根据他们的各种行为信息和人口统计学特征作为输入,来建立一个信用评分模型,这个建模过程与机器学习中训练一个模型类似。机器学习算法能够成功应用的一个条件是训练样本和测试样本有相同的分布,但在信用评分中,这个条件很难保证。信用评分的训练样本均来自于以前申请贷款被接受的那些人,而评分模型则是要应用到所以来申请贷款的人,并帮助做出接受/拒绝的决定。因此,模型不光要针对被接受的那些人,也要在被拒绝的那部分上面表现得好。可以想见,这两种人在输入空间上的分布是完全不同的,这就导致使用了部分数据,但是为估计总体而建立的信用评分模型存在参数估计的偏差。拒绝推断就是要把被拒掉那部分用户能够识别出来到底是好客户还是坏客户,然后加入到模型训练中,使得模型的样本尽量接近总体的分布。这就是拒绝推断要解决的。

 


在其他更加“机器学习化”的领域,例如计算广告,也会有被称为selection bias的类似问题存在。一般来说,网络广告点击率模型是根据广告本身、所出现的场景以及用户信息三者建立的,期望是能挑出那些被点击概率高的广告展示出来以改善用户体验并获得更高的广告提成。显然,建这样的模型需要广告的"被点击/不被点击"的信息作为模型的目标变量。只有那些历史上出现过的"广告-场景-用户"三元组,才会有被或不被点击的信息;从来没有出现过的三元组不会出现在训练数据中——它们是被已存在的点击率模型筛选过的。而优化点击率模型时,总是要面对新广告和新用户,并且尝试新的广告/场景匹配会不会更好,因此测试数据的分布不会和训练数据一致。
对于计算广告来说,这个问题好解决一些。我们可以把一小部分流量做成不经过模型筛选的"自然流量“,采用简单的诸如竞价排名之类的策略。这样用户体验的影响不大,而利润几乎也没什么损失。这部分流量累积下来的数据可以在模型训练中赋予更高的权重,因为某种意义下它们和测试数据"更加接近"。但在金融行业,要说服管理层开放这样的"自然流量"绝非易事。并且相对互联网广告,信贷的样本要少得多,即使有一些这样的"自然流量"样本,它们能起的作用也有限。所以有必要从另外的角度考虑问题的解决方法。
下面我首先会总结一些信用评分中常用的拒绝推断的方法。这些方法往往是比较ad-hoc的思路,或者有少许的统计学理论作为支撑。即使是经常在使用这些方法的信用评分建模专家,往往也对它们并不信服。然后我会看看机器学习的相关文献中对付selection bias的方法——这些方法一般是基于半监督学习(semi-supervised learning)这一理念的——并且检查它们是否能用到信用评分的拒绝推断中。

 常用方法:

来源:https://www.douban.com/note/410573602/?type=like

转载于:https://www.cnblogs.com/gczr/p/10084252.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/570075.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python学习day26 封装 property 类方法 静态方法 反射

封装 广义上面向对象的封装 :代码的保护,面向对象的思想本身就是一种只让自己的对象能调用自己类中的方法 狭义上的封装 —— 面向对象的三大特性之一属性 和 方法都藏起来 不让你看见 私有属性 class Person:__key 123 # 私有静态属性def __init__(se…

针对科技文章的多标签分类

0. 起 最近没有更新。暑假之后学的东西也比较杂,看了一下基于DL的智能美颜,感觉入了个大坑。前前后后看了传统的轮廓提取算法和FCN等等,调代码巴拉巴拉几个星期就这么过了。前几天看ACM的best paper也觉得很有意思,两个步骤&#…

Rest_Framework之频率组件部分

一、RestFramework之频率组件源码部分 频率组件的源码部分和权限组件流程一模一样的,这里就不多说了,直接上源码的主要逻辑部分: def check_throttles(self, request):"""Check if request should be throttled.Raises an app…

【使用指南】WijmoJS 前端开发工具包

为方便广大前端开发人员更好的使用 WijmoJS 前端开发工具包,葡萄城专门推出了 WijmoJS 使用指南,该指南详细地介绍了如何把 WijmoJS 各种强大的功能应用到您自己的 Web 项目中,助您轻松掌握产品使用技巧,快速完成产品选型。 本指南…

phpMyAdmin4.4.10安装

1.下载地址: phpMyAdmin4.4.10 https://files.phpmyadmin.net/phpMyAdmin/4.4.10/phpMyAdmin-4.4.10-all-languages.zip Apache 2.4.12(VC9) http://www.apachehaus.com/cgi-bin/download.plx php-5.4.42(VC9&#xff09…

汇编实验九

20171308171 胡欣怡 一、实验目的1. 掌握十进制两位数输出的方法2. 理解 8025 彩色字符模式显示原理3. 综合应用寻址方式和汇编指令完成应用编程二、实验准备1. 复习数值和数字字符之间的转换方法,div 指令用法2. 学习 P187-189 支撑材料及「实验 9 提示」&#xff…

U盘安装centos 7 提示 “Warning: /dev/root does not exist, could not boot” 解决办法

安装centos 7时提示 “Warning: /dev/root does not exist, could not boot” 这个问题是没有找到你的U盘,这个配置是需要在上一步需要完成的,但在上一步我们并不知道U盘的文件名,所以索性在这一步查看一下U盘的设备名,然后再回到…

【原创】大叔经验分享(6)Oozie如何查看提交到Yarn上的任务日志

通过oozie job id可以查看流程详细信息,命令如下: oozie job -info 0012077-180830142722522-oozie-hado-W 流程详细信息如下: Job ID : 0012077-180830142722522-oozie-hado-W -----------------------------------------------------------…

Beta 冲刺(3/7)

Beta 冲刺(3/7) Beta 冲刺 (3/7) 队名:第三视角 组长博客链接 本次作业链接 团队部分 团队燃尽图 工作情况汇报 张扬(组长) 过去两天完成了哪些任务 文字/口头描述 参与开发关键词提醒部分展示G…

vuex的理解

首先需要了解vuex的基本概念和使用方式,vue的官网也有很详细的说明或者浏览:https://zhuanlan.zhihu.com/p/24357762。vue是单页应用所以当页面刷新时vuex的数据随之也被清空了,如何实现页面被刷新而数据没有被清空呢?vuex主要是v…

Redis高可用sentinel

1.sentine介绍 Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案,当用Redis做Master-slave的高可用方案时,假如master宕机了,Redis本身(包括它的很多客户端)都没有实现自动进行主备切换,而Redis-sentinel本身也是一个独立运行…

关于eclipse web项目认不到用户库的问题

解决方法: 选中项目右键属性,弹出对话框,选择Deployment Assembly,设置用户库对应路径。

Python中 类和对象调用其他类中的变量和方法

class house_item: def __init__(self,name,area): self.namename self.areaarea def __str__(self): return "%s,\n面积是%.2f" % (self.name,self.area)class house: def __init__(self,house_type,house_area): self.typeho…

201771010109焦旭超《面向对象程序设计(java)》第十六周学习总结

1、实验目的与要求 (1) 掌握线程概念; (2) 掌握线程创建的两种技术; (3) 理解和掌握线程的优先级属性及调度方法; (4) 掌握线程同步的概念及实现技术; 2、实验内容和步骤 实验1:测试程序并进行代码注释。 测试程序1&am…

Hibernate hql getHibernateTemplate()常用方法汇总

getHibernateTemplate()常用方法 一、find(String queryString); 示例: Java代码 this.getHibernateTemplate().find("from bean.User"); 返回所有User对象 二、find(String queryString , Object value); 示例: Java代码 this.getHib…

阿里巴巴的26款超神Java开源项目!

1.分布式应用服务开发的一站式解决方案 Spring Cloud Alibaba Spring Cloud Alibaba 致力于提供分布式应用服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。 依托…

为DEV C++/CodeBlock配置gdb调试遇到的问题

DEV C和CodeBlock都只是一个IDE,不能编译调试,需要自己配置MINGW和gdb调试 1、MINGW 在这下载mingw-get-setup.exe安装即可。 https://sourceforge.net/projects/mingw/files/MinGW/ 配置MINGW很简单,安装包就好了,可以只安装gcc和…

Java面向对象第二章课后习题

网盘链接: 链接:https://pan.baidu.com/s/12YzJZY3s4XSq5C94HxWqZA 提取码:3w23 一、商场为员工提供了基本工资、物价津贴以及房租津贴。其中,物价津贴为基本工资的40%,房租津贴为基本工资的25%。 要求:从…

Tomcat映射虚拟路径到指定磁盘(eclipse)

用WangEditor富文本编辑,上传图片的时候,本文主要记录一下Tomcat映射虚拟路径到指定磁盘,保存到指定路径中,且能实现页面预览。 在实现之前wangeditor的简单实用请参照博主小道仙的后宫,写的很详细:http://…

JVM内存简析

JAVA的JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method) 堆区:1.存储的全部是对象,每个对象都包含一个与之对应的class的信息。(class的目的是得到操作指令)2.jvm只有一个堆区(heap)被所有线程共享,堆中不存放基本类型和对象引用&a…