智能风控决策引擎系统架构设计与开发实践

Posted 技术琐话

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了智能风控决策引擎系统架构设计与开发实践相关的知识,希望对你有一定的参考价值。

I.内容提要

前几天贺鹏总“技术琐话”直播间进行分享,本文根据分享内容整理出来。内容主要包括:
  • 风控决策引擎系统从架构设计到开发实践
  • 特征引擎系统及实时计算引擎
  • 模型引擎系统及智能风控引擎
  • 大数据风控-用数据驱动的风控全流程系统构建


II.风控决策引擎介绍
Q: 互金领域的风险有哪些?

A:欺诈风险 、 信用风险、合规风险(监管要求)

Q:如何对抗风险?

A:通过大数据来构建规则和模型进行风险控制和风险预警

Q:业务规则和模型策略 如何落地?

A:通过决策引擎承载规则和模型的自动化实施和部署


智能风控决策引擎系统架构设计与开发实践


风控决策引擎,支持规则和模型的配置、管理、执行,支持通过专家经验和大数据机器学习进行风险控制。如图所示,风控决策引擎作为风控核心支撑组件,对风控管控起到重要的决策作用。

决策引擎作为系统,那么系统设计的功能目标和性能目标都有哪些?

智能风控决策引擎系统架构设计与开发实践
II.风控决策引擎开发设计


1.从一条规则开始抽象建模


智能风控决策引擎系统架构设计与开发实践
决策引擎就是 将规则配置与程序代码分离 ,那么首先就要 将规则配置抽象化
智能风控决策引擎系统架构设计与开发实践

这里依赖于基础运算符操作。

智能风控决策引擎系统架构设计与开发实践

根据特征类型不同,有不同的操作符。        

智能风控决策引擎系统架构设计与开发实践


为了更好地系统易用性,需要进一步实现可视化规则配置后台。可视化后台,使用关系型数据库进行数据管理,然后在“发布”时统一转换为自定义特定领域语言 DSL


智能风控决策引擎系统架构设计与开发实践
此代码详细实现参阅:

2.规则集

多条规则  集合在一起  组成一个规则集。
智能风控决策引擎系统架构设计与开发实践
规则集就是将所有规则打包一起执行,它的执行结果 =  Max ( Sort ( 规则执行结果 优先级 ))
智能风控决策引擎系统架构设计与开发实践


3.决策树

树形结构来展示和构建规则


智能风控决策引擎系统架构设计与开发实践

决策树:可以拆解为规则执行执行结果的组合决策

智能风控决策引擎系统架构设计与开发实践
智能风控决策引擎系统架构设计与开发实践


4.决策矩阵

决策矩阵:包含 横向和纵向两个维度 的特征,通过两个维度特征的不同限制,交叉决策其结果。

智能风控决策引擎系统架构设计与开发实践

此代码详细实现参阅:

5.DSL 抽象总结

智能风控决策引擎系统架构设计与开发实践

6.决策流

决策流:对不同的规则和决策进行 流程编排 ,类似工作流。
智能风控决策引擎系统架构设计与开发实践
智能风控决策引擎系统架构设计与开发实践
决策流数据结构选型:
智能风控决策引擎系统架构设计与开发实践
智能风控决策引擎系统架构设计与开发实践


Pipeline 模型:管道模型。用链式串联不同节点组件,组成直线工作流。


智能风控决策引擎系统架构设计与开发实践


Rete 模型:构建成网络。区分alpha网络和beta网络。

智能风控决策引擎系统架构设计与开发实践
此代码详细实现参阅:

7.总结决策引擎架构设计


智能风控决策引擎系统架构设计与开发实践


III.风控特征/指标处理

决策引擎的决策离不开特征的支持,特征又源自业务数据或业务日志衍生,所以特征加工和衍生也是风控开发重要的一环。先看看特征长什么样?

智能风控决策引擎系统架构设计与开发实践


保障决策引擎的 可复用性 ,可更好的支持不同的业务场景和业务环节,那么与业务耦合较重的特征,就需要解耦拆分出来,于是有了 特征引擎
智能风控决策引擎系统架构设计与开发实践
智能风控决策引擎系统架构设计与开发实践


特征引擎,也有叫变量平台,为了保障风控决策的高效性和实时性,特征获取就必须足够高效,那么特征加工计算分为读时计算写时计算,写时计算也叫预计算。对一些复杂聚合类特征,还有融合计算,使用 Lambda 架构将聚合数据和明细数据再做计算。

