招商银行2022FinTech数据赛道总结

比赛链接:FinTech精英训练营官方网站。
第一次参加这种比赛,真的学到了不少东西,感谢其他大佬在交流群里的无私分享,小白又了解到了很多可以学习的东西。这次比赛排名还是很拉的,A榜只有0.952,B榜只有0.723,综合排名应该到了快400名吧。但不管怎么说,既然参加了这次比赛,还学习了很多东西,还是值得好好整理一下的。

文章目录

  • 招商银行2022FinTech数据赛道总结
    • 1. 比赛简介
    • 2. 可提高的地方
      • (1)探索性分析
      • (2)数据预处理
        • 数据类型转换
        • 缺失值处理
        • 异常值处理
        • 数据规范化
        • 重采样
      • (3)特征工程
        • 特征过滤
        • 特征交叉
        • 特征选择

1. 比赛简介

数据是结构化的表格数据,一共49个属性(不含ID和标签),但没有具体的属性介绍,标签是二分类。

竞赛时间:4月29日9:00-5月12日17:00;

竞赛流程:4月29日9:00-5月9日24:00,赛题开放A榜数据(test_A榜),预测结果数据每天限提交3次;5月10日00:00-5月12日17:00,赛题开放B榜数据(test_B榜),预测结果数据每天限提交3次。重复提交或提交格式错误均扣除有效提交次数,请谨慎提交答案,结果提交后请务必点击“运行”按钮,方可查看当前个人排名。

排行榜依据“最终得分”计算排名,“最终得分”计算公式为:A榜最高分 * 0.3 + B榜最高分 * 0.7。“最终得分”越大,成绩排名越前。

注:AUC这个指标和准确率不一样,它受到样本不均衡的影响很小,对正负比例不敏感,因此。只要是AUC做评价指标的,基本都不需要考虑正负样本比例的问题

2. 可提高的地方

每一列的含义可以参考往年的资料进行分析→招商银行2020FinTech精英训练营数据赛道参赛回顾。

(1)探索性分析

之前都是使用pandas-profiling,这次数据出问题就跳过了EDA的步骤,但赛后换了一个eda的包之后就能用了。所以也先mark在这:

  • 通用:pandas-profiling、SweetViz;
  • Notebook上:LUX、AutoViz。

EDA可以分析的内容:

  1. 样本数量、数据字段的异常值、缺失值;
  2. 数据(含标签)字段的类型及其分布、字段和标签的分布关系;
  3. 字段之间的相关性分析;
  4. 有时间特征的可以按不同时间窗口划分观察;
  5. 训练集和测试集的分布差异

(2)数据预处理

数据类型转换

数值型变量:转为float

有序型分类变量:使用LabelEncoder()编码;

无序型分类变量:使用独热编码。

缺失值处理

将“?”字段统一替换为Nan缺失值;

可以考虑将所有数值特征统一减2,“2”应该是出题方为了脱敏进行的变换,个人之前没有减是觉得“2”已经代表了一种属性,没必要调整,但未来遇到这样的情况获取可以考虑进行类似的变换。

填充方法:

  • 删除:当缺失值的个数只占整体很小一部分的时候,可直接删除缺失值(行)

  • 填补:

    • 前填充/后填充:method=‘ffill’—前填充;method=‘bfill’–后填充;

    • 均值、中位数、众数填充:fillna(df[‘XX’].mean()) # .mean()或.median()或.mode()

    • 插值法:计算的是缺失值前一个值和后一个值的平均数:df[‘XX’] = df[‘XX’].interpolate();

  • 拟合:

    • 回归填补:利用线性回归对缺失值进行填补;
    • 随机森林填充:对于一个有n个特征的数据来说,其中特征T有缺失,我们就将特征T当作标签,其他n-1个特征和原来的标签组成新的特征矩阵。对于特征T来说,他没有缺失的部分就是我们的y_train,这部分对应的标签就是X_train,缺失部分就是我们需要预测的部分,也即是y_predict,这部分对应的标签就是X_test,对于数据中有多个特征缺失的情况,需要从缺失值最少的特征开始填补(填补缺失值越少的特征需要的准确信息越少)。当填补一个特征时,将其他特征的缺失值用0代替,依次填补直到所有特征填补完全。

此外,还可以考虑用随机森林进行填充。

异常值处理

采用3σ原则或者孤立森林方法进行异常值检测。

处理:可以考虑将过大、过小的值都限定到一个上限和下限。

数据规范化

可选:最大-最小归一化、标准化、中心化,其中min-max不改变数据分布,标准化改变数据分布(具体看所选取的算法要求);

重采样

过采样/欠采样:目的是为了平衡类别。

目前没有实践,有看到采用imblearn库来做的。eg:from imblearn.over_sampling import RandomOverSampler

(3)特征工程

特征过滤

基础:去除共线性:将相互之间热力值高(相关性高于0.9)的特征列去掉,仅保留一列(根据结果决定);

过滤法:方差过滤法+卡方检验法/F检验法/互信息法;

特征过滤主要是对冗余特征进行处理,常见处理方法有方差法、卡方检验法、F检验法、装代法、包裹法等,其中常用的组合为方差过滤法和F检验法,卡尔检验法常用来处理线性关系,F检验法即可以用来线性关系,还可以用来处理非线性关系。

找“毒特”(删除训练集与测试集分布不一致的特征):

  • 通过对抗验证的思路找到auc指标远大于0.5的特征进行删除;
  • 删除其他和“毒特”相关性较高的特征。

特征交叉

对于任何两列相关系数在指定范围(0.3~0.8)内的特征做交叉衍生;

采用暴力全集特征交叉(二阶、加减乘除)、group组合提取偏离值特征以及数值变量与类别变量交叉(三阶);

