zoukankan      html  css  js  c++  java
  • 拍拍贷“魔镜风控系统”数据比赛

    一、项目介绍

    这是拍拍贷举办的一个风控算法比赛,目标是根据用户历史行为数据来预测用户在未来6个月内是否会逾期还款。评价指标为AUC。

    然后给出的数据有贷款记录、借款人登录信息,借款人修改信息,主要进行的工作是:

    1.数据预处理

    1.1缺失值的处理

    按列统计:作图分析各列缺失值的比例

    缺失值比例过高的偶直接弃用(90%),缺失值比较多的(一半左右)类型变量把缺失值当做一种类型进行处理,用-1进行填充,数值型用均值或者最大值,最小值(根据具体情况,这里是类型变量),缺失值比较小的用中值进行填充。

    按行统计:用折线图统计每个样本缺失值的个数,发现有一些样本缺失值太多,基本不包含信息,相当于离群点,将其剔除。而且缺失特征个数可以作为一个特征,因为信息的完善程度在信贷领域的话,也可以作为预测用户信用的一个信息。

    1.2.剔除变化小的变量

    在数值类型中,通过计算每个数值型特征的标准差,剔除变化很小的特征,在190个特征中,有15个的标准差接近0,将其剔除

    1.3.字符串相关处理:大小写转换,空格的处理,城市名的处理

     二、特征工程

    2.1特征编码

      地理位置处理:one-hot encoding加上特征选择,原数据中有7个字段是地理位置,包括省份和城市,针对省份的方法是统计了违约最多的几个省份

    然后把这几个省份做成二值特征,这样处理更具有判别性。城市的处理是先进行独热编码,然后用sklearn中的

    sklearn.feature_selection import SelectKBest,选取前100个城市留下。

    成交时间特征:通过作图发现拍拍贷的业务量随时间增加,守约和违约量也随之增加,从第一天到最后一天每十天编为一个码,1,2,3...

    其他的类别型数据用one-hot encoding

    2.2特征组合

    通过特征重要性分析我得出其中一个ThirdParty_Info_Period_XX”的 feature score 得分很高,然后用这个特征中的属性两两相除得到7000个特征,然后用xgboost对这些特征进行单独训练,然后get_fscore方法得到特征重要性得分,取了其中500个,通过这500个特征的加入,最后的AUC从0.75提高到了0.77。

    2.3特征提取

    从用户修改信息和登录信息中提取了信息修改次数,登录天数,每种操作的次数,平均登录间隔等特征

    2.4特征选择

    2.5类别不平衡的处理

    给出的数据正负本的比例是13:1,采用过采样的方法:SMOTE:通过对训练集中的小类数据进行插值来产生额外的小类样本数据。产生新的少数类样本,产生的策略是对每个少数类样本a,从它的最近邻中随机选一个样本b,然后在a、b之间的连线上随机选一点作为新合成的少数类样本。

     三、模型设计

    初赛训练数据3万条,测试数据2万条,复赛训练数据8万条,测试数据1万条。原始特征加上构建的特征1500维左右

    3. 1  LR+L1正则,采用L1是因为数据比较高维

    单模型验证集AUC是0.74

    3.2   XGBoost

     交叉验证的AUC平均在0.76左右

  • 相关阅读:
    编程小技巧之 Linux 文本处理命令(二)
    基金投资经验总结
    基金投资需要掌握的几个基本概念
    动目标指示MTI和动目标检测MTD
    雷达信号处理基础-快时间维和慢时间维
    信号处理第二篇——接着谈正弦信号
    毫米波雷达第一篇——测距篇
    信号处理第一篇——浅谈正弦信号
    python学习总结篇(3)——类
    python中的if __name__ == '__main__' 如何正确理解?
  • 原文地址:https://www.cnblogs.com/stAr-1/p/8973426.html
Copyright © 2011-2022 走看看