保障系统高性能

  • 数据并发调用,并发计算
  • 增加数据缓存,特征(计算结果)缓存

  • 对计算处理耗时长的特征做预计算

  • 融合计算:历史聚合数据+最新明细数据进行融合计算

  • 异步化 ,分离实时和准实时


IV.引入智能环节:模型

规则在准入和反欺诈识别上有更好的应用。而模型可以通过更多维度特征的评估,用于识别团伙欺诈,识别信用风控。
模型工作的基本前提:

  • 具有相同特征的数据具有相同的结果;

  • 历史的数据与未来的数据遵循同样的规律。


常用的建模方法:


  • 传统建模方法:评分卡建模

  • 基于大数据建模方法:机器学习、深度学习


智能风控决策引擎系统架构设计与开发实践
关于评分卡建模详细实现参阅:


智能风控决策引擎系统架构设计与开发实践


关于机器学习建模详细实现参阅:



V.可靠性保障


智能风控决策引擎系统架构设计与开发实践


  • 做好监控和报警

  • 系统灰度陪跑,一致性比对

  • 新模型上线,先陪跑验证后进行决策

  • 策略发布,在决策流配置挑战者小流量分支,灰度验证

  • 线上数据引流测试

  • 数据过程快照和结果快照,通过模型平台回溯

  • 熔断限流,并设置默认值兜底

  • 制定 SLA 

  • ...

详细实现参阅:

VI.数据驱动智能风控系统架构全景图


智能风控决策引擎系统架构设计与开发实践

VII.QA环节

Q:开发特征就是 flink sql 吗?

A:flink sql 对聚合类指标特征能较好实现。除此外,还有代码计算特征,融合计算特征等不同方式。

Q:规则引擎结果怎么回溯?

A:保存决策引擎计算时所有数据快照,特征,以及决策结果,通过回溯平台回溯。

Q:怎么同时支持反欺诈场景和现金贷

A:决策引擎是一种通用能力,通过与不同的规则和决策配置,可以支持不同的决策类型;决策引擎与业务之间通过业务中间件系统来进行语义转换。

Q:规则引擎用的哪家的

A:自研的,golang 演示版 通过 DSL 抽象 + govaluate 计算实现,java 版本还可以通过 groovy、drools 或 qlexpress 等开源实现。

Q:特征计算时三方数据怎么处理

A:简单的通过自动化配置解析结果字段,复杂的需要对结果进行二次加工,通过代码实现。在特征引擎完成数据处理。

Q:先跑特征还是先跑规则

A:不同的业务场景有不同的实现方式,决策引擎需要同时兼容两种方式。对一些简单业务场景,可以将特征都加工好后一起送进决策引擎,这样可以更高效的出结果。而复杂决策流,可能会先配置内部特征规则,如黑名单类,触发就不再继续执行,通过内部规则后可发起调用三方收费数据,加工特征,再进行规则决策。

Q:模型特征和规则策略特征来自同一特征引擎吗

A:是的。有时特征和模型用的特征是一样的。不过一般情况下模型用特征结构更复杂,维度更多,所以一般特征引擎也会有类型区分和加工方式区分。

Q:人行征信数据怎么支持计算出不同特征?

A:人行征信数据,需要先进行解析,有时是 pdf 文本,这部分需要通过代码来实现,然后将解析好的特征存储到高性能缓存中。挖掘出的特征可配置到决策引擎中,决策引擎执行时依赖人行的特征,通过特征引擎获取高性能缓存中的特征。

推荐贺总公众号:决策引擎代码请关注公众号  技术岁月 ,发送关键字  决策引擎  获取。感谢您的阅读,欢迎大家点赞分享。



 往期推荐 







技术琐话 



以分布式设计、架构、体系思想为基础,兼论研发相关的点点滴滴,不限于代码、质量体系和研发管理。本号由坐馆老司机技术团队维护。


以上是关于智能风控决策引擎系统架构设计与开发实践的主要内容,如果未能解决你的问题,请参考以下文章

开课通知 | 高级系统架构设计全程演练与最佳实践

6.支付平台架构:业务规划设计与实现 --- 安全与风控

饿了么:交易系统重构,架构设计与实践

贷前风控策略审批及决策引擎——策略审批架构搭建

同盾科技 x TiDB丨实时数据架构为风控智能决策保驾护航

同盾科技 x TiDB丨实时数据架构为风控智能决策保驾护航