关于机器学习应用不得不思考哪些问题?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于机器学习应用不得不思考哪些问题?相关的知识,希望对你有一定的参考价值。
参考技术A机器学习是一种能够赋予机器学习的能力以此让它完成直接编程无法完成的功能的方法。但从实践的意义上来说,机器学习是一种通过利用数据,训练出模型,然后使用模型预测的一种方法。
让我们具体看一个例子。
图4房价的例子
拿国民话题的房子来说。现在我手里有一栋房子需要售卖,我应该给它标上多大的价格?房子的面积是100平方米,价格是100万,120万,还是140万?
很显然,我希望获得房价与面积的某种规律。那么我该如何获得这个规律?用报纸上的房价平均数据么?还是参考别人面积相似的?无论哪种,似乎都并不是太靠谱。
我现在希望获得一个合理的,并且能够最大程度的反映面积与房价关系的规律。于是我调查了周边与我房型类似的一些房子,获得一组数据。这组数据中包含了大大小小房子的面积与价格,如果我能从这组数据中找出面积与价格的规律,那么我就可以得出房子的价格。
对规律的寻找很简单,拟合出一条直线,让它“穿过”所有的点,并且与各个点的距离尽可能的小。
通过这条直线,我获得了一个能够最佳反映房价与面积规律的规律。这条直线同时也是一个下式所表明的函数:房价=面积*a+b
上述中的a、b都是直线的参数。获得这些参数以后,我就可以计算出房子的价格。
假设a=0.75,b=50,则房价=100*0.75+50=125万。这个结果与我前面所列的100万,120万,140万都不一样。由于这条直线综合考虑了大部分的情况,因此从“统计”意义上来说,这是一个最合理的预测。
在求解过程中透露出了两个信息:
1.房价模型是根据拟合的函数类型决定的。如果是直线,那么拟合出的就是直线方程。如果是其他类型的线,例如抛物线,那么拟合出的就是抛物线方程。机器学习有众多算法,一些强力算法可以拟合出复杂的非线性模型,用来反映一些不是直线所能表达的情况。
2.如果我的数据越多,我的模型就越能够考虑到越多的情况,由此对于新情况的预测效果可能就越好。这是机器学习界“数据为王”思想的一个体现。一般来说(不是绝对),数据越多,最后机器学习生成的模型预测的效果越好。
通过我拟合直线的过程,我们可以对机器学习过程做一个完整的回顾。首先,我们需要在计算机中存储历史的数据。接着,我们将这些数据通过机器学习算法进行处理,这个过程在机器学习中叫做“训练”,处理的结果可以被我们用来对新的数据进行预测,这个结果一般称之为“模型”。对新数据的预测过程在机器学习中叫做“预测”。“训练”与“预测”是机器学习的两个过程,“模型”则是过程的中间输出结果,“训练”产生“模型”,“模型”指导“预测”。
参考技术B[]作为“宇宙最强的”科技企业,谷歌一向都是走在业界的尖端。在地图方面,自然也是如此!最近,谷歌又将看家的地图街景进行了升级优化。据悉,谷歌应用神经网络,利用地图街景的庞大影像资料库进行更多新的应用,甚至用来改善谷歌地图的商业信息精确度!ZOL汽车用品
图片来自venturebeat
果然,未来将是算法的时代啊!随着机器学习与人工智慧技术的进一步成熟,谷歌的演算法已经能通过同个目标如招牌等,在不同趟次的街景车扫描时的多组图片进行交叉判读。也就是说,那些拍摄不清楚的地方,可以利用算法判读出正确信息。(厉害了,我的歌!)
据官方实测,该的技术已经可以从法国的街景中达到超过84%的准确率;而单就街牌号码的判读工作上,也已经改善了全球1/3的地图信息了。接下来这项技术将被用来更新地图上的商家信息,而不用人工或者资料库来手动增加了。(为大神献上膝盖~~)
推荐相关阅读:
细数那些老司机的不靠谱省油方法!
汽车也有快捷键?汽车的隐藏技能揭秘
以下11种行为不但扣分还要重考驾照!
养成这4种好习惯帮你远离“汽车病”!
防不胜防汽车轮胎的5大隐形杀手!
惊了!它居然成了车内的定时炸弹!
更多汽车用品资讯请关注车品达人公众号或加入ZOL车品QQ群
详情- 官方服务
- 官方网站
主要观点:
1、经典信用评分卡是基于逻辑回归的二分类模型,在变量处理方面采用WOE可以保证特征变量与目标变量之间的单调关系。在建模构建过程中,评分卡模型有着严谨的统计学理论基础做支撑。评分卡建模可以在很多场景,对于正负样本的定义对应着模型的不同应用场景。
2、机器学习能够适用于高维稀疏和弱关系变量数据,对于模型细分和自适应学习方面可以节省大量人力成本,但机器学习模型复杂度高,需要建立更加完善的监控和迭代优化体系。
3、根据不同的业务目标、数据质量和应用场景选择合适的建模工具才能实现经典评分卡模型与机器学习模型的优势互补,不断提高风险计量水平。
一、经典信用评分卡介绍
经典信用评分的本质是基于逻辑回归的二分类模型,所以对经典信用评分的介绍就可以从两个方面着手,一个是逻辑回归,一个是二分类。逻辑回归决定了评分卡的技术内核,分类方式决定了评分卡的应用场景。
1.1逻辑回归与评分转换
逻辑回归是统计学回归方法的一种,线性回归模型是对连续型目标变量进行预测,而逻辑回归的目标变量取值为0和1,代表不同的类别。针对0-1变量,回归函数应改用限制在[0,1]区间内的连续曲线,而不能再沿用线性回归方程,所以在线性回归模型基础上,应用Logistic分布函数进行变换,将结果投射为[0,1]区间内的连续曲线。逻辑回归可以表示成如下的参数化的Logistic条件概率分布:
基于二项分布构造极大似然估计,应用梯度下降法即可以求解回归系数向量θ。对上式进行变换得到:
如果定义y是坏客户的比率,那么odds=y/(1-y)即为坏样本与好样本的比值,计算回归系数后,逻辑回归直接得到的是坏客户与好客户的比值的自然对数。如果要以分数形式展现,必须经过转换,其公式为
设定odds=1:1时的分数,假定为600分,设定odds每增加1倍,相对减少的分数,假设为20分,将odds=1:1及2:1时的分数套入公式,得到下列两式
求解得到location=600,scale=-20/ln(2),从而
注意到score是一个和式,我们也可以将最后的得分看做是各个变量得分的加和,每一个特征维度都可以计算一个得分,这便有了评分卡的概念。
1.2变量处理与WOE
在变量的处理方面,首先应该想到的是分类变量的处理,通常分类变量的取值没有实际的数值意义,比如地域和学历。一个常用的办法是使用哑变量,将一个变量编译为n-1个变量(n是分类变量的取值个数),这也是大部分统计教材中介绍的方法。哑变量的编码方式会带来两个问题:
首先是特征变量的维度会增加,如果考虑区域变量的话,一个变量就会衍生出几十个变量。这些变量都是二值变量,由于一个客户只能属于一个区域,所以得到的区域的衍生变量矩阵是非常稀疏的,逻辑回归不太擅长处理这类变量。
其次是模型的可解释性,建模之前和建模过程中都需要经过变量筛选,仍然以区域举例,极有可能出现的一种情况是区域的衍生变量中某几个进入到了最终的模型,大部分变量被筛掉了。区域变量的信息不完整,模型展现的结果就是只考虑某几个区域。上文中提到,评分卡模型是在每一个特征变量上进行评分,进行加和得到最后的评分。如果进入到模型的区域变量是A、B、C、D,那么对于一个来自区域E的客户,就要给他打出非A、非B、非C、非D四个得分,由于没有进入到模型,作为区域E的得分便无法得到。这对于模型的使用者尤其是不太了解建模过程的业务人员来说,是一件困惑的事情。
通常评分卡建模对于分类变量数值化的办法是使用WOE,WOE的计算方法如下:
其中Bi是第i类取值下的坏样本数,BT为全量样本下的坏样本数,Gi是第i类取值下的好样本数,GT为全量样本下的好样本数。不难看出,WOE可以反映出某一类取值项下的好坏样本比与整体的关系,如果该类项下坏客户占比高于整体水平,那么WOE值为正值,且坏客户占比越高,WOE值越大。一方面,WOE可以作为同一变量不同取值下的客群的质量评价指标,即WOE越高,则说明该客群质量越差;另一方面,如果不同取值下的WOE值差异较大,就可以说明变量对目标变量的解释性越好。通常使用IV值来表征特征变量对目标变量的可解释程度,IV可以作为变量筛选的一个参考。IV值得计算如下:
建模时,将分类变量的值用对应的WOE值替代,由于WOE的计算过程加入了特征变量的信息,可以保证的是进行WOE替换后的特征变量与目标变量的单调关系,即特征变量WOE值越大,目标变量取1的概率越高。正是由于有这样的好处,连续变量也有必要进行分段处理,然后用WOE值进入模型。以年龄为例,在信贷业务中,年龄太小或年龄太大的客户坏账率都比较高,也就是坏账率与年龄的关系是U字形的,如果直接将客户的年龄作为变量,这种非线性的关系就不能反映出来,模型的效果也会受到影响。对年龄分组后,就可以计算不同年龄段对应的WOE;相对于原来的年龄变量,分段后的WOE可以看做是重排序,将U字形关系变成了单调性关系。
连续变量分段还有一个好处就是可以将极值纳入到分段中,防止变量的过拟合。另外,缺失值也可以单独作为一类,计算WOE进入模型,不必进行缺失值填充。对于连续变量的分组方法,可以采用等值或等频分段的方法,结合业务经验确定分组边界;也可以使用最优化算法,比如寻找分界点使得分段后的变量IV值尽可能大。需要注意的是,由于WOE的计算加入了目标变量的信息,为了保证模型的稳定性,分段时各段的样本量不能太少,可以将WOE相近的段进行合并。
1.3评分卡应用
数值变量分段后,与分类变量一样进行WOE计算,然后建立逻辑回归模型,采用逐步回归建立模型,所有变量通过显著性检验和业务解释后就可以得到评分卡。假设一个只考虑性别和年龄的评分卡模型,确定location=600,scale=-20/ln(2),那么得到的评分卡举例如下:
变量
取值
WOE
系数
scale
评分
截距项
1
0.23
-20/
ln(2)
-6.6
性别
男
0.7
0.25
-5.0
女
-0.6
4.3
年龄
18-25
0.4
0.45
-5.2
26-40
-0.3
3.9
41-60
-0.4
5.2
60以上
0.2
-2.6
上表中各子项的评分计算为WOE*系数*scale,评分卡在应用时只需要根据客户各个特征的取值在location的基础上进行加减分即可。比如一个男性、20岁的客户,评分就是-6.6-5.0-5.2+600=583.2。
1.4不同业务场景的评分卡
二分类就是建模中的目标变量分为正类和负类,一般正类就是我们的关注类。正类和负类的划分需要有明确的业务含义。评分卡建模工作可以分为六个部分,分别是业务理解、数据理解、数据预处理、模型构建、模型评估和模型部署;其中业务理解和模型部署作为建模工作的起点和终点,都与业务有着紧密的联系。
按照应用场景的不同,信用评分可以分为申请评分模型、行为评分模型和催收评分卡模型。对于申请评分模型和行为评分模型来说,正、负样本类的业务定义就是违约和非违约;对于催收评分模型来说,由于进入到催收阶段的客户都是违约客户,所以催收模型的正样本就是不还款继续变坏的客户。
当然,评分卡模型可以应用的范围不止信用评估方面,比如客户流失预测模型中,正样本就是流失的客户;在广告点击预测中,正样本是点击广告的客户;在个性化商品推荐中,正样本就是浏览或购买商品的客户。诸如此类应用模式,不一而足。
有些模型中,好坏样本是容易定义的。比如滚动率预测模型是催收评分模型的一种,对于M1-M2滚动率预测模型来说,全量客户就是处于M1的客户,正类样本就是进入M1后一个月内未还款进入M2逾期的客户。而对于申请评分模型,由于客户获得信用卡后,风险暴露需要一定的时间,可能是6个月、12个月、18个月甚至更长,这就需要设置一个阈值,也就是表现期,定义在这个表现期内违约的客户为正类样本。对于会员流失预测模型,客户会员到期后可能过几天就会续费接着购买会员,所以到期后多长时间内不续费才算流失。对于收益评估模型,要定义一个阈值,收益高于这个金额阈值的客户为正样本类,这些阈值是需要通过数据分析得到的。样本分类完成后,就可以着手数据处理和模型构建的过程了,最后的模型部署也要参考样本分类时的业务定义。
二、机器学习在信用评估中的应用
随着互联网大数据的兴起,银行也在试图引进新技术,充分挖掘自身的数据价值。对信用卡业务来说,百万级的月申请量、千万级的客户规模、万亿级的年交易量,并且随着移动互联网和第三方征信的发展,银行可以获得客户的数据越来越多,这些数据为机器学习的应用提供了肥沃的土壤。
2.1机器学习算法概述
根据建模过程中的样本标签情况,通常机器学习算法可以分为有监督和无监督两种(半监督是二者相结合的一种方法)。在信用评估方面,由于事先须有违约和正常样本标签,所以一般采用有监督的机器学习算法。有监督的机器学习算法种类繁多,包括简单的最近邻算法、朴素贝叶斯、决策树、回归,以及复杂的支持向量机和神经网络,还有实践效果显著的集成学习算法如随机森林、梯度提升算法(GBDT)等等。另外,信用评分卡模型的历史要早于机器学习,逻辑回归算法在二者中的地位和意义略有区别。
机器学习的算法越来越成熟,不论是开源的算法包如Python、R,还是提供专业建模平台的商业化产品,模型构建的过程变得越来越简单。特征数据准备好之后,灌入算法包或者建模平台,就可以得到模型结果,达到预期效果后就可以将模型发布上线;毕竟,“机器学习应用的本质基本上就是特征工程”。
随着数据积累量的增多、数据维度的丰富、业务复杂性的增加,机器学习相较于经典评分卡模型带来的改变主要有以下两个方面。
2.2对于高维稀疏数据和弱关系变量的应用
工作中发现,如果建模的数据并非高维稀疏,目标变量取值分布非严重失衡且各类均有较多的样本支持建模,那么机器学习算法相对于经典评分卡模型并未表现出很大的优势。大数据背景下可以用于建模的数据极大丰富,但通常都存在数据质量问题;本质上数据质量能够决定模型效果的天花板,建模方法的优化只能不断接近这个天花板。
在信用评估方面,信贷历史和交易数据都是强相关变量,也是传统金融机构在评分卡模型中大量使用的变量,而对于没有信贷和交易记录的人自然就不能被评估,也就不能获得相应的金融服务。经典评分卡应用时对数据质量的要求较高,而正是由于建模的样本拥有这些强相关变量,评分卡模型也能做出比较好的效果。在今天的大数据征信中,准确评估那些没有信贷记录和金融交易数据的客户的风险是所有征信企业的初衷,所以社交数据、网页浏览数据、APP使用数据、地理位置信息等均可以纳入建模过程。这些数据或独立使用、或辅助金融交易变量建立模型,对客户的信用风险进行评估。
评分卡模型基于强相关变量进行建模,经过变量筛选后进入模型的变量一般为十个左右,且主要刻画的是线性关系,这显然不能满足大数据征信动辄成百上千的变量需求。从另一个角度来看,逻辑回归也可以看作是单隐含层、单节点,经过Sigmod变换的简单神经网络,其对复杂数据的处理能力必然有限,不能满足实际需求。
2.3建模过程的批量化和模型的自适应性
一方面,随着业务条线逐渐增多,越来越需要定制化的模型。以申请评分举例,申请不同卡种的客户、来自不同渠道的客户甚至不同地域的客户应该有着不同的风险表现,基于他们各自的数据应该配置不同的申请模型。这些建模过程大都类似,数据准备工作也是如出一辙,模型的结果依据数据表现不同而不同。机器学习建模的过程从变量筛选、模型构建、模型评估一系列流程可以实现自动化,可以很方便的做出细分模型。
另一方面,所有模型都是基于历史数据预测未来,模型准确的一个大前提是未来的数据表现与历史一致。目前线上申请渠道客户量和无人行征信客户申请比例都在逐渐增加,客户结构在发生着变化;另外随着新技术的产生欺诈手段不断翻新,这些都对模型的稳定性提出挑战。模型需要不断补充新数据,进行学习和更新。单就模型构建来说,机器学习模型的自动化构建可以对模型细分和模型自适应节省大量的人力。
三、经典评分卡与机器学习应用的互补
如上文所说,在进行评分卡建模前需要对变量进行分组,计算WOE保证特征变量与目标变量的线性关系,随后采用逐步回归筛选进入模型的变量,并通过多重共线性检测和变量显著性检验,可以说每一步都是有严格的统计学理论支撑。最终进入模型的变量个数一般不会过多,但对目标变量的区分能力都较强,再加上回归模型的可解释性较强,通过以上过程建立的经典评分卡模型大都比较稳定,因此经典评分卡可在国内外银行中得到了广泛应用。
机器学习作为随着互联网和大数据兴起而逐渐发展成熟的新技术,基本脱离了经典统计学的经验分布假设,因为大数据概念下,样本即是总体,所以模型对于数据的依赖性更强。对于前文提到的高维稀疏和弱关系变量数据自然还是复杂的机器学习算法如神经网络、支持向量机或者组合模型如随机森林、梯度提升决策树的模型效果更好,但同时,模型的复杂度增加带来的问题一个是易过拟合,另一个是可解释性差。支持向量机的核函数如何选择,神经网络的隐含层、节点数、转换函数如何设置,组合模型的模型个数、抽样方式如何确定,这些尚未有绝对正确的理论,只能凭经验确定,再辅以不断的参数调试,才能得到效果比较好的模型,对于中间的训练过程,很难有直观的认识,数据的变化对于模型效果的影响可能如蝴蝶效应,很难提前预估,高维稀疏数据的不稳定性和模型本身易过拟合,这两点都要求对机器学习模型的效果进行及时的监控和更新迭代。此外,随着算法本身的不断成熟完善,机器学习建模工具的门槛在不断降低,数据的归集、诊断、治理和特征工程这些脏活儿累活儿才是应用好大数据的关键。
可以预见的是,未来评分卡模型一定还会在信用评估方面占有一席之地;机器学习也会逐渐发挥自身的优势,尤其是在复杂多变的反欺诈领域。大数据背景下,根据不同的业务目标、数据质量和应用场景选择不同的建模方法,实现经典评分卡模型和机器学习模型的优势互补,才能不断提升风险计量的水平,更好地指导业务决策。
作者张发,中国光大银行信用卡中心风险管理部。
什么是自动机器学习?它有哪些用处?
随着人工智能的技术的崛起,深度学习的概念开始流行起来,那么谈到深度学习就不得不提自动机器学习。可能还有许多人会问:什么是自动机器学习?它有哪些用处?下面就我们一起了解自动机器学习吧!
一、认识自动机器学习
1、自动机器学习的概念:
自动机器学习(AutoML) 旨在通过让一些通用步骤 (如数据预处理、模型选择和调整超参数) 自动化,来简化机器学习中生成模型的过程。AutoML是指尽量不通过人来设定超参数,而是使用某种学习机制,来调节这些超参数。这些学习机制包括传统的贝叶斯优化,多臂老虎机(multi-armed bandit),进化算法,还有比较新的强化学习。当我们提起AutoML时,我们更多地是说自动化数据准备(即数据的预处理,数据的生成和选择)和模型训练(模型选择和超参数调优)。这个过程的每一步都有非常多的选项(options),根据我们遇到的问题,需要设定各种不同的选项。
2、自动机器学习的分类:
1、传统AutoML
(1)贝叶斯优化
贝叶斯优化是一种近似逼近的方法,用各种代理函数来拟合超参数与模型评价之间的关系,然后选择有希望的超参数组合进行迭代,最后得出效果最好的超参数组合。
(2)Multi-armed Bandit
multi-armed bandit是非常经典的序列决策模型,要解决的问题是平衡“探索”(exploration)和“利用”(exploitation)。这类算法,通过将自动调参问题,转化为bandit问题,配置更多资源给表现更优异的参数模型。
2、深度AutoML
(1)进化算法
一般的进化算法其实大同小异,差别在如何选择变异,有比较细的变异。这些进化算法在做自动模型选择时,每次迭代都不可避免的需要在整个数据集上跑若干个epoch,而每次迭代都有许多个变异,又需要很多次迭代,导致最后的训练时间太久。
(3)强化学习
强化学习在nas和ho两方面都有应用。强化学习在深度学习中的应用可谓方方面面,比如用强化学习做图像的增强学习 、device配置等等,但是强化学习的问题在于每一类问题,哪怕换一份相近的数据,也要从头训练;而且训练消耗的时间非常长。
二、为什么需要自动机器学习
对于机器学习的新用户而言,使用机器学习算法的一个主要的障碍就是算法的性能受许多的设计决策影响。随着深度学习的流行,工程师需要选择相应的神经网络架构,训练过程,正则化方法,超参数等等,所有的这些都对算法的性能有很大的影响。于是深度学习工程师也被戏称为调参工程师。
自动机器学习(AutoML)的目标就是使用自动化的数据驱动方式来做出上述的决策。用户只要提供数据,自动机器学习系统自动的决定最佳的方案。领域专家不再需要苦恼于学习各种机器学习的算法。
自动机器学习不光包括大家熟知的算法选择,超参数优化,和神经网络架构搜索,还覆盖机器学习工作流的每一步。
自动机器学习(AutoML)的用处就在于此,它帮助研究人员和从业者,自动构建机器学习(ML)管道,将多个步骤及其对应的多个选项集成为工作流,以期快速找到针对给定问题的高性能机器学习(ML)模型。
以上就是自动机器学习的全部介绍,相信大家对它的概念和用处都有了一定的了解。如果大家对人工智能还有进一步的学习欲望,可以在网上找这方面的学习视频,进行更加深入的学习。
我是白又白i,一名喜欢分享知识的程序媛❤️
感兴趣的可以关注我的公众号:白又白学Python【非常感谢你的点赞、收藏、关注、评论,一键三连支持】
以上是关于关于机器学习应用不得不思考哪些问题?的主要内容,如果未能解决你的问题,请参考以下文章