专栏首页机器学习AI算法工程用户贷款风险预测:Stacking模型融合

用户贷款风险预测:Stacking模型融合

近7万贷款用户的基本身份信息、消费行为、银行还款等数据信息,需要参赛者以此建立准确的风险控制模型,来预测用户是否会逾期还款。

训练数据包括用户的基本属性user_info.txt、银行流水记录bank_detail.txt、用户浏览行为browse_history.txt、信用卡账单记录bill_detail.txt、放款时间loan_time.txt,以及这些顾客是否发生逾期行为的记录overdue.txt。(注意:并非每一位用户都有非常完整的记录,如有些用户并没有信用卡账单记录,有些用户却没有银行流水记录。) 相应地,还有用于测试的用户的基本属性、银行流水、信用卡账单记录、浏览行为、放款时间等数据信息,以及待预测用户的id列表。

解决方案概述

本题很多关键属性被脱敏处理,比如时间戳和所有金额的值,这个对我们进行特征构造带来很多的影响,损失了很多业务信息。不过对于参赛者都是公平的,因而我们构造了大量的统计特征,根据模型及线上反馈最佳特征大多来自用户浏览行为browse_history和bill_detail,此外发现放款时间也是个强力特征,详细见代码部分。这里只放了我个人的代码,队友的特征工程很多类似的,也有一些独特之处,这里说几个思路:bill_detail表的特征按放款时间分为放款前放款后分别统计(还可以尝试多划分几个时间窗再统计)、基于熵的分箱处理(特征离散化,熊掌整理了思路见:最优分箱.docx)、排序特征、组合特征等,有兴趣可以自己去实现。模型方面,我本人主要玩了xgboost和lightgbm,队友也基本上是xgboost、RandomForest,在玩Stacking融合的时候还上了ExtraTreesClassifier和Logistic Regression。

模型设计与模型融合

  • 单模型: 还是玩的大杀器xgboost,简单粗暴,然后进行了一些调参工作。个人单模型成绩最佳到0.443+,Top35,队友也基本玩的xgb,组队后大家做了特征融合,单模型能到0.455+,线上Top20。
  • mic加权融合: 后期单模型到极限了,也可能我们特征水平有限,已经很难通过特征工程和调参提升成绩了。于是开始玩融合,参考了“不得直视本王”的解决方案,对不同的模型结果计算mic值对比相关性,然后根据线上以及线下的评分进行加权融合,记得那天在群里就模型简单加权融合还是完善特征工程或是优化验证集等等讨论很久,最终决定还是尝试一下mic,结果当天提升到0.46+,直接Top10了。在最后几天的尝试中,我们分工完善特征、组合特征训练模型,在分箱处理后单模型竟然上了0.465,可惜临近结束没有太多的验证机会了,此外Rank融合也没有再验证,理论上是可以优化的。
  • Stacking模型: 再玩mic加权融合的同时,我们总结了成绩提升的原因,就是模型多样化。不同的模型结果(不同特征集或者不同的样本集或者不同的模型)融合才能得到好的结果,可以有效避免过拟合。抱着学习的态度,我们开始尝试stacking融合,边学边做,这个轮子是队友找来的,我们对它进行了一些修改,做成了我们自己的stacking轮子。 主要思路是:根据最佳单模型的xgb特征评分排名将特征集分量两个子集(1、3、5....和2、4、6...)作为基模型的训练集。基模型包括ET、RF、Xgboost,3个基模型分别训练这2个特征子集,保证相同的cv和seed。这样训练完成得到验证集的预测值拼接成新的训练集,一共可以得到6个新特征(2组特征子集,3个模型),最后第二层基于这些新特征训练ET模型,这里可以加上一部分你的原始特征,也可以组合新的特征,这些都值得尝试。Stacking的过程是非常耗时的,因为需要跑多个模型以及多次cv,我16G内存,i7 cpu跑一次完整的需要七八个小时。至于Stacking带来的提升,本次比赛并没有带来火箭, stacking的思路可以参考下面这张图,如果难以理解建议多查资料或者直接请教别人,然后看代码实现,我一开始也是觉得懂了,但是用起来发现细节还是不清楚。
  • 相关博文: https://blog.csdn.net/wstcjf/article/details/77989963 http://mlwave.com/kaggle-ensembling-guide/ http://blog.csdn.net/a358463121/article/details/53054686#t18

本文分享自微信公众号 - 机器学习AI算法工程(datayx)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-09-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 网易如何做新闻推荐:深度学习排序系统及模型

    深度学习的概念源于人工神经网络的研究。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的有效表示,而这种使用相对较短、稠密的向量表示叫做...

    机器学习AI算法工程
  • 一战成名,用户贷款风险预测 参赛代码与数据集分享

    队伍名“一战成名” 最终线上排名第七。 ? 任务 融360与平台上的金融机构合作,提供了近7万贷款用户的基本身份信息、消费行为、银行还款等数据信息,需要参...

    机器学习AI算法工程
  • 机器学习法则:(谷歌)机器学习工程最佳实践

    机器学习(ML)最优实践方法,浓缩了其多年技术积累与经验,尤其是YouTube、Google Play和Google+ 等平台背后的ML算法开发、维护经历。谷歌...

    机器学习AI算法工程
  • 【AI in 美团】深度学习在美团搜索广告排序的应用实践

    AI(人工智能)技术已经广泛应用于美团的众多业务,从美团App到大众点评App,从外卖到打车出行,从旅游到婚庆亲子,美团数百名最优秀的算法工程师正致力于将AI技...

    石晓文
  • 【AI in 美团】深度学习在美团搜索广告排序的应用实践

    AI(人工智能)技术已经广泛应用于美团的众多业务,从美团App到大众点评App,从外卖到打车出行,从旅游到婚庆亲子,美团数百名最优秀的算法工程师正致力于将AI技...

    美团技术团队
  • 大众点评搜索基于知识图谱的深度学习排序实践

    本文介绍了大众点评搜索核心排序层模型的演化之路,包括结合知识图谱信息构建适合搜索场景的Listwise深度学习排序模型LambdaDNN以及特征工程实践和相关工...

    数据猿
  • 网易如何做新闻推荐:深度学习排序系统及模型

    深度学习的概念源于人工神经网络的研究。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的有效表示,而这种使用相对较短、稠密的向量表示叫做...

    机器学习AI算法工程
  • 大众点评搜索基于知识图谱的深度学习排序实践

    本文介绍了大众点评搜索核心排序层模型的演化之路,包括结合知识图谱信息构建适合搜索场景的Listwise深度学习排序模型LambdaDNN以及特征工程实践和相关工...

    石晓文
  • 大众点评搜索基于知识图谱的深度学习排序实践

    本文介绍了大众点评搜索核心排序层模型的演化之路,包括结合知识图谱信息构建适合搜索场景的Listwise深度学习排序模型LambdaDNN以及特征工程实践和相关工...

    美团技术团队
  • 特征工程系列:自动化特征构造

    数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。由此可见,特征工程在机器学习中占有相当重要的地位。在实际应用当中,可以说特征工程是机器学习成功...

    木东居士

扫码关注云+社区

领取腾讯云代金券