类别变量组合特征,连续变量排序特征,trd和beh中提取tfidf和word2vec特征,交易聚集度特征等;

cate类交叉,num类分桶(等频、等宽、卡方)

使用featuretools这个包把三个表连接起来,基于“ 深度特征合成 ”的方法来自动生成特征。生成完之后大概500多维。参考资料:https://zhuanlan.zhihu.com/p/43630912、https://www.cnblogs.com/wkang/p/103。

手工特征。

特征选择

使用LGB+shap或者+rfe的方法进行筛选,具体可见:特征选择方法总结。

招商银行2022FinTech数据赛道总结相关推荐

  1. 2020年招商银行FinTech数据赛道比赛总结

    为期2周的比赛,最后b榜线上AUC0.7765,排名130,不知道第一名是多少,但看群聊,10名左右的人成绩是0.7842,差一个百分点,就与大奖差之千里啊,我还是太菜了=-=. 不过,还是很开心的, ...

  2. 招商银行2022FinTech精英训练营 - 数据赛道方案分享

    老肥今天和大家分享的是招商银行2022FinTech精英训练营的数据赛道. 该赛题是表格类赛题,主要是对客户流失进行预测,是一个常规的二分类问题,评价指标为AUC,其特点是A榜和B榜两个阶段是完全不同 ...

  3. 招商银行2021FinTech精英训练营数据赛道方案分享

    今天老肥和大家分享的是下午刚刚结束的招商银行2021FinTech精英训练营数据赛道的方案.这次赛题是时间序列赛题,我也是第二次尝试(第一次是中兴捧月迪杰斯特拉赛道的流量预测),方式方法还略显稚嫩,只 ...

  4. 招商银行2020FinTech精英训练营数据赛道参赛回顾

    招商银行2020FinTech精英训练营数据赛道参赛回顾 比赛简介 参赛背景 比赛过程 1.流程熟悉 2.模块导入,数据读取 3.数据初探.概览 3.1 标签数据集数据预处理 3.2 交易行为数据集数 ...

  5. 算法分析赛:从数据中挖掘价值,72万奖金,DCIC 2020 大数据赛道来了!

    01  DCIC 2020:数字中国创新大赛 DCIC 是国内赛事中少有的开放政府真实数据的经典赛事,除了高知名度,高影响力,高奖金,对能力履历,学术研究和企业技术应用都提供了很好的机会.作为数字中国 ...

  6. 新年第一战| 数字中国创新大赛·大数据赛道等你来战

    赛事邀请函 Hey! DF的老朋友们!好久不见~ 继2020年百万奖金的NAIC"鹏城赛".万人参与的CCF BDCI赛后,DataFountain平台已发布2021年第一场赛事 ...

  7. 小白打boss之路——2020fintech训练营数据赛道

    2020fintech训练营数据赛道 1. 赛题背景:   在当今大数据时代,信用评分不仅仅用在办理信用卡.贷款等金融场景,类似的评分产品已经触及到我们生活的方方面面,比如借充电宝免押金.打车先用后付 ...

  8. 竞争者无数的大数据赛道,这家创业公司靠什么获得众多资本青睐?

    本文转自学霸十三妹,主题为神策数据创始人 & CEO桑文锋的直播干货分享. 神策数据创始人 & CEO 浙江大学计算机科学与技术专业硕士 曾在百度任职 8 年 目前神策数据已完成B轮融 ...

  9. 快来看看招商银行理财产品数据(代码及分析)

    往期经典回顾 盘膝而坐--跟你聊聊APP市场的数据分析 [干货]手把手带你抓"网上购物"类APP信息(含代码) 快来围观2W+的豆瓣电影分类排行榜(含代码) 使用Python探索二 ...

最新文章

  1. 伪共享(false sharing),并发编程无声的性能杀手
  2. db2 参数标识符使用无效_在Python应用程序中使用配置的最佳实践
  3. jQuery对象与DOM对象的区别
  4. 软件:9款超级实用的办公软件,值得收藏!
  5. shell 脚本实现退点输出
  6. python嵌套列表操作_python基础(list列表的操作,公共方法,列表嵌套,元祖)...
  7. 如何评价NVIDIA RTX 2080 Ti显卡?
  8. 一个demo学会java
  9. 2022年Python最新面试题汇总及答案
  10. [C语言]切比雪夫多项式,并写入到文件中
  11. 7天快速掌握MySQL-DAY5
  12. 计算机的照相机功能,让我来告诉你单反相机那10项不可思议的功能!
  13. 数据库-库表设计 【分享一些库表设计经验】
  14. php照片管理源码,PHP图片管理 Coppermine Photo v1.5.22 多国语言版
  15. 与病毒名称相似,“捏脸”游戏 ZEPETO 涉嫌窃听?...
  16. DOTA英雄 精美图片 大集合
  17. 计算机二级新题word,计算机二级word试题最新.pdf
  18. hdu1814 Peaceful Commission 2-sat
  19. 第二章:恶意软件动态分析基础
  20. 钱多多第二阶段冲刺05

热门文章

  1. MySQL同步到hadoop工具_数据同步工具Applier:MySQL数据库实时同步数据到Hadoop
  2. python飞机大战没有运行界面_python3实现飞机大战
  3. oracle中start with ... connect by prior的用法(图文并茂,一看就懂!!)
  4. 心情不好的时候,就去做这5件事
  5. J2ME(cldc/midp)简介
  6. mdp文件-Chapter2-NVT.mdp
  7. MOOC人工智能原理学习笔记4——有信息搜索
  8. mac备份_备份Mac的最佳方法
  9. (转)Android图形系统分析与移植--六、framebuffer研究
  10. 【左程云Java算法】Chapter1-5:用一个栈实现另一个栈的排序