7e9c20f4f00eb301ce1bf7f1f4b9a32c
大数据机器学习风控项目

1. 项目背景

在互联网金融迅猛发展的背景下,风险控制问题已然成为行业焦点,基于大数据的风控模型正在成为互联网金融领域的热门战场,在此背景下,我们以一个小的大数据算法风控项目为切入点,进行大数据和机器学习相关技术的介绍

2. 此风控项目中大数据计算部分和模型部分的交互说明


对用户历史数据进行处理,生成模型训练所需格式的数据(样本数据),使用样本数据训练出来模型,当有新的用户数据过来的时候,对用户数据进行处理,组织成模型需要的格式化数据(特征向量),输入到模型中,产出所需的结果(预测未来),大数据技术和建模技术交互如下:

  • 大数据计算人员使用mapreduce,spark等组件帮助建模人员进行数据预处理,从采集到的各种用户数据中产出样本数据和测试数据
  • 建模人员使用样本数据和测试数据进行模型训练,模型评估,输出最终模型,使用PMML集成到业务系统中
  • 大数据计算人员使用spark streaming流式计算组件,近实时的计算出用户的特征向量推送给业务系统,业务系统获取到特征向量后调用模型,产出模型评分 ## 3. 项目详细流程介绍如图 图片原链接,禁止盗用 下面对本项目流程进行简要说明,此项目只是举例(是简化后的项目,但足以让大家对此流程有个大致概念)
  • 用户在客户端授权合法获取其相关征信或者通话记录等数据
  • 服务器端接收请求,调用第三方数据接口获取用户数据
  • 数据返回到服务器端
  • 服务器端接收到数据后存储到文件服务器上
  • 文件存储成功后,打印一条日志(包含日志目录,客户号等)到日志服务器链接提示
  • 日志服务器上装有logstash(数据采集组件)的agent,此agent监控日志目录,当有日志记录新增的时候,触发事件,把此日志数据同步到kafka的某个topic(比如source topic)中
  • 使用Java操作kafka的api获取kafka source topic中的日志数据,从日志数据中获取文件目录,拉取并处理文件中的数据,写入到另外一个kafka topic(kafka userdata topic)中
  • 使用spark streaming(流式计算组件)流式的消费kafka userdata topic中的数据
  • 在spark streaming中对数据进行相关处理计算,计算出特征项(作为模型的输入特征向量),发送给服务器用户信用评分接口
  • 服务器端用户评分接口接收到用户特征向量后,使用PMML调用模型(使用第四部分预先训练好的模型),计算出用户的模型分
  • 把此模型分存入到mysql中
  • 当客户申请查看额度,或者贷款的时候从mysql中读取用户的模型分,根据模型分进行额度分级,返回相应的额度或者贷款审核结果返回给用户 ## 4. 项目中的模型训练过程补充介绍 图片原链接,禁止盗图
    下面对本部分简单介绍
  • 数据处理部分:用户相关维度或衍生维度信息散落在各个系统,涉及传统关系型数据库、分布式存储平台,第一层应用常用ETL工具汇总用户相关信息
  • 特征工程部分:风控模型涉及用户维度众多,本项目主要利用业务专家经验结合Lasso、RF、Logist算法半自动选择特征,后面模型开发文章会详细介绍这方面知识
  • 模型开发部分:项目主要应用集成学习算法xgboost,实际项目过程中也做了LR、RF多模型融合,从部署成本和最后效果看最后选择xgboost,项目涉及的算法以及如何做融合后面系列文章会详细介绍,也包括模型选择和评估 ## 5. 下文预告 对项目中出现的技术组件进行拆分介绍,从概念,原理,到使用,优化 对项目中出现的算法进行拆分介绍,从概念,原理,到使用,优化 外加闲扯淡 ## 6. 如有问题,欢迎指正,周六日得空会进行查看回复,邮箱如下: 13685858411@139.com 15988101848@139.com 问题交流群:737184824 谢谢大家阅读,欢迎指正 下一篇 :数据采集组件之 logstash
© 著作权归作者所有
这个作品真棒,我要支持一下!
机器学习、深度学习、大数据、数据科学爱好者集结地,分享 在各自领域里的工程实践经验和应用 让我们每天进步一点点...
0条评论
top Created with Sketch.