近年来,电信网络诈骗给人民财产安全和社会稳定带来了巨大的隐患,防范形式越发严峻,仅2023年,国家反诈中心下发的资金预警指令多达940余万条,紧急止付3288亿元。2016年起,相关部门陆续出台了一系列法律法规,坚决遏制电信网络诈骗的高发蔓延势头。
基于以上背景,贵州银行于2020年8月启动基于动态特征与全场景的高性能反欺诈平台建设,并于2022年3月完成包含统一数据接入、策略配置、指标配置、函数配置等功能投产;2023年4月完成与反洗钱、运管平台等系统对接,并引入关联网络。该平台以低代码、高性能、高可靠、安全性为设计要素,通过对接公安厅、柜面、客服等,实现警银联动,构建全场景的反欺诈业务闭环。
解决的主要问题及创新点
1. 解决的问题
反电信网络诈骗面临诸多挑战:一是欺诈手段变化快、技术对抗激烈,银行防控成本高;二是专业团伙作案手段高明,传统反诈手段难以识别;三是传统反诈手段偏事后,缺少实时防控手段;四是犯罪分子将诈骗行为隐藏在海量正常行为中,诈骗行为特征弱;五是欺诈手段变化快,模型和策略的优化迭代速度跟不上欺诈手段变化;六是采用一刀切的管控手段,会引起大量客户投诉;七是总行、分行、支行,以及各部门、各系统之间的联动性不强,难以形成联合防控形势;八是缺少统一的防控平台,无法形成全面的风险视图。
2. 主要创新点
(1)利用大数据、AI、知识图谱挖掘潜在特征。根据客户、账户数据和与之交易关联的设备数据、流水数据等,分析出客户的设备、交易行为习惯等特征,构建客户、账户等特征宽表,借助已有的好坏样本数据,采用机器学习分类和聚类方法挖掘欺诈客户存在的潜在特征后,沉淀成规则供反欺诈系统使用。通过全行的交易数据,识别交易对手、设备、联系人等,将数据进行关联,构建出点和边的关系,形成图谱网络,应用一定的算法筛选诈骗团伙,与反欺诈系统联动,及时控制风险团伙交易。
(2)设计实现了高效的动态特征数据存储模型。通过将数据指标拆分为计算维度(主属性)、计算字段、时间分片三个维度,快速构建指标的三维存储结构。计算维度一般与客户相关,如客户账号、客户IP、客户手机号等。计算字段是根据计算方法需要计算的数据,如金额、时间等,时间分片按小时、按天、按周、按月等。通过多维度的数据存储模型,结合连续的时间分片,实现高效的指标数据存储模型。
(3)设计实现了基于滑动窗口的高性能动态特征计算引擎。考虑到Spark streaming和Flink分别为微批处理模式和分桶处理模式,没有一个完整的查询方案,无法满足风控的场景要求,自主设计了基于滑动窗口的计算机制。基于指标数据存储模型中的时间分区,在指标定义时固定计算窗口,基于Redis的高性能和时间序列技术,采用Redis原生支持的Lua脚本和有效的时间分片实现指标的高性能计算和查询。
(4)设计实现了高效的规则解析执行引擎。传统规则引擎需要将XML配置文件解析编译成字节码文件,如果规则过多,会造成大量占用方法区内存引起的性能问题。为解决上述问题,我行设计了基于原生函数实现的规则解析和执行引擎。通过将所有规则表达式拆解为变量和函数,对规则引擎进行了高度抽象,直接调用原生函数,摈弃了多余环节,避免多余资源消耗。规则策略不需经过代码预编译,对方法区内存的资源占用不会随规则策略数量增长而增长,从而实现规则的高效执行。
(5)设计实现了名单服务的多层级业务降级机制。反欺诈平台是基于规则引擎构建的,所有的判断决策都依赖于规则引擎执行策略,名单服务也依赖执行策略。为保证业务连续性,并保障基础安全,名单服务实现了两层高可用设计逻辑。一是在系统内部,设计实现了绕过规则引擎,直接通过API网关独立调用名单服务进行判断逻辑,确保名单服务持续可用。二是在核心系统设计实现了名单兜底机制。每日日终反欺诈平台的名单数据会推送到核心系统,核心系统自动入库。当反欺诈平台整体不可用时,打开核心系统的名单兜底开关,所有动账交易在执行时均能保证在名单中该拒则拒。
(6)设计实现了关键组件的多级容灾机制。针对ES、MongoDB、Redis等关键组件,除了借助金融云平台PaaS层提供的多副本和主从切换机制,在同城中心单独申请了资源对等的一套组件资源,在应用层实现组件探活,制定了严格的基础组件异常失败检测和集群切换集中仲裁判断,实现应用层的关键组件高可用。
(7)设计实现了服务的多中心多活机制。所有服务基于Docker部署,通过金融云平台和微服务平台,快速实现应用的扩缩容。除此之外,在数据中心之间,构建了跨中心应用网关,当本中心不可用时,能够借助交易的跨中心路由能力,将本中心业务请求转发到同城数据中心执行后返回,保障业务连续性。
(8)设计实现了策略实验室、灰度发布、冠军挑战等多种策略迭代机制。策略实验室支持策略的快速可视化验证,包括单笔交易、多笔交易验证,也支持线上实时数据和历史数据验证,选择过去一段时间的数据作用到新的策略上,快速验证策略效果。与传统意义的灰度发布有所不同,我行设计的灰度发布作用于新上线的策略规则上,若设置为灰度模式,则策略会产生命中情况和结果,但不会实质性对交易产生阻断、预警等,用于评估新上线策略的效果。
(9)建立了交易报文的自动映射机制,实现应用系统的快速接入。全行服务交易通过企业服务总线进行服务治理,企业服务总线直接将交易事件转发到反欺诈系统。在接口治理下,企业服务总线可以将原始报文转换为反欺诈需要的报文,通过字段配置实现报文自动映射和交易系统的快速接入。
(10)实现了全流程的可视化防控策略配置。实现全流程策略的可视化配置和敏捷迭代支持。通过“拖拉拽”的方式完成复杂的策略配置工作,实现策略从数据对接、数据加工、数据配置、决策结果的全流程向导式配置和规范化管理。同时,通过策略的灰度发布、冠军挑战、策略实验室等模式,完成新策略的测试、验证和发布,为策略迭代提供了敏捷支持。
(11)实现了全路径交易的回溯。交易链路全量记录,通过倒排索引技术,快速检索相关数据,实现全渠道的链路数据分析。全量筛选抽象设计策略与策略执行结果,数据结构上保持一致,记录具体的变量id、指标id、数据服务id,以及相关变量的具体值,通过大数据可视化技术,可视化还原模型执行情况,包括执行的策略,当时的变量值、指标值,名单是否命中,策略是否命中,命中后执行的动作,返回的风险等级和风险处置建议等回溯策略执行详情。
案例主要建设内容
本项目整体构建了事前、事中、事后的全场景防控体系(如图1所示)。事前,根据人工分析,部署开户准入策略,结合名单策略,实现开户前自动风险探测。事中,通过构建的事中交易防控策略和事中交易AI模型,结合名单策略,将传统专家规则和AI模型进行结合,筑好事中欺诈防火墙;同时,针对区域差异和模型衰减问题,针对性制定监控和训练策略。事后通过关联图谱和AI模型,构建账户风险预警、账户分类分级体系和反洗钱评级模型,风险客户或账户形成名单供反欺诈事前、事中防控。
系统功能层面,提供了低代码、高性能、高可靠、强安全等能力。一是在低代码层面,实现了从字段管理、字段映射、数据接入、指标定义、策略执行、全交易链路追踪的可视化。二是在高性能层面,从零设计了基于Redis的动态特征存储模型,并设计实现了基于滑动窗口的动态特征计算模型,高度抽象了一系列原生函数,避免使用Drools类似框架带来的性能开销。三是在高可靠方面,采用双中心双活架构部署,并对云平台的关键组件设计了应用层的容灾方案,对关键的名单服务做了多层级业务降级设计。四是在安全性方面,从防篡改、审计日志、权限管理等方面实现全系统的安全管理。
(1)充分利用机器学习和知识图谱技术,推动电信网络诈骗防范工作从事后向事前和事中转变。机器学习体系共分为四层,原始数据层、结构化数据层、特征挖掘层、业务模型层。在原始数据层,主要是将各个业务系统流转、公安下发、外部请求的数据无损耗地进行存储;在结构化数据层,主要进行原始数据Json解析、时间序列串联、根据业务需求串联系统数据等,这一层主要运用到的技术是HIVE、Spark等数据批处理引擎;在特征挖掘层,以结构化数据为基础,通过机器学习特征工程技术加业务经验等方法,将数据处理为适合输入模型的形式,这个部分所使用到的技术是独热编码、哑变量、词嵌入、数据交叉等,作为模型输入的特征,这个部分决定了模型效果的上限;在业务模型层,根据对业务的理解选取合适的算法,对特征x到标签y的映射关系进行建模,主要用到的技术是逻辑回归、集成树(包括Xgboost、Light GBM等)、关联网络、图卷积网络等。本系统中运用机器学习技术建立了账户风险评级模型、事中交易模型、开户评分模型、关联图谱、特征挖掘流程等。
(2)高效的动态特征数据存储模型设计实现。将数据指标拆分为计算维度(主属性)、计算字段、时间分片三个维度,快速构建指标的三维存储结构。以“近3个小时客户账号入账总金额”这个指标为例,时间范围为过去3个小时,计算精度按照小时分区,在指标存储时,每小时存储一个汇总的入账总金额,最终每一个立体块中,存储每个小时内单个账户的汇总入账金额,为后面的高性能计算提供支撑,如图2所示。
(3)基于滑动窗口的高性能动态特征计算引擎设计。基于时间窗口移动的动态特征数据快速处理技术,实现数据驱动结果动态更新,系统时钟驱动结果按时变化,时间窗口自动设置即刻计算,时间单位计算精度按需调整。采用增量计算方式实现普通统计、求和、求关联、求平均、历史指标、最大值、最小值、标准差、四阶中心距,频次排行、连续统计等算法。如图3所示,尾号101的卡号在T3时刻的近3小时交易总金额为700元,在T3时刻的近3小时交易总金额变化为800元,只需要基于滑动窗口前移1个小时计算即可。使用高性能分布式缓存,实现高可用、高性能、高可扩展性,设计多维数据存储结构,提升存储和检索效率。通过将数据指标拆分为时间维度、计算字段、计算维度、计算方法几个部分,快速实现计算指标的配置。已经定义配置了1113个实时指标,作用于多个反诈规则策略和反诈模型。
(4)高效的规则解析执行引擎设计。传统计算引擎使用XML配置存储规则信息,再通过规则引擎解析XML形成代码,导致系统运行指标随规则增加而逐渐下降,影响系统性能,如Drools引擎。我行反欺诈平台摈弃了传统的开源规则引擎,对规则执行结构进行了专项优化,摈弃了多余环节,实现了一系列原生函数,避免多余资源消耗。规则策略不需经过代码预编译,对内存等资源占用不会随规则策略数量增长而增长,从而实现规则的高效执行。以规则引擎为基础,扩展设计出规则关联的字段、函数、风险类型、指标、数据服务等可视化配置转换功能,并支持灰度模式、冠军挑战等能力,还创新提出策略实验室功能,做到在线验证。在此基础上可以使用人工分析特征,配置事中交易防控策略。
(5)应用层双活设计。我行数据中心分布在观山湖区和贵安新区,两中心应用采取双活模式,同时对外提供服务。反欺诈平台在我行观山湖数据中心和贵安数据中心采取双活部署,通过我行企业服务总线的边缘网关自动实现跨中心路由。关键组件方面,均使用金融云平台提供的PaaS能力,Redis采用五主五从设计,Kafka采用三副本机制,MongoDB采用多副本集群设计,ES采用三副本机制,TDSQL采用一主三从模式部署。上述主节点在观山湖,部分备节点在贵安。此外,在贵安数据中心有全套反欺诈数据库环境,平时为备份状态,在云平台提供的PaaS能力无法保障情况下,可快速切换到贵安数据库提供服务。
(6)关键组件的多级容灾设计。针对ES、MongoDB、Redis等关键组件,除了借助金融云平台PaaS层提供的容灾能力外,在反欺诈应用层面也做了容灾设计。在同城中心单独申请了资源对等的一套组件资源,在应用层实现组件探活,制定了严格的单节点失败条件和集群切换判断条件,实现应用的关键组件高可用(如图4所示)。
(7)基于名单服务的多层级业务降级设计。反欺诈平台是基于规则引擎构建的,所有的判断决策都依赖于规则引擎,名单服务也是如此。为保证名单服务的高可用,有两层高可用设计逻辑。一是在系统内部,设计实现了绕过规则引擎,直接通过API网关独立调用名单服务的判断逻辑,实现名单服务的高可用。二是在核心系统,设计实现了名单兜底机制。每日日终反欺诈平台的名单数据会推送到核心系统,核心系统自动入库。当反欺诈平台整体不可用时,打开核心系统的名单兜底开关,所有动账交易在执行时均能保证该拒则拒。
(8)全流程可视化防控策略配置和全路径交易追踪。系统从字段接入、指标定义到规则上线全部使用可视化配置实现,操作习惯以用户体验为核心,实现零成本使用。在交易回溯方面,支持查询系统的风控引擎风险识别日志,及时了解业务系统的风险情况和定位风险源头及数据回放,查看策略的执行结果,并支持通过各类查询条件组合进行筛选。支持可视化的策略优化功能,系统有策略实验室,可支持将配置的规则进行试验,包括线上实时数据、线上历史数据、自定义数据(多笔)和自定义(单笔),对规则正确性进行试验。系统策略的灰度模式可将一定比例的流量接入新规则,避免大多数客户因为新规则而受到影响。系统策略可设定多个冠军挑战者模式策略,对比多个策略的执行情况,最终将流量切入运行最好的策略中。可以对传统开发流程进行裁剪、线上开发、线上测试,将敏捷能力发挥到极致。
案例效果
一是形成了全场景业务联动的联防联控机制。以事前、事中防控为主,事后反哺事前事中的模型迭代模式。实现总分支行联动,警银协助机制,并联动客服、柜面、司法查控、疑似涉诈账户防范系统、反洗钱、运营管理等。事前结合名单和已经发现的风险特征,建立账户开户准入策略,对高风险账户阻断开户,中风险客户渠道或者限额管控,防范风险的同时做到应开尽开,保障人民用卡方便。事中以大规模动态特征实时计算为变量基础,使用专家策略和AI模型,结合名单策略实时拦截风险交易。事后以反洗钱和运营管理为基础,使用机器学习模型迭代,使用关联网络挖掘团伙,建立反洗钱评级和账户分类分级机制,并建立账户风险预警模型,产出的风险名单用于事前和事中交易识别。总分支联动方面,总行运营管理部建立了总分总联动的机制,制定具体的反诈联动管理办法,保障日常运营顺畅。警银协助机制,总行安全管理部联动省公安厅对接反诈需求,落实反诈要求,分行安全管理对接地方反诈中心,落实地方反诈要求,可以做到及时冻结涉诈账户和被害人账户。系统联动方面,对接全行24个交易渠道系统,制定差异化防控策略模型,内联运营管理平台和反洗钱等,外联司法查控和疑似涉诈账户防范系统等。
二是建立了模型策略效果稳定体系。电诈手段层出不穷,被模型和策略捕捉到的特征变化很快,导致对应的策略命中比例和模型特征贡献度也在不断动态变化,反馈到业务上就是模型和策略的效果不断波动,如不加以制止,最终就会成为犯罪的突破口。我行从基础数据、定时监控、特征洞察、模型/策略等方面进行优化,分层举措保证模型/策略的稳定性。
三是建立了基于风险与价值维度的账户分类分级机制。账户风险评级模型包含交易金额、交易行为异常、资金流动方式、交易时间、交易集中度、交易频率等八个风险评判维度,利用规则引擎的评分卡方式实现全行账户可信、普通、关注、可疑和风险五个账户等级的划分;客户价值模型包含行为、守约、身份、贡献、征信、资产六个价值评判维度,对全行账户进行动态计算,把全行账户划分为高价值、中高机制、中低价值、低价值和无价值五个等级;通过账户风险评级模型结果与客户价值模型结果的融合运算,做到风险与价值的平衡。
四是建立了所见即所得的策略模型开发模式。以精准反诈为核心价值,以快速上线为目标,支撑业务人员通过可视化界面实现反欺诈策略的快速上线,通过策略实验室能力保障策略上线质量,改变了需求分析、设计、开发、测试、上线的瀑布式需求实现流程,转变为所见即所得、所配即所见的敏态开发模式。将原由技术人员主导的瀑布开发模式转变为业务主导的自主配置、上线模式,使原来至少需要3~4周的防控需求缩短到1天内实现,开发效率平均提升20倍。且需求越复杂,成本节约越明显。
总结
贵州银行反欺诈平台紧紧围绕国家和监管要求,以“守好群众钱袋子、提升用户满意度”为建设初衷,推动贵州银行防范电信网络诈骗从事后预警向事中拦截和事前预防转变。项目以“理数据、优模型、建平台、强管控”为目标,最终形成涉案银行账户数量与客户投诉数量“双双下降”的良好形势,为贵州银行防范电信网络诈骗工作提供了企业级支撑。
项目从低代码、高性能、高可靠、强安全等方面,打造了一个具备全面优势的反欺诈平台。在低代码方面,从报文接入、变量配置、规则配置和上线,到全路径交易链路追踪、数据分析,全面实现可视化,打造了极致的用户体验。在高性能方面,设计实现了高效的数据存储模型、高性能的指标计算引擎和规则执行引擎,规则引擎除了支持常规的冠军挑战外,创新性地提出策略实验室、灰度发布等模式,支持规则策略的快速迭代和验证。在高可靠方面,除了云平台提供的PaaS层组件高可用外,针对ES、MongoDB、Redis等核心组件,实现了应用层高可用设计,并对监管强要求的名单服务具备应用内服务降级和全行级服务降级能力。在安全性方面,通过代码扫描、MAC校验、TOKEN认证、SSL、秘钥交换、字段脱敏、安全水印、权限控制、日志审计等手段实现从代码开发到系统运营全链路安全管控能力。
项目上线以来,通过账户治理、模型优化、强化联动等手段,实现“去存量、控新增”的目标。建立了事前账户准入模型、事中交易AI模型、事中交易防控策略、账户分类分级体系、账户关联网络模型等,结合贵州本地特色,制定差异化防控策略,并形成警银联动、总分联动机制,构建事前预警、事中对抗、事后分析与解控的防范电信网络诈骗闭环。2023年,贵州银行涉案账户降幅达到46.58%,客服投诉量下降22.73%,实现涉案卡和客户投诉双降目标。
(此文刊发于《金融电子化》2025年2月下半月刊)
热门跟贴