Python、BMA-Stacking融合LightGBM、GBDT、KNN多模型电商交易欺诈风险预警研究|附代码数据
全文链接https://tecdat.cn/?p45916原文出处拓端数据部落公众号封面关于分析师在此对Haoyang Ke对本文所作的贡献表示诚挚感谢。他在浙江财经大学完成了数理统计专业的学习专注机器学习、数据采集领域。他擅长 Python、R 语言在机器学习建模与大规模数据采集方面拥有丰富的实践经验。电子商务的蓬勃发展为全球经济注入活力但也滋生了日益复杂的线上欺诈行为。 在该项目中我们为客户构建了一套动态、鲁棒的欺诈风险预警系统点击文末“阅读原文”获取完整智能体、代码、数据、文档。引言借此文我们不仅分享技术细节也展现我们在将多模型融合策略转化为实际风控解决方案方面的专业能力。本文的核心在于提出一种基于贝叶斯模型平均与 Stacking 集成学习的模型。它并非简单堆砌算法而是巧妙地利用 BMA 对异构基模型的预测进行概率加权再通过 Stacking 的元学习器进行优化组合。这种设计旨在解决传统方法在面对极度不平衡数据时对少数类欺诈交易捕捉能力不足的问题。我们将完整呈现从数据清洗、多粒度特征工程到模型构建与评估的全流程最终结果表明该框架在召回率等关键指标上实现了显著提升为电商平台构建实时、精准的风控体系提供了可靠的技术方案。阅读原文进群获取本文完整代码数据及更多最新AI见解和行业洞察可与900行业人士交流成长还提供人工答疑拆解核心原理、代码逻辑与业务适配思路遇代码运行问题更能享24小时调试支持。文章脉络流程图项目文件目录截图研究背景电子商务欺诈指在线上交易中不法分子通过技术手段或虚假信息以非法牟利为目的进行的欺骗行为。数据显示2023 年全球电商欺诈损失高达 480 亿美元较 2020 年增长 127%。新兴市场因支付体系尚不完善欺诈率是成熟市场的近两倍。欺诈手段也已从传统盗刷演变为利用 AI 生成虚假身份、篡改设备指纹等新型模式。此类行为导致商家年均损失 5.2%的营收且每 1 美元欺诈损失需耗费 3.4 美元进行后续处理。因此构建高效、精准的欺诈风险预警机制成为业界与学界共同关注的焦点。导师答辩高频提问为什么选择电商欺诈检测作为研究对象标准答案电商欺诈具有典型的数据不平衡、模式快速演变和高实时性要求等特征是检验机器学习模型鲁棒性与适应性的理想场景。解决该问题不仅有巨大的商业价值其方法论也能推广至金融风控、异常检测等其他领域。按照欺诈手段、主体及风险场景可将电商欺诈行为分类整理常见手段如下表所示。表 1 电子商务欺诈的分类与常见手段分类依据类别常见手段按欺诈手段分类账户盗用凭证猜测、撞库、钓鱼获取账户信息伪装欺诈假冒伪劣商品、仿冒平台界面规则滥用欺诈批量注册账号、恶意退单、套取优惠按欺诈主体分类消费者欺诈虚假退货、恶意索赔商家欺诈刷单炒信、销售假冒商品第三方攻击者欺诈数据泄露、信用卡盗刷按风险场景分类账户安全风险用户密码泄露、账户接管ATO支付安全风险信用卡盗刷、支付接口漏洞交易生态风险刷单、虚假评价现有技术局限与研究机遇当前主流的欺诈检测依赖规则引擎和机器学习模型。规则引擎缺乏动态适应能力难以应对快速迭代的欺诈模式传统机器学习模型在处理高维稀疏特征和非线性关系时存在局限深度学习的“黑箱”特性与高计算成本阻碍了其在实际业务中的落地。欺诈检测场景普遍存在三个核心问题一是类别极度不平衡正常交易占比远超 99%二是特征时效性强欺诈模式平均每 3 个月就会发生显著演变三是可解释性需求相关法规要求模型决策需满足透明性与可审计性。概念解析类别不平衡想象你在一个巨大的图书馆里寻找几本被撕掉封面的违禁书。如果挨个检查99%以上的书都是正常的你很可能会漏掉那几本甚至会因为疲劳而误判。这个场景就是“类别不平衡”。模型在处理这类问题时很容易学会“偷懒”把所有样本都预测为多数类正常书从而获得很高的总体准确率但这毫无意义。我们真正关心的是如何大海捞针找到那极少数有问题的样本。贝叶斯模型平均与 Stacking 技术的结合为解决此问题提供了新思路BMA 通过概率加权整合多模型预测量化不确定性Stacking 利用元学习优化模型组合策略。二者的协同作用有望突破传统集成方法的性能瓶颈。相关文章DeepSeek、LangGraph和Python融合LSTM、RF、XGBoost、LR多模型预测NFLX股票涨跌|附完整代码数据原文链接https://tecdat.cn/?p44060研究框架本研究旨在构建一个高性能的电商欺诈风险预警模型通过数据预处理、特征工程和模型融合技术提升对欺诈交易的检测能力重点关注召回率等关键指标。研究采用某公开平台提供的电商交易数据集结合监督学习算法与贝叶斯优化调参并引入贝叶斯模型平均来分配基模型权重以提升模型的鲁棒性。图 1 文章总体流程图研究方法概述不平衡数据处理实证分析中常出现数据不平衡现象。在数据层面小样本下常用 SMOTE 方法通过插值生成新的合成样本大样本下常用 TomekLinks 方法通过识别并剔除边界样本进行欠采样。本研究采用的 SMOTE-ENN 混合采样是先过采样扩充少数类再欠采样清除重叠和噪声样本以改善类别分布。在算法层面则通过调整分类器参数如 SVM 的惩罚系数、使用集成学习如 Boosting或代价敏感学习来处理。Stacking 模型融合Stacking 是一种分层集成技术它先用多个基学习器进行预测再将所有预测结果合并作为新特征输入到第二层的元学习器中进行最终预测其架构如下图所示。图 2 Stacking 模型架构第一层基学习器的多样性至关重要。本研究建立了包含树算法、支持向量机、近邻算法、神经网络和回归类等 5 类算法的基学习器库以保证观测数据方式的差异性。在本电商欺诈预警场景中具体选择了决策树、逻辑回归、LightGBM、GBDT 以及 KNN 作为基分类器。点击标题查阅往期内容以下是关于BMA贝叶斯模型平均的精选文章和研究报告涵盖算法原理、应用场景、模型优化及行业实践等核心方向并附原文链接及关键内容解读1.BMA在Stacking集成学习中的应用文章标题: Python、BMA动态权重Stacking集成、SMOTE-ENN采样电商交易欺诈预警应用链接: 点击阅读核心内容:技术融合BMA通过对所有可能模型的后验概率加权生成组合预测分布。在电商欺诈检测中融入BMA的Stacking模型AUC达0.92较传统集成方法提升8%[1]。动态权重BMA根据模型后验概率动态调整基学习器权重提升模型鲁棒性[1]。2.BMA在工资预测中的变量选择文章标题: R语言用贝叶斯线性回归、贝叶斯模型平均 (BMA)来预测工人工资链接: 点击阅读核心内容:变量选择BMA应用于935名工人的工资预测筛选出“受教育年限”“工作经验”等关键变量模型解释方差达72%[2]。可靠性BMA通过贝叶斯信息准则BIC确保变量选择的稳定性避免过拟合[2]。3.BMA与线性回归的对比分析文章标题: R语言用贝叶斯线性回归、贝叶斯模型平均 (BMA)来预测工人工资链接: 点击阅读核心内容:模型对比BMA在工资预测中均方误差MSE为0.89优于普通线性回归1.12和逐步回归0.95[3]。残差分析BMA模型残差接近正态分布满足贝叶斯建模假设[3]。4.BMA在时间序列预测中的扩展文章标题: Python基于ARIMA-LSTM模型的广州市新能源汽车销量预测链接: 点击阅读核心内容:技术延伸虽然未直接使用BMA但ARIMA-LSTM混合模型的“分治策略”线性非线性分解与BMA的模型平均思想异曲同工预测误差降低至10.01%[4]。多模型协同类似BMA的加权理念通过模型互补提升预测精度[4]。延伸工具与数据开源库:BMSR语言提供BMA模型实现与可视化。PyMC3Python支持贝叶斯模型平均与变量选择。案例库: 《BMA实战案例集》含工资预测、欺诈检测等完整代码[1,2]。总结BMA通过模型后验概率加权有效整合多个模型的优势在变量选择、预测稳定性方面表现突出。核心应用场景包括金融风控欺诈检测[1]社会经济分析工资预测[2,3]时间序列预测模型融合表 2 基学习器库类别算法作用基于树算法RF, GBDT, XGBoost, LightGBM, Catboost基学习器支持向量机SVM基学习器近邻算法KNN基学习器神经网络ELM, LSTM基学习器回归类岭回归, Lasso 回归, LR基学习器/元学习器K 折交叉验证K 折交叉验证是评估模型泛化性能的常用方法。它将原始数据集平均分成 K 份每次用其中 1 份作为测试集剩余 K-1 份作为训练集迭代训练 K 次后取平均值作为最终性能估计。当 K5 时分层示意图如下。图 3 K 折交叉验证分层示意图k5BMA-Stacking 模型建模贝叶斯模型平均是一种通过后验概率为不同模型分配权重的统计方法能有效处理模型的不确定性。在融合 BMA 的 Stacking 流程中首先训练多个基分类器然后BMA 算法根据各基分类器在训练集上的预测表现计算其后验概率并以此为权重对预测结果进行加权平均生成高质量的元训练集最后用元训练集训练元学习器得到最终预测。图 4 融入 BMA 的 Stacking 预测流程核心概念精讲贝叶斯模型平均与 Stacking类比这就像一个医院的多学科会诊。多个不同领域的专家异构基模型先各自独立诊断给出他们的初步意见。但每位专家的判断都有不确定性如何综合BMA 就像根据每位专家过去诊断的准确率后验概率来决定他们意见的权重。最后一位资深主任医师元学习器综合这些加权后的意见做出最终决策。术语对应多学科会诊Stacking 集成架构专家意见权重贝叶斯模型平均的后验概率主任医师最终决策元学习器的预测输出模型评价指标为保证模型的准确性和鲁棒性本研究采用准确率、精确率、召回率和 F1 值四个指标进行客观量化评估。数据预处理及特征工程数据来源与清洗本研究采用某公开平台提供的电商交易数据集包含 23634 个样本16 个原始特征。数据清洗环节首先将交易日期特征转换为 datetime 格式并从中衍生出“交易天数”、“交易星期”和“交易月份”三个新特征随后删除原始日期变量。接着对“年龄”特征进行处理将小于 9 岁的值替换为平均年龄负值取绝对值。最后新增一个“地址匹配”特征用以标记收货地址与账单地址是否一致。清洗后的特征及其含义如下表所示。表 3 电商交易数据集的基本特征编号特征特征含义特征类型1amount交易金额数值型2method支付方式分类型3category产品类别分类型4quantity购买的产品数量数值型5age客户年龄数值型6device_type设备类型分类型7transaction_day日期中的天数数值型8transaction_dow交易发生的星期几数值型9transaction_month交易发生的月份数值型10address_match收货地址和账单地址是否一致(01)分类型11account_age_days账户年龄数值型12transaction_hour具体小时数数值型13is_fraudulent是否欺诈(01)分类型数据探索性分析目标变量分布如下图所示正常交易占比高达 94.83%而欺诈交易仅占 5.17%。这种极度不平衡的数据分布是模型训练中必须解决的首要问题。图 5 欺诈数据占比图图 6 欺诈数据分布图客户年龄与欺诈交易的关系分析客户年龄分布可知线上交易的主要群体集中在 30 至 50 岁。相应地该年龄段的欺诈交易量也相对较高是风控审核的重点人群。图 7 客户年龄分布图图 8 不同年龄是否欺诈分布图商品类别与欺诈交易的关系商品类别涵盖服饰、电子产品、日用品等五大类。分析发现在服饰、日用品等日常消费领域欺诈交易的比例相对更高表明这些是欺诈高发领域消费者和平台需给予更多关注。图 9 商品类别图图 10 商品类别中欺诈交易的占比柱状图欺诈交易与交易时间的关系从时间维度分析欺诈交易的发生频率呈现明显规律。以天为单位凌晨后是欺诈高发期。以周为单位欺诈交易波动显著周四达到峰值周二最低。以季度为单位欺诈交易频率波动较大尤其在第四季度出现急剧下滑。导师答辩高频提问为什么要做如此细致的探索性数据分析标准答案探索性数据分析不仅是描述现状更是为后续特征工程提供业务直觉和先验知识。例如发现凌晨是欺诈高发时段我们就可以构建transaction_hour特征发现特定商品类别欺诈率高就可以通过 WOE 编码将该信息量化为数值特征。脱离业务理解的特征工程是盲目的。图 11 欺诈交易总数时间分布图图 12 是否欺诈每周频率分布图图 13 是否欺诈每季频率分布图特征工程特征编码我们采用 WOE 编码处理分类变量其核心思想是通过比较每个类别中正负样本的分布来衡量该类别对目标变量的预测能力。本文将address_match等二分类变量进行独热编码将method、category、device_used等多分类变量进行 WOE 编码。表 4 特征编码的数据结果部分展示数据is_fraudulentaddress_matchmethod_woecategory_woedevice_woe101-0.0171240.0732160.0094622010.018225-0.0716050.0474973000.0808180.0600850.3621724010.0182250.103614-0.054327相关矩阵分析通过绘制特征间皮尔逊相关系数的热力图可以直观地发现交易金额、账户年龄和交易时间是与欺诈行为相关性较强的几个特征。图 14 相关性热力图随机森林特征重要性排序为量化各特征对模型的贡献并降低过拟合风险本研究采用随机森林进行特征重要性排序。其核心是计算每个特征在所有决策树节点上带来的基尼不纯度平均减少量。分析结果显示各变量重要性不一但均对模型有一定贡献。结合相关矩阵分析我们最终保留了除目标变量外的所有特征用于建模。概念解析基尼不纯度想象你有一筐水果混合着苹果和橘子很“不纯”。你随机拿出一个猜它是苹果还是橘子猜错的可能性很大。如果你按颜色把它分成两筐每筐里的水果种类变得单一了那么这个筐的“不纯度”就降低了。决策树就是不断寻找最佳的特征作为“分裂”的依据让分出的子节点“不纯度”尽可能低。一个特征使“不纯度”降低得越多它对分类的贡献就越大重要性也就越高。图 15 随机森林特征重要性排序电商欺诈风险预警模型实证分析分类算法选择与超参数优化本研究聚焦于监督学习与模型融合技术。通过系统比较筛选出决策树、逻辑回归、LightGBM、GBDT 以及 KNN 五种预测性能良好的基分类器。针对这些模型我们采用贝叶斯优化算法寻找最优超参数组合。相比传统的网格搜索贝叶斯优化通过构建目标函数的概率代理模型能以更少的迭代次数找到更优解。概念解析贝叶斯优化这就像在一个漆黑的山谷中寻找最低点。网格搜索是带着探照灯地毯式扫描效率很低而贝叶斯优化则是基于每一次探索获得的地形信息智能地推测下一个最有可能是最低点的位置从而快速逼近谷底。表 5 模型最终参数设置分类算法参数值Adaboostlearning_rate1.0, n_estimators153LRC3.8决策树criterionentropy, max_depth6, splitterbestKNNn_neighbors5, weightsdistance, metriceuclideanGBDTlearning_rate0.3, max_depth17, n_estimators140LightGBMlearning_rate0.2, max_depth17, n_estimators84, num_leaves43各模型的 ROC 曲线及 AUC 值如下图所示。其中AdaBoost 的 AUC 值达到 0.926表现最为突出。但 AUC 对于极端不平衡数据的模型区分能力有限因此还需结合更多指标综合评估。图 16 各模型的 ROC 曲线图阅读原文进群获取完整内容及更多AI见解、行业洞察与900行业人士交流成长。下表给出了各单一模型的详细性能评估。可以看到召回率最高的是 LightGBM69.72%准确率最高的是 Adaboost精确率最高的是决策树。但整体而言所有单一模型的召回率都处于较低水平表明其对欺诈交易的捕捉能力有限。表 6 分类算法的性能评估表模型准确率精确率召回率F1 分数Adaboost0.94250.76320.64810.7006LR0.91100.63800.53150.5806决策树0.94130.79360.62840.7018KNN0.80360.79040.46930.5889GBDT0.93070.78580.59300.6759LightGBM0.92190.77930.69720.7359集成模型选择与验证为进一步提升性能我们引入 Stacking 集成方法。下表对比了不同基模型组合下的 Stacking 模型效果。在未处理数据不平衡的情况下以“KNN GBDT”为基学习器、“LightGBM”为元学习器的组合表现最优召回率达到 75.22%F1分数达到 0.8093。这验证了异构模型集成的有效性但数据不平衡问题仍是瓶颈。表 7 不同集成模型的结果集成方式准确率精确率召回率F1 分数LR、GBDTLGB0.93370.84080.7240.7779决策树、LRLGB0.94070.82730.7440.7835KNN、LGBLR0.94350.85160.70980.7739决策树、GBDTLR0.92610.85920.72460.7859LGB、KNNGBDT0.94820.87570.73160.7967KNN、GBDTLGB0.95180.87620.75220.8093融合BMA的集成模型结果分析本节引入 SMOTE-ENN 混合采样处理数据不平衡并将贝叶斯模型平均融入 Stacking 框架。下图展示了 BMA 方法对 KNN、GBDT 和 LightGBM 三个基模型分配的后验权重。可见GBDT 和 LightGBM 获得了更高的权重而 KNN 的权重较低这种基于概率的动态权重分配是 BMA 的核心优势。图 17 贝叶斯后验权重分布图为全面验证我们设置了对比实验测试在不同采样方式下未融合 BMA 与融合 BMA 的集成模型性能。表 8 不同采样方式下的集成模型结果集成模型采样方式准确率精确率召回率F1 分数未融合 BMA的集成模型Nearmiss0.91460.72760.50910.5976SMOTE0.91830.79910.71330.7539SMOTE-ENN0.92790.80450.77840.7912融合BMA的集成模型Nearmiss0.92730.76870.54540.6368SMOTE0.94610.82350.73090.7744SMOTE-ENN0.93550.85180.80980.8302结果清晰地表明采样方法的影响SMOTE 和 SMOTE-ENN 在所有指标上均优于 NearMiss而 SMOTE-ENN 在召回率提升上尤为显著。BMA 的增益引入 BMA 动态加权后模型的整体性能得到进一步提升。尤其是在 SMOTE-ENN 采样下融合 BMA 的模型在召回率和 F1 分数上分别达到了80.98%和83.02%在所有方案中表现最佳。导师答辩高频提问BMA-Stacking模型与普通Stacking模型的本质区别在哪里标准答案本质区别在于元模型训练数据的生成方式。普通Stacking直接将基模型的原始预测概率拼接后输入元模型而BMA-Stacking则根据各基模型的后验概率对原始预测进行加权平均相当于利用贝叶斯框架对不确定性进行了量化与平滑然后才输入元模型。这使得元模型能在一个信噪比更高的特征空间中进行学习尤其在处理不平衡数据时更为鲁棒。总结与展望研究总结本研究围绕电商欺诈风险预警提出了一种基于 BMA-Stacking 的集成学习模型旨在弥补传统方法在动态适应性、特征融合与模型鲁棒性上的不足。BMA 通过概率加权量化了各基模型的贡献减少了单一模型的不确定性Stacking 则通过元学习机制有效融合了异构模型的优势。二者的协同显著提升了对高维稀疏特征和非线性关系的捕捉能力。在特征工程环节我们提出了多粒度特征衍生与优化策略结合 WOE 编码、随机森林特征重要性排序筛选出关键特征。在模型构建中采用贝叶斯优化进行超参数调优并利用 SMOTE-ENN 混合采样技术缓解数据不平衡。实证结果验证了模型的有效性BMA-Stacking 模型在召回率和 F1 分数上显著优于传统集成方法最高分别达到 80.98% 和 83.02%。研究展望未来研究可在以下方面深化一是引入社交网络、设备指纹、用户行为序列等多源异构数据构建跨模态特征融合框架提升模型对复杂欺诈模式的泛化能力。二是探索对抗训练与鲁棒性增强技术以应对日益增长的对抗样本攻击。三是结合流式计算与增量学习技术设计轻量化在线学习框架实现模型的毫秒级动态更新满足实时风控需求。最终推动建立跨平台的电商欺诈预警技术标准与共享数据库构建全行业联防联控体系。作者声明作者系数据挖掘领域分析师拥有多年机器学习模型开发与风控领域咨询经验致力于为工业界与学术界提供可落地的技术解决方案。本文中分析的完整智能体、数据、代码、文档分享到会员群扫描下面二维码即可加群资料获取在公众号后台回复“领资料”可免费获取数据分析、机器学习、深度学习等学习资料。点击文末“阅读原文”获取完整智能体、代码、数据和文档。