精华内容
下载资源
问答
  • 2021-06-07 15:49:19

    《如何搭建小微企业风控模型》第三节 风控模型概览

     

    第一章 小微企业数据风控技术的框架

    • 小微企业数据贷发展情况概述
    • 搭建小微企业风控模型所需知识
    • 风控模型概览

    第二章 强相关变量:企业经营数据

    • 了解数据源
    • 特征工程 (上)
    • 特征工程 (下)

    第三章 风控策略

    • 准入规则
    • 反欺诈策略

    第四章 有B端特色的机器学习模型

    • 单变量分析 (上)
    • 单变量分析 (下)
    • 逻辑回归与评分卡
    • 模型检验

    第五章 额度测算和贷后预警

    • 额度公式
    • 贷后预警与结语

     

     

    ~~课程特色~~
    特色1:传统公司信贷原理和人工智能的融合应用
    特色2:从风控策略到算法,全流程风控模型都会讲解
    特色3:去繁从简,把最核心的知识压缩到14节课里,干货满满
    特色4:涉及人工智能、公司信贷原理、财务等各类知识,但不必每类知识从头学起,课程通俗易懂,不会代码的业务人员、不懂信贷原理的算法工程师等均可观看
    特色5:跟随课程实操,即可搭建人生的第一个企业风控模型
    特色6:本课程所含技术不仅可以用在线上toB数据贷领域,还可以应用在应收账款管理等领域

     

    适用人群

    银行、非银行金融公司的数据贷从业人员;需管理企业赊销或应收账款风险的财务人员;金融科技从业者

    更多相关内容
  • 关于风控模型的调参就是各位风控同学经常Q的问题,基于此,年前番茄风控再次输出干货文章:《风控模型的调参方法和实际运用》。 本文不仅有理论,有实操方法,更有数据集跟代码。此外在知识星球中更会手把手讲解

    序言:
    大数据时代的风控体系必有模型部分的参与,用策略贯穿整个风控体系,以数据为驱动,模型一定是标配内容。于是在模型的建设上,如何精细化地输出一套有效的模型,就是在精细化管理上非常重要的一个差异点。不管传统的逻辑回归也好,还是现在的机器学习也罢,总需要进行的就是模型的调参。如果说在番茄的星球社区中哪类问题最多?

    关于风控模型的调参就是各位风控同学经常Q的问题,基于此,年前番茄风控再次输出干货文章:《风控模型的调参方法和实际运用》。

    本文不仅有理论,有实操方法,更有数据集跟代码。此外在知识星球中更会手把手讲解具体的实操内容,包括数据展示(excel)、数据案例跟代码(python),基本一看就懂,一跑就会。

    为了便于大家对风控模型的调参方法和实际运用进一步的进行参考与了解,在重要的调参上我们选择了目前常用的几类模型作为举例,详细跟大家讲解具体的调参步骤跟方法。本篇不仅仅有基于创作者的调参的介绍,更在最后一部分结合编程代码实现其数据逻辑跟分析过程。

    因为完整内容较长,本次整体的内容将分成四大部分跟大家介绍,特别是第四部分,内容更会带领大家领略整个模型调参的内容,整体目录如下:

    第一部分:调参前需要了解的内容
    第二部分:风控模型常用算法和主要的参数介绍

    1.随机森林
    2.XGBOOST
    3.Lightgbm

    第三部分:实际工作中常用的调参方法

    1.手动调参
    2.半自动调参–网格搜索
    3.半自动调参–随机搜索
    4.全自动调参–贝叶斯优化
    5.调参的两点建议

    第四部分:实操–网格搜索和随机搜索调参

    正文:
    在风控建模的流程中,模型调参是非常重要的一步,我们通过调整算法的参数可以达到更好的模型效果。在调参过程中需要建模人员对算法和数据的理解,细致的分析能力,以及选择合适的调参策略。下面我们基于自身建模的经验,介绍下风控建模中调参的实际应用方法。

    Part1.
    调参前需要了解的内容
    在讲具体的方法前,先抛出下面几个问题:
    1)参数是什么?是调整哪些参数?
    2)调参的目标是什么?每种参数对目标有什么影响?3)调参的流程大概是怎样的?
    4)在调参中需要注意哪些地方?参数在机器学习指的是算法的"超参数",决定了模型结构/框架及算法行为,举个例子,决策树中的"最大树深度"就是一个超参数,它决定了树在生长过程中的层数,会影响到最终模型的预测结果。每种算法的参数我们需要去了解它的含义,取值范围,对模型性能的影响等,才能知道怎么去调整。另外算法中的参数可能很多,但并非所有的参数都同等重要,应该根据目标选择重要的参数来调整。调参的目标,或者说参数对模型效果有什么影响,有以下几点:1)模型分的分布,根据业务sens,我们希望调参后模型分呈近似的正态分布
    2)模型分的最大KS,KS反映了模型的区隔能力,我们希望调参能使KS最大化
    3)模型分的Lift排序性,在整体或者尾段,我们希望调参后模型有良好的排序能力调参的流程大致分为以下几步
    1)确定使用的算法和调参目标
    2)建立baseline模型,baseline类似实验中的对照组,后面调参后的模型就是改进版本,来打败baseline版本,baseline中的模型参数需要按经验来设置
    3)确定要调整哪些参数,选择合适的调参策略
    4)记录每轮调参的结果,最好能可视化的呈现和分析5)比较每组参数的训练结果,选择最好的一组参数来跟baseline版本做对比调参最需要注意的地方在于时间成本。数据规模的大小,参数组合的数量,参数的取值都会影响到调参训练的时间。风控建模的样本一般就几万到十几万,属于小规模样本量,但特征可能有几百维甚至几千维,数据规模越大,训练时间越长,大规模数据集一定要考虑调参耗费的时间。另外我们不可能穷尽所有的参数组合来达到全局最优解,要铭记参数只有更好,没有最好,参数组合数量和取值范围应控制在合理的范围内。总的来说,我们需要平衡模型的效果和调参耗费的时间成本。

    Part2.
    风控模型常用算法和主要的参数介绍
    风控模型常用的算法有逻辑回归(LR),随机森林,xgboost,lightgbm等,其中LR属于线性回归,剩下的都属于集成算法。LR的参数很少,比较重要的一个参数在sklearn中叫"正则化系数"(C),这个参数值越小,正则化强度越大,即防止过拟合的程度更大,但经过我们的实际验证,这个参数对模型效果影响甚微,所以用LR训练时其实不用调参,用算法给的默认参数即可。相比之下集成算法的参数众多,这里我们挑出了主要的一些参数,介绍下参数的含义,对模型性能的影响和常见的取值范围(sklearn中)。并且将参数分为了性能类,效率类,附加类三种。

    1.随机森林
    随机森林是bagging算法的代表,使用了CART树作为弱分类器,将多个不同的决策树进行组合,利用这种组合来降低单棵决策树的可能带来的片面性和判断不准确性。随机森林一般调整n_estimators,max_depth,max_features,min_samples_split,min_samples_leaf这几个参数。
    在这里插入图片描述
    2.XGBOOST
    xgboost是一种梯度提升的算法,用来解决分类和回归问题。它对GBDT进行了一系列优化,比如损失函数进行了二阶泰勒展开、目标函数加入正则项、特征粒度上支持并行计算和默认缺失值处理等。xgboost一般调整n_estimators,learning_rate,max_depth,min_child_weight,subsample,colsample_bytree这几个参数。
    在这里插入图片描述
    3.Lightgbm
    lightgbm跟xgboost类似,也是一种梯度提升的算法,它相比xgboost的改进在于,训练速度和精度上的优化,以及可以处理类别型特征。lightgbm的很多参数和xgboost是一样的,主要对n_estimators,learning_rate,num_leaves,min_child_sample,subsample,colsample_bytree这几个进行调整。
    在这里插入图片描述
    Part3.
    实际工作中常用的调参方法
    通过以上内容的介绍,我们知道了调参的目标,参数的含义及对模型性能的影响,下面我们介绍下实际工作中常用的调参方法,根据自动化的程度,调参可分为手动调参,半自动调参和全自动调参,调参方法的选择要依据你的样本量,特征维度以及时间成本,后面会具体讲解。
    1.手动调参手动调参非常依赖建模同学自身的经验,并且要求对数据和算法有深入的理解,具体的步骤为:1)依据经验对baseline版本模型设置参数,并进行模型训练
    2)根据目标观察分析baseline的效果,确定影响效果的参数并对其进行调整3)调整后重新训练模型,再观察分析效果,直到调整后的模型满足预期目标举个例子,下面是lightgbm做出的baseline模型,参数组合为:learning_rate为0.05num_leaves为4min_child_samples为50subsample和colsample_bytree都是0.7early_stopping_rounds(早停次数)为10
    在这里插入图片描述
    从模型分的好坏用户分布图中看出,好用户的分布有凸起(红框所示),我们希望得到的是类正态分布,局部凸起对于整体的排序性会有影响,根据num_leaves只有4,早停次数为10,模型训练到49次就停止的结果,猜测有可能是因为模型训练的不够充分,导致局部欠拟合。我们试着调大num_leaves和早停次数看看,num_leaves改成8,早停改成30,得到下面分布的结果,可以看到凸起没有了,模型分布近似正态且线条顺滑,达到了预期目标。
    在这里插入图片描述
    手动调参的优缺点:优点在于时间成本低,比如刚才例子中调整一次就达到了目标,就像是医生看病一样,能对症下药,快速解决问题。缺点在于手动调参是人为驱动的,尝试的参数组合少,可能会错过好的参数组合,并且刚才也提到,这种方法门槛较高,新手不建议使用。

    2.半自动调参–网格搜索
    网格搜索是一种古老原始的调参方法,也是最常用的一种手段,该方法通过"穷举"搜索所有候选参数组合,根据模型评估结果找出表现最好的参数组合作为最终模型的入参。这里还涉及到搜索域的概念,搜索域即为参数的取值范围,例如我们对lightgbm中num_leaves和subsample进行调整,num_leaves搜索域为(4,6,8),subsample为(0.7,0.8,0.9),则网格的搜索次数为3X3=9次,所以随着取值个数和参数增多,搜索次数会呈指数级的增长。网格搜索的调参步骤为:
    1)依据经验对baseline版本模型设置参数,并进行模型训练
    2)根据baseline的效果确定要调整的参数和取值范围,这里也要依据对数据和算法的理解
    3)循环遍历每种参数组合进行模型训练,跑出结果并观察分析
    4)根据目标找出最好的一组参数来作为最终模型的入参网格调参的优缺点:优点在于可以尝试很多参数组合,能使模型效果尽量达到最优。缺点也显而易见,当参数组合和取值范围增加时,参数组合数会急剧增长,面对大数据集时会非常耗时,所以网格调参适用于中小规模数据集,且调整的参数不宜过多。

    3.半自动调参–随机搜索
    随机搜索相比网格搜索的优势在于它不是尝试所有参数组合,而是通过选择每一个参数的随机值来形成随机参数组合,搜索的次数人为来定,可以自由控制时间成本。这样的话参数的取值范围就可以扩大一些,也增加了获得最佳参数的可能性。不过缺点也是这种随机性会有很大概率漏掉好的参数组合。随机搜索的步骤和网格搜索类似:
    1)依据经验对baseline版本模型设置参数,并进行模型训练
    2)根据baseline的效果确定要调整的参数和取值范围,参数数量和取值范围可以扩大一些
    3)设置随机搜索次数,跑出每种随机组合下的模型结果
    4)根据目标找出最好的一组参数来作为最终模型的入参网格搜索和随机搜索在sklearn中有对应的包可以直接调用:from sklearn.model_selection importGridSearchCV(网格搜索)from sklearn.model_selection importRandomizedSearchCV(随机搜索)大家可以自己去了解一下如何使用,或者自己写代码实现(后面的实操中会做介绍)

    4.全自动调参–贝叶斯优化
    网格搜索需要人为指定参数的取值范围,随机搜索能随机探索最佳参数组合的可能性,而贝叶斯方法能够启发式的探索更优参数组合,此方法只需要给它一些观察点(参数,性能),就能根据观察的先验,指导参数进行组合,并权衡性能和时间成本,在这个过程中用到了贝叶斯的方法,所以叫做贝叶斯优化。假设x是参数组合,y是我们的目标,如果模型训练很快,我们可以穷举所有的x来找到最优的y,但实际上模型训练的代价是昂贵的,我们要充分利用已经尝试过的(x,y)结果,来给后面的训练组合做参考,就像xgboost一样,每次迭代都学习一棵树来拟合之前那棵树的预测结果与真实值的残差。贝叶斯优化其实就是想求出后验概率p(y*|x*,x,y)的分布,其中y就是指未尝试参数组合的结果,x就是指对应的未尝试的参数组合,而x,y则是已经尝试过的组合和效果。如果我们能拟合出这个后验概率分布,那么我们就可以在x下,预估y的值,既然结果都预估出来了,那么根据y就能取最优的x。贝叶斯优化在python里也有现成的包可以使用(BayesianOptimization),具体实现的代码这里不做赘述,大家可以自行去学习,简单的步骤为:
    1)导入必要的包
    2) 定义优化目标
    3)定义超参空间和优化器
    4)调用优化,最终会自动得到最优的参数组合和模型结果贝叶斯的优点在于可自动进行调参,极大提高调参效率,不过缺点在于原理比较黑盒,并且面对高维度大规模数据集时,速度还是比较慢,且处理的参数维度有限。

    5.调参的两点建议:
    1)调参在有些情况下只是锦上添花的作用,影响模型效果的主要还是样本和特征,所以大家不要把过多的时间精力放在调参上,要平衡好模型效果和时间成本。2)要结合具体情况选择合适的调参方法,小规模数据可以把网格和随机搜索结合来使用,再加一点人工经验,大规模数据在时间成本允许的情况下可使用随机搜索,不想耗费时间就手工调参吧,根据我们的经验,只要前面特征工程做的好,大规模数据对参数的选择不太敏感,所以可根据经验尝试个几组参数即可。

    Part4.
    实操–网格搜索和随机搜索调参
    在这里插入图片描述
    …此处省略部分,请到知识星球参考完整详版内容~

    在这里插入图片描述
    以上完整版本内容欢迎星球同学移步到知识星球查收完整内容:
    在这里插入图片描述
    在这里插入图片描述
    其中本文相关的数据集跟代码也欢迎参考本周的【星球打榜作业】
    在这里插入图片描述

    ~原创文章

    end

    展开全文
  • 近期,我们花费了时间容整理了目前业内各位小伙伴关心的内容,本次文章是其中一个问题就是模型跟规则在现有的风控系统内是如何规范上线的,基于此,我们给大家带来了这样的一篇内容。本次文章内容翔实,章节就有四大...

    序言:
    作为年后的首篇实操干货文章,番茄风控一如既往向业内小伙伴输出相关的干货文章。有实操能落地,有数据可撸码,继续将会是番茄风控提供给各位小伙伴的业内标配内容。

    近期,我们花费了时间容整理了目前业内各位小伙伴关心的内容,本次文章是其中一个问题就是模型跟规则在现有的风控系统内是如何规范上线的,基于此,我们给大家带来了这样的一篇内容。本次文章内容翔实,章节就有四大部分,内容绝对干货满满,实操性十足。老规矩,文章中提及的更详情(数据集+代码内容)可以直接到知识课堂中下载学习。

    本文有理论,有方法,有实操,还有数据集跟代码。此外在知识星球中更会手把手讲解具体的实操内容,包括数据展示(excel)、数据案例跟代码(python),基本一看就懂,一跑就会。

    因为完整内容较长,本次整体的内容将分成六大部分跟大家介绍,整体目录如下:
    第一部分.特征的上线计算
    1.1.特征离线计算
    1.2.特征实时计算

    第二部分.模型的上线部署
    2.1.模型离线部署
    2.2.模型实时部署

    第三部分.特征和模型的一致性校验
    3.1.模型正式启用前的一致性校验
    3.2.上线后的监控和校验

    第四部分.实操–pmml文件转换和一致性校验
    4.1.PMML文件的转换
    4.2.特征和模型分的一致性校验

    正文:
    风控模型线下开发好后,接下来就是上线部署的流程,上线部署关系到模型的稳定性和可控性,是需要去规范化,细心做的一个环节。本文主要介绍的就是模型和特征常见的上线方式,以及上线后如果做数据校验,如何监控等问题。在介绍各种方法时,我们会分适用的场景,部署的步骤和细节,以及方法的优缺点等进行阐述。

    Part 1.特征的上线计算
    模型上线分为特征计算和模型部署两部分,特征计算好才能跑模型进行预测打分,其中特征计算又分为实时计算和离线计算,模型部署分为实时部署和离线部署。特征是否要实时计算取决于是否需要实时调用收费数据源或使用当天的实时数据,若特征为实时计算,则模型必须要实时部署,若特征为离线计算,模型可根据需求选择实时还是离线部署。下面先讲一下特征的上线计算的方法:

    一.特征离线计算
    特征离线计算不需要用到当天的实时数据,只需要往前回溯的历史数据,例如贷中的B卡分一般用T+1的申请贷后数据,贷后的C卡一般用T+7的催收贷后行为数据。

    1.用sql进行计算,即使用sql进行离线的特征开发。sql中的count,sum,case when等用法可开发一些统计类的特征(如下图所示),这种方式相当于把底层数据源清洗,创建中间表,特征开发都放在数仓里进行,建模同学在数仓里完成开发工作后,可以让管理数仓的同学设置定时跑批任务,例如每天(T+1)在凌晨跑出一批用户的特征供当天风控使用。用sql的好处在于可大批量定时自动的进行特征计算,且可保存每天的记录供后面回溯使用,但缺点在于sql这种查询语言,在开发一些复杂逻辑的特征时比较吃力,逻辑校验起来也不如python灵活,另外如果跑批量很大,会占用一定的数仓资源。
    在这里插入图片描述
    2.本地python计算,相比于sql,用python做特征开发会更加省力,可减少代码工作量,能衍生出各种计算逻辑的特征,当然缺点在于很难能像数仓那样设置定时跑批任务,且受到本地内存,CPU,python处理速度等限制,跑大批量样本时比较耗时间。所以此方法不适合线上调用数据的场景,适合根据线下不定期的需求来做特征计算。

    二.特征实时计算
    前面提到如果需要调用实时的数据,就必须用实时计算的方式,那对于T+1这种历史数据,其实也可以用实时计算,比如每天定时准备好特征计算需要的数据源,当天用这个数据源来做实时计算,想当于数据源是离线准备好的,特征是实时算的。

    1.用java做实时计算,相当于线下用python开发的特征,再用java来实现一遍,这么做看起来很麻烦,还得重写一遍逻辑,其实是为了考虑计算的性能,面对大的数据量和特征维度,python处理数据的速度不如java,哪怕只是多个一两秒,对于线上的风控都有很大影响。这种计算方式一定要做好特征的一致性比对,包括数据源,计算逻辑,特征缺失映射逻辑,数值精度等。另外这种方式不仅增加了开发的工作量,其实也影响了后面新增特征的上线及时性,建模同学每次要加新的特征,还得先提需求,再进行开发,最后校验上线,非常影响模型上线的进度。

    2.用python计算特征。对于轻量化的特征计算显然用python更合适,我们可以利用flask,django等框架在外部搭建一个python服务,在这个服务里进行特征计算,建模同学线下开发特征的代码可以直接移值到这个服务中,省去了二次开发的工作量。然后创建一个API接口,让java直接通过接口来调用计算好的特征值。这种方法不仅减少了开发资源,也可以省去计算逻辑的一致性校验,并且灵活程度更高,每次要增加新的特征,建模同学可直接在python服务里进行操作,不过此方法要求建模同学有较强的工程开发能力,或者通过开发同学协助上线。

    Part2.模型的上线部署
    一.模型离线部署
    离线部署适用的场景有这么几个:
    1.贷中环节的审批和额度管理,例如B卡用到的是用户历史信用数据,可在离线环境跑好T+1的模型分供当天审批或额度决策使用。

    2.贷后环节的催收场景,例如常用的迁徙率模型,还款预测模型,这些只需要T+1,或者根据使用需求离线跑出模型分即可。

    常见的离线部署方式:
    1.用sql在数仓里部署,这种方式只适合逻辑回归(LR)传统评分卡,由于LR评分卡的跑分逻辑为每个特征对应评分的加总,所以可用sql来实现这种逻辑(如下图所示),利用sql里的case when…then…的语法写出特征在每个箱体对应的分数,最后加上基础分即得出模型分。
    在这里插入图片描述
    这种方式特征+模型都在数仓里进行部署,具体的步骤为:

    1)对底层数据源做清洗,合并等操作,生成可供特征衍生的中间表。
    2)用sql对中间表做特征开发工作,生成一张特征宽表。
    3)对这张特征宽表用case when的方法得到每个特征对应的分数,最后对分数进行加总得到模型分。
    4)让数仓同学根据以上逻辑配置跑批任务,例如每天定时跑出所有目标用户的模型分。

    用sql来做模型部署最大的好处在于简单,不需要额外的开发能力。但这种方法只适合LR这种传统评分卡,对于机器学习模型不适用,并且在上一part也提到用sql做特征开发有局限性,一些逻辑复杂的特征sql实现起来很麻烦。

    2.本地python部署,具体的步骤为:
    1)数据准备,在本地对一批用户进行取数,跑特征,生成入模特征变量宽表。
    2)模型载入,读取python的model或者pkl文件。
    3)预测打分,对这批用户进行打分,然后交给交给业务方使用。
    这种方法因为在python环境里部署,所以对任何算法都适用,且实现起来简单,跟线下开发模型步骤类似。但它的问题跟离线计算特征一样,很难做到定时跑批,并且本地内存资源有限,跑大批量用户的模型分时非常耗时间,所以一般用在线下决策场景,例如跑一批目标用户的B卡分给策略同学做提额,或者在催收场景,每周对入催用户跑分做催收等级划分,给贷后同学做参考等。

    二.模型实时部署
    实时部署的使用场景在实时审批阶段,例如授信和支用审批,常见的A卡,反欺诈模型都需要实时部署在线上。
    常见的实时部署方式:
    1.跨平台部署–PMML
    线下我们开发模型是在python环境中,那怎么把模型移植到线上的生产环境,例如java环境,这时候就要用到pmml的方法。pmml是数据挖掘的一种通用规范,是使用XML格式来描述我们生成的机器学习模型,简单说就是先在python环境里将模型转成pmml格式文件,然后用java代码来加载读取这个模型做预测。具体的部署步骤为:
    1)在python环境里开发好模型。
    2)在自己的本地配置java环境,安装JDK,并在python里安装sklearn2pmml包
    3)利用sklearn2pmml将python的model文件转成pmml文件
    4)将pmml文件交给开发同学,开发同学用java来读取pmml并做预测

    pmml是目前跨平台部署模型最常用的方法,无论你的模型是sklearn,R还是sparkMLlib生成的,都可以转成pmml格式,具有广泛的支持性,同时具有可读性,用文本编辑器可直接打开pmml文件查看里面的内容。不过pmml也有以下两个缺点,在使用时需要注意:
    1)pmml为了实现跨平台,牺牲了很多平台独有的优化,pmml文件要比在python环境的模型文件大很多,并且pmml文件的加载速度也比python文件慢很多。尤其对于大规模的机器学习模型,lightgbm,xgboost这种,生成的pmml文件很容易达到几百MB,导致在java环境加载预测会非常慢,所以在训练模型时,很有必要限制入模特征的数量和模型复杂度来减小文件容量。
    2)pmml文件和python的model文件在预测时会有一点偏差,这是由于pmml用的是64位浮点,python用的是32位浮点,会在预测概率的小数4-6位上有稍许偏差。不过这个偏差并不大,且出现的概率也比较小。如果必须要保证两者结果一致,可以在做分数转换时将概率四舍五入至4位小数,这样可接近100%一致。

    2.利用flask,django等框架创建python的API接口,跟上文提到的特征实时计算一样,模型的预测在python环境里进行,然后通过API接口输出预测结果,开发同学通过这个接口用java来调用。这种部署方式就不需要跨平台了,可以让特征衍生,模型预测都在python环境里进行,不会出现pmml的精度偏差和文件加载速度的问题,在预测效率和结果一致性上都有保障。

    3.风控决策平台或算法平台部署,例如蚂蚁金服的PAI机器学习平台,可通过workflow的方式自助式搭建模型,实现快速部署。并且可以跟阿里云的Dataworks实现无缝打通,建模同学可完成数据处理,特征开发,模型训练,到部署上线的一站式建模,降低了开发和业务部门的沟通成本和开发资源。另外有些公司可通过外购或自己研发一套决策平台,在决策平台上可实现LR评分卡这种简单模型的部署。
    在这里插入图片描述
    以上3种部署方法我们更倾向于推荐创建API接口这种方式,它实现了线下开发和线上部署都在同一套环境中进行,相当于一整套从数据处理到模型预测的外部服务,在可扩展性,灵活性,数据校验一致性,稳定性等方面都比较好。
    剩余部分Part 3与Part 4的部分,主要包括的还有特征跟模型的一致性校验问题以及实操部分,实操部分为模型特征的上线部署监控及使用csv格式的文件实现pmml文件转换等内容。

    Part 3.特征和模型的一致性校验
    一.模型正式启用前的一致性校验
    当特征和模型部署完成后,需要做特征和模型线下结果和线上结果的一致性校验,上线前先用一批离线测试样本校验,校验没有问题后模型上线进行空跑,等空跑一段时间积累了线上样本,再用线上的样本做一次校验,校验两次都没问题模型才能正式启用。对于校验一致性的维度,我们主要关注这三个:数据层,特征层,模型层。
    1)数据层:XXXX
    2)特征层:XXXX
    3)模型层:XXXX

    二.上线后的监控和校验

    线上环境会发生各种异常问题,如数据源API接口调用失败,入模变量误操作,三方数据源出问题等,为了保证及时发现线上问题,我们还需要采取一些监控手段。
    XXX

    Part 4.实操–pmml文件转换和一致性校验
    一.PMML文件的转换
    二.特征和模型分的一致性校验
    XXX
    在这里插入图片描述
    在这里插入图片描述
    关于本次文章更详细的内容,欢迎大家到知识星球中查看:
    在这里插入图片描述
    另外关于本文进一步的实操内容,更有相关的数据集提供给大家练习,详细的数据可以到星球进行下载学习:
    在这里插入图片描述

    ~原创文章

    end

    展开全文
  • 互联网金融风控模型大全

    万次阅读 2019-07-02 17:33:18
    目前市面主流的风控模型 1、互联网金融前10名排行榜(数据截止日期2017-09-12) 互联网金融公司排名分别是蚂蚁金服、陆金所、京东金融、苏宁金融、百度金融、腾讯理财通、宜信、钱大掌柜、万达金融和网易理财。 1.1 ...

    一、市场调研
    目前市面主流的风控模型
    1、互联网金融前10名排行榜(数据截止日期2017-09-12)
    互联网金融公司排名分别是蚂蚁金服、陆金所、京东金融、苏宁金融、百度金融、腾讯理财通、宜信、钱大掌柜、万达金融和网易理财。
    1.1 蚂蚁金服
    1.1.1 大数据技术

    对接第三方征信公司芝麻信用分,通过用户信用历史、行为偏好、履约能力、身份特质、人脉关系五个维度对海量数据行综合的处理评估,同时也给予阿里电商交易和蚂蚁金服互联网金融交易数据,对接公安系统和第三方数据公司建立联系。(这块就是用户画像的作用,投资人画像,融资企业/个人 画像,这块的内容比较复杂。后面一定会展开分析,风险定价,推荐系统全部靠它了)
    1.1.2 人脸识别技术

    人脸识别技术核心算法分别是活体检测算法、图像脱敏算法以及人脸比对算法,国际公开人脸数据库 LFW 上,人脸识别算法准确率(99%)。(像这块的技术已经很成熟有百度都已经推出成型产品,可以通过人脸识别对融资企业/法人进行风险验证,是否存在风险欺诈,多头借贷等嫌疑)
    1.1.3 云计算技术
    是一个开放的云平台,它助力金融创新、助力金融机构的IT架构实现升级,去构建更加稳健安全、低成本、敏捷创新的金融级应用。(其实就高可用,可靠性等)
    1.1.4 风控技术
    历史交易数据进行个性化的验证,提高账户安全性。80%左右的风险事件在智能风控环节就能解决。除了事后审核,事前预防、事中监控也非常重要——事前,将账户的风险分级,不同账户对应不同风险等级;事中,对新上线的产品进行风险评审以及监控策略方案评审。(解决80%的问题因此这块才是真正的核心。贷前,贷中,贷后等方方面面的监控,贷前最为重要,如何去检测,抓取哪些数据,与哪些第三方平台合作)
    1.1.5 人工智能技术
    蚂蚁金服通过大数据挖掘和语义分析技术来实现问题的自动判断和预测。可以识别到用户的身份信息,总结在大的用户层面大家可能都会遇到的问题,100%的自动语音识别。智能质检能力与智能赔付能力,具备了品质的判断能力以及情感判断能力。(总结:公司 PC 的人工语言不完善,很多关键字无法识别。这块应该跟后台没有交互,数据都是写死。移动端也可以考虑在标的详情页介入 draglayout 控件进行智能语音服务,解答用户疑惑。技术核心应该是在数据挖掘,语义分析技术等方式)
    1.2 陆金所风控调研
    1.2.1 七步风控体系

    1、风险政策制度框架体系:所有交易对手和产品引入都制定了明晰的风险政策指引,所有业务必须在制度框架内运行。(说白了就是自己风控业务流程,对于投资人者以及融资用户进行风险等级划分)
    2、信用评级:交易对手和产品进行主体评级及债项评级。(对于投资人者、融资用户、产品进行风险等级划分)
    3、信息披露:针对每一个不同的产品,将其内部评级、底层资产、主要风险、还款来源、保障措施。(就目前风险披露数据只是按照国家要求进行风险披露,但是并没有标地产品进行风险披露,融资企业进行风险披露,这个披露系统可以做成风险评估报告,后期也可以利用企业供应链关系库一定会用到(但是这部分数据都是针对上市而言,数据不全;))
    4、投后预警监控:所有在售资产至少每三个月进行一次检视。(对于融资周期过长的企业可以每三个月进行企业经营状况的上报,重点在于资金用途,回款方式以及周期;如果我们企业够强大的话,可以利用大数据征信对于那些未按时回款融资企业用户的企业进入黑名单系统)
    5、风险管理系统:陆金所的风险管理系统覆盖全产品线、整个产品生命周期,实现风控的标准化、智能化、模型化,大幅提升陆金所风险管理工作的效率和效果。(这些东西都太虚了)
    6、风险评价体系:同的风险程度给予业务部门不同的业绩评价。
    7、资产、资金的精准匹配:投资者进行风险分类,产品与投资者风险适配系统,确保投资者都能买到适合其投资风格与风险偏好的产品。(个人认为这个才是风控的意义,还有我们平台本身存在的价值;具体的实现的方式,利用画像技术对于投资用户,融资用户,标的产品进行风险等级划分,通过数据挖掘进行实时推荐)
    小结

    风险评级分为三部分:投资人风险等级分类,融资企业信息等级分类,标的产品等级划分。

    投资人等级划分:可以参考以往投资标的的利率,投资金额,投资人的站岗资金,投资人的提现金额,也可以通过投资人基本个人信息,例如移动设备Android 或 IOS,年龄,居住地,职业,评判投资人也可以调用第三方平台去综合判断投资的经济状况等方面维度

    融资企业等级划分:企业所在行业的整体现状,国家政策是否扶持,企业的纳税证明,银行流水,公司规模,注册资本等维度

    标的产品 :项目所属行业,项目的整体周期,项目成本,利润率,项目的合作企业,项目合同,发票等内容等维度
    投资用户与产品匹配度
    根据风险评级系统去高度匹配融资用户,产品标的的内容信息。这部分用到的应该是数据挖掘,推荐系统。根据用户以往投资标的金额,利率进行离线推荐,也可以根据用户的点击流日志分析去进行实时推荐,在某个标的详情页的停留时间,标的的点击次数信息。
    1.3 京东金融风控调研
    1.3.1 用户支付瞬间需要做的事情

    如判断用户的设备信息、登录行为、访问特征、信用状况、商品信息、商家特征、配送区域、银行卡状态等。如建立信用、反欺诈、伪冒交易等一系列模型,其中多达近百项的模型需实时计算。这样庞大的运算量在一秒内,甚至几十毫秒内完成,不是易事。 (感觉这些内容任何一点都够我研究一段时间的)
    1.3.2 风控的灵魂是数据,所有决策都以数据为驱动

    1、业务系统产生的数据和点击流作为主要挖掘的素材来源;但是随着时间推移,恶意用户可以模仿真实用户。因此才会用设备指纹识别,生物探针,语音识别,人脸识别等。

    2、风控模型

    原始层数据: 由于原始数据存在杂乱无章的现象,此处使用各种颜色来示意

    数据原子化: 数据原子化是经过整理后,把数据按业务归属分类,形成最原子的类别,比如账户,资金,投资,消费等

    数据抽象层: 按风控关注的业务做数据整合,这层是最贴近业务的。每一块代表一类业务,一个原子数据类是可以被放入多个抽象数据块里的

    数据模型层: 对分析场景使用的,基本就是一个数据模型块对应一个分析场景。

    3、机器学习在京东金融的天盾风控系统应用

    根据经验,在算法的选择上尽可能的多做选择,对比模型的性能择优选取。另外,对样本库做好治理工作,可使用随机抽样和使用聚类把样本数据分层抽取。这些工作是建模人员在大数据环境中也就是离线做的,那么,怎么把训练的模型应用到线上做实时呢,下图是架构:

    京东金融目前正在开发机器学习平台,让懂机器学习的人就可以使用机器学习做想的事情,当前懂机器学习的人不在少数,但真正使用机器学习做具体事情不多,故此平台不但满足内部建模训练、发布等,还可对外输出。
    数据风控还有很长的路要走,如量化投资风险评估与运营也属风控范畴,风控也可和推荐领域相结合。如数据会有阶段性差异,质量会随时间推移,慢慢发生变化,可能花费很大精力产出的预测产品会失效,调整代价难易不可估。如不同场景准确度和覆盖度都是不同的,尺度如何把握。如怎样能降低统计分析学和分布式计算相结合的成本等等。
    总之,互联网金融风控核心还是服务客户,提升产品价值,最大程度的做到差异化的防范,智能化是风控的发展方向,京东金融从开始就致力于打造智能化的风险管控解决方案。(机器学习部分了解)

    2、第三方风控产品以及服务(数据截止日期2018-01-12)
    20强榜单分为三个梯队,三个梯队覆盖的放贷机构数量依次递减,大致比例为10:3:1。

    第一梯队(5家):放贷类公司使用最集中的征信机构,分别是上海资信、同盾科技、芝麻信用、鹏元征信和百融金服。

    第二梯队(8家):FICO、聚信立、致诚信用、EXPERIAN、安融征信、考拉征信、前海征信、维氏盾征信。

    第三梯队(7家):GEO集奥聚合、白骑士、华道征信、立木征信、算话征信、银联智策、正信用。

    前海征信可以获取到个人用户的公积金信息。芝麻信用目前是最优秀的征信公司,当中很多公司有自己渠道去获取用户的信息 。

    3、国家政策法规
    1、 个人单平台借贷余额不能过20万
    2、 个人全部平台借贷余额不能过100万
    3、 企业法人单平台借贷不能过100万
    4、 企业全平台不能过500万

    从政策层面上来p2p服务的是属于中小企业,p2p行业不利。因此风控显的更加尤为重要。通过风控模型获取优质的资产。

    二、风控模型
    风控模型应该是从两个角度去考虑,第一个角度是资产端风控策略,第二个角度是资金端风控策略。考虑主要出发点应该是从贷前、袋中、贷后三个方向去考虑,结合传统业务的风控模型和互联用户的行为数据。针对资金,资产进行风险等级划分,防欺诈系统、袋中的舆情监控、贷后的权重叠加。

    1.1 欺诈用户的识别
    1.1.1、防欺诈风控系统,下面我列举的参考维度指标;针对黑色产业业务梳理
    根据现有数据统计分析移动端登录用户占比与 PC 用户占比为8:2划分,因此移动的防欺诈系统为主要参考因数,
    1、根据以往的业务系统数据可以建立黑名单、白名单。
    白名单: 可以通过建立数据模型已经数据挖掘,机器学习相关算法进行优质用户的挖掘。
    黑名单: 黑名单企业可以针对那些逾期、破产企业(法人作为黑名单)、通过手机号码、imei作为用户判断标识,调用第三放征信公司去进行鉴别。
    2、对移动端用户进行实时监测,获取用经纬作为、获取用户重力感应数据、mac 地址、ip、移动设备注册时长等数据判断用户是否存在恶意欺诈,恶意注册
    1.2 可信度分析
    1.2.1、风险等级划分
    风险等级划分,分为三种类型、投入用户风险承受能力等级划分、融资企业以及个人用户的等级划分、融资项目标的等级划分
    1、投资用户等级划分:可以参考投资年龄、居住地、职业、银行流水、固定资产、收入、学历等角度去划分
    2、融资企业等级划分:企业所在行业、国家政策、企业现金流、企业注册资本、管理层背景、资产负债率、法人个人信息、企业纳税证明、公司人员数量等维度去
    3、标的信息:标的项目类型、回款周期、合作企业、回款方式、融资金额
    1.3 贷后预警
    对于回款周期比较长的项目,可以至少三个做个回访、让融资企业按时提供目前经营现状、融资标的是否按时回款。根据贷后的状态进行预警、等级划分
    四、技术实现
    用户画像、人脸识别、推荐系统、智能语音、数据挖掘、风控模型。
    风控系统业务流程

    访用户欺诈系统

    风险评估等级划分系统

    用户画像

    用户点击流日志分析系统

    推荐系统

    风险预警系统

    风险定价系统

    五、产品与服务
    参考科法智能提供的服务与产品,将案例信息换位标的信息、将诉讼公司换位融资企业。对照数据就可以解决提供类似的服务。下面是具体相关部分信息。

    企业信用信息查询

    包括企业基本信息、经营状态、法人以及高管信息披露
    对于一些重要信息提供收费服务、本平台高等级投资用户可以免费查看,比如企业的目前经验状况、本平台内部信用等级、所在行业排名等。
    企业融资项目标的信息查询
    结合本平台以往类似融资项目信息历史数据进行信息关联、结构归类、风险解读、精准检索。出具融资项目风险测评报告
    对于优质资产本平台进行充分的信息披露

    科法智能逻辑思维导图
    在这里插入图片描述
    转载地址:https://blog.csdn.net/tan2810/article/details/88188033

    展开全文
  • 论文复现-金融风控模型案例

    千次阅读 2022-05-06 12:43:33
    这时,风控诞生,风控就像一把紧箍咒,让金融资本更好为社会服务。1.机器学习论文高通过率论文,专利对于同学发展不言而喻。论文不通过,没法毕业,没法毕业就拿不到毕业证,工作也没法找。发表论文数量和质量有利于...
  • 一个优秀的模型上线报告以及一个优秀的上线后模型监控报表,在我们日常风控建模...以下内容均基于自己浅薄的经历提炼的,如有纰漏,欢迎指正或补充哦,欢迎交流~00 Index01 聊聊为什么要做这件事02 标配的风控模型...
  • 风控模型评估

    2020-03-25 19:38:45
    之前写过一篇模型评估的指标,偏于理论,详情见风控模型指标详解。 1.AUC   AUC值指的是ROC曲线下面积大小,该值能够量化反映基于ROC曲线衡量的模型性能。所以,需要了解ROC曲线的绘制方法。   首先,需要了解...
  • 风控模型的基础知识

    千次阅读 2021-01-12 10:08:33
    风控模型根据设定的y变量与可获得的x变量不同,大致可以分为三类:即A卡,B卡,C卡。今天就让我们聊聊三者的区别。 1、A卡(Application score card) A卡即申请评分模型,此类风控模型的目的在于预测申请时点(申请...
  • 互金平台、银行、小贷公司用户风险量化评分模型!互金平台、银行、小贷公司用户风险量化评分模型
  • 一文看懂风控模型所有

    千次阅读 2020-06-14 10:00:00
    风控模型,广义上代表任何运用数据构建的风险管理模式,狭义上讲,是运用统计、机器学习甚至深度学习等算法开发的数学模型。作者希望通过此长文,为FAL读者朋友们一次性解释狭义风控模型体系。 全文总计2.2W字,30...
  • 风控模型面试问题

    千次阅读 2020-04-20 22:05:19
    Q:互联网金融场景下的的风控模型种类? 获客阶段:用户响应模型,风险预筛选模型。 授信阶段:申请评分模型,反欺诈模型,风险定价模型,收益评分模型。 贷后阶段:行为评分模型,交易欺诈模型,客户流失模型。 ...
  • 风控模型指标详解

    千次阅读 2019-12-04 19:01:54
    通过保证入模变量稳定性来进行变量监控,保证模型分数稳定性来进行模型监控。 根据建模经验,给出一些建议: 实际评估需要分不同粒度:时间粒度(按月、按样本集)、订单层次(放贷层、申请层)、人群(若没有...
  • Python银行风控模型的建立

    千次阅读 2022-03-30 09:39:22
    文章目录 银行数据截图 模型一:神经网络 模型二:支持向量机(SVM) 模型三:决策树 总结 附件下载 银行数据截图 模型一:神经网络 import pandas as pd import numpy as np #导入划分数据集函数 from sklearn.model_...
  • 一、当前风控模式现状 近年来,信用风险管理发展呈现出数据化、模型化、系统化、自动化和智能化的特点。传统的人工专家经验正逐步被模型与算法替代。 因此,科技较为领先的金融服务公司会选择采用模型方式完成对借款...
  • 银行风控模型

    千次阅读 2019-06-06 20:54:49
    风控催生原因 对于银行来说,现今互联网贷款和信用卡办理面临的主要难题是数据和风控。站在银行或金融机构角度,自然而然是想获得更多的信息和数据,但是在收集数据这方面又是比较无力的。加上当下的发展趋势,消费...
  • 【管理】XX银行风控模型建设方案.docx【管理】XX银行风控模型建设方案.docx【管理】XX银行风控模型建设方案.docx【管理】XX银行风控模型建设方案.docx【管理】XX银行风控模型建设方案.docx【管理】XX银行风控模型...
  • 【管理】XX银行风控模型建设方案.pdf【管理】XX银行风控模型建设方案.pdf【管理】XX银行风控模型建设方案.pdf【管理】XX银行风控模型建设方案.pdf【管理】XX银行风控模型建设方案.pdf【管理】XX银行风控模型建设方案...
  • 风控模型开发全流程

    2020-09-13 07:30:00
    本篇我们对开发金融风控模型做一个总结,先给出流程图:建立模型,当然需要数据,金融风控的数据一般来源于内部与外部,内部是在公司业务系统内已有的,外部主要靠采购三方数据扩展。三方数据的采集标...
  • Python银行风控模型的建立 一、用神经网络Sequential(序贯模型)搭建 1、背景: 700个数据,前8列作为x,最后一列为y,建立银行风控模型。(数据量不大) 二分类问题,损失函数用’binary_crossentropy’,指标也用...
  • 当时谈到了小微风控的两类模型:营收预估模型与逾期预测模型,今天的内容会在这个基础上再介绍另外两大类模型,即欺诈预测模型与提款率预测模型,加总起来在小微相关模型上就有四大类常见模型。 并且在目前使用的...
  • 本次分享主要想和大家一起探讨下,在金融风控场景下,如何通过数据对齐模型和业务目标,哪些数据、方法可以应用于风控模型,通过哪些指标可以正确地评估模型效果,以及最终如何用数据科学解释模型结果。今天的介绍会...
  • 作者 |祝世虎来源 | 现代金融风险管理头图 |CSDN下载自视觉中国2011年,美联储发布了《模型风险管理监督指南(SR11-7)》(《SRLetter 11-7: Supervi...
  • 网贷风控体系之-风控模型 大数据风控模型主要分为两类: **反欺诈模型** 交叉验证 聚类分析 黑灰名单 **二元好坏模型** 准入阶段,授信额度期限利率模型:评分卡模型,LR,XGBoost 贷中阶段:风险变化评估,风险预警...
  • 文档核心内容:1.大数据挖掘:模型+算法;2.数据挖掘工作流程 3.数据创建 4.数据模型创建 5.评分卡模型创建 6.金融行业信用体系
  • 资源包含文件:设计报告word+源码及数据 数据离群值判定,清洗 利用XGboost,按特征重要性系统衍生新特征,剥离...bagging lightGBM模型 详细介绍参考:https://biyezuopin.blog.csdn.net/article/details/125367950
  • 大数据风控模型是什么?有哪些?

    千次阅读 2019-09-10 10:51:25
    摘要:在互联网金融行业,不少人可能这样觉得:认为只要数据够“大”,就能有最牛逼的风控体系和行业最低的坏账率。 在互联网金融行业,不少人可能这样觉得:认为只要数据够“大”,就能有最牛逼的风控体系和行业...
  • 一、市场调研目前市面主流的风控模型1、互联网金融前10名排行榜(数据截止日期2017-09-12)互联网金融公司排名分别是蚂蚁金服、陆金所、京东金融、苏宁金融、百度金融、腾讯理财通、宜信、钱大掌柜、万达金融和网易...
  • 风控模型——评分卡模型(一) 1 评分卡模型特点 评分卡模型的特点有[1]: (1)可解释性,就像我们定义考试100分而60分时及格分。 (2)适用性,可随时根据业务场景调整评分卡分数,以此实现我们政策调整。 (3)...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,382
精华内容 6,552
关键字:

风控模型