什么是机器学习
三要素
生活中的机器学习应用
监督学习
学习一个模型,使模型对给定输入做出相应的预测输出,流程如下图
其中自变量x为自变量,是实例的特征向量;y为因变量,是实例的结果。
监督学习主要解决分类与回归两类问题
监督学习实例
已知房价,平米数的训练集如下:
平米数 | 房价(万) |
---|---|
50 | 50 |
80 | 70 |
100 | 90 |
130 | 110 |
150 | ??? |
给定一个平米数,预测该面积房价。
无监督学习
从数据中自主学习,分析数据的类别结构
什么是评分卡(信贷场景中)
为什么要开发评分卡
评分卡的特性
评分卡开发的常用模型
一个事件发生的几率(Odds),是指该事件发生的概率与该事件不发生概率的比值。若一个客户违约概率为p,则其正常的概率为1-p,由此可得:
Odds=p1−pOdds=p1−p
此时,客户违约的概率p可以表示为:
p=Odds1+Oddsp=Odds1+Odds
评分卡表达式为:
Score=A−Blog(Odds)Score=A−Blog(Odds)
其中A、B为常数。由于log函数在(0→+∞)(0→+∞)单调递增,所以当用户违约几率Odds越大时,Score评分越低。
通过给定
(1)某特定Odds时的Score值S0S0;
(2)该特定Odds值翻倍时Score增加值PD0PD0;
通过给定值S0S0与PD0PD0带入评分卡表达式,可求得A、B。
通过以上分析,求该用户评分Score的问题则转化为求用户违约对数几率log(Odds)log(Odds)的问题。
依照二元逻辑回归构造预测函数
hθ(x)=g(θTx)=11+e−θTxhθ(x)=g(θTx)=11+e−θTx
其中hθ(x)hθ(x)表示结果取1的概率。
推倒可得该事件的对数几率log(Odds)log(Odds)如下:
log(Odds)=logp1−p=loghθ(x)1−hθ(x)=log11+e−θTx1−11+e−θTx=θTxlog(Odds)=logp1−p=loghθ(x)1−hθ(x)=log11+e−θTx1−11+e−θTx=θTx
可以发现:在逻辑斯蒂回归模型中,输出Y=1的对数几率是输入条件x的线性函数。
θTx=∑i=1nθixi=θ0+θ1x1+θ2x2+...+θnxnθ=⎡⎣⎢⎢⎢θ0θ1...θn⎤⎦⎥⎥⎥,x=⎡⎣⎢⎢⎢x0x1...xn⎤⎦⎥⎥⎥θTx=∑i=1nθixi=θ0+θ1x1+θ2x2+...+θnxnθ=[θ0θ1...θn],x=[x0x1...xn]
由此可得log(Odds)=θ0+θ1x1+...+θnxnlog(Odds)=θ0+θ1x1+...+θnxn
回到信贷业务中
目标:寻找最理想的参数估计θθ使得模型预测的概率相对已有样本最准确。
方法:损失函数最小化求得θθ
逻辑回归的损失函数为对数损失函数(具体可由极大似然估计推倒):
L(θ) =1m∑i=1mCost(hθ(x(i)),y(i))=−1m[∑i=1m(y(i)⋅log(hθ(x(i)))+(1−y(i))⋅log(1−hθ(x(i)))]L(θ)=1m∑i=1mCost(hθ(x(i)),y(i)) =−1m[∑i=1m(y(i)⋅log(hθ(x(i)))+(1−y(i))⋅log(1−hθ(x(i)))]
利用梯度下降法求得minL(θ)minL(θ),得到θθ
Repeat {
θj:=θj−α∂∂θj∑i=1m(hθ(x(i))−y(i))x(i)jθj:=θj−α∂∂θj∑i=1m(hθ(x(i))−y(i))xj(i)
}(同时更新所有θjθj)
数据可视化
可以通过数据可视化来验证我们对数据分布的一些猜想,使我们对数据分布有一个清晰的认识和理解,并且由此设计一些合理的人工规则。
方式:
用途:
数据清洗
1.检验异常样本
根据对具体业务的理解和认识去除一些异常极端的数据。例如在对网页浏览量的分析,可能需要去除爬虫用户的浏览数据。
2.缺省字段的处理
数据样本的某些特征字段可能有缺省值,需根据缺省值多少与特征类型区分处理
特征分箱
分箱的定义
分箱的重要性及其优势
WOE(Weight of Evidence)编码
评分卡模型中一般会将特征进行WOE编码。WOE是一种有监督的编码方式,将预测类别的集中度的属性作为编码的数值。
优势
缺点
WOE计算公式
WOE=log(Gi/GtotalBi/Btotal)WOE=log(Gi/GtotalBi/Btotal)
其中Gi,BiGi,Bi分别为自变量第i箱好样本个数与坏样本个数
求得WOE值取代原特征值做自变量进行训练。
数据采样
在数据正负样本不均衡情况下,当然正负样本不要求1:1,但是也不能太大。假如正负样本比例 1:10,把这样不均衡的数据直接放进模型中进行训练,准确率会很高,因为大部分都可以预测为负样本。但是训练出的模型泛化能力很弱。这时需要对数据进行采样,使得数据样本均衡。通常有四种办法来进行采样。
评分卡模型训练
算法
两类错误
应对