搭建金融信贷风控中的机器学习模型-(9)集成模型

        在包括违约预测在内的诸多场景中,越来越多的建模人员应用集成模型取得了不错的成效。典型的集成方式包括bagging,boosting和stacking。

1.集成模型

把多种单一模型组合取来共同解决一个问题
必要性

  • 能够为风控模型提供更为广阔的发展空间
  • 能够为风险评估的准确性、稳健性最优选择问题给出答案
  • 提高风控模型的效率
    image.png

    理想情况下组合模型误差分析
    考虑二分类问题和真实函数,假定元模型的错误率为,每个元模型都有,如果使用简单投票法,即超过半数的元模型的投票结果作为最后的结果,则有:
    ,在独立的前提下,有
    从上式看出:
    1.元模型的误差越大,集成模型的误差越小;
    2.当元模型的误差小于0.5时,集成模型的元模型个数越多,集成模型效果越好。

    根据元模型之间的种类关系可以把集成模型划分为异态集成和同态集成;只用不同种类的分类、回归算法建立单一模型并进行集成,成为异态集成;使用同一算法建立单一模型并集成,称为同态集成。
    单一模型需要满足以下基本要求:
  • 单一模型之间的数据或者假设要求基本相同
  • 单一模型的分类错误率要低于0.5
  • 单一模型要保证相互独立
  • 单一模型的复杂度要适度
  • 单一模型的数量要适度

2.Bagging

Bagging的代表是随机森林模型,这种集成方式的步骤是:

随机森林构建步骤

        在Bagging集成中,需要从原训练集中有放回地抽取数据形成新的训练集,在此基础上构造元模型。假设原训练集有M个样本,则每次需要从中有放回地抽取M次。由于每次抽样是随机的,因此每条数据被抽取到的概率为,每次没有被抽取到的概率为,M次都没有被抽取到的概率为,由于,没有被抽取到的数据组成的子集称为袋外数据(out of bag,OOB),可以用作验证集。此外,利用Bagging的方式集成模型,中间不同元模型的构建可以并行完成。

3.Boosting

        Boosting是另一种常见的集成方式,其基本思想是,根据当前得到的模型的错误率(或者其他与损失相关的量,例如损失函数)对样本进行调整,再构建下一个模型,最终将所有模型的结果进行加权。由此可见,与Bagging不同的是,Boosting中训练元模型是串行生成的。之前介绍的GBDT和XGBoost模型就是其中一类,此外根据代表性的Adaboost模型,其表达式为:
,其中为若干个元模型,为元模型权重,为元模型的参数,为所有参数集合。
基本思路

Adaboost基本思路

Adaboost训练步骤

权重求解1

权重求解2

4.Stacking

       
image.png

image.png

你可能感兴趣的:(搭建金融信贷风控中的机器学习模型-(9)集成模型)