• Stars
    star
    331
  • Rank 126,518 (Top 3 %)
  • Language
    Java
  • Created over 8 years ago
  • Updated over 7 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

3rd Place Solution for PPD Risk Control Competition

拍拍贷风险控制大赛铜奖解决方案

  • 赛题介绍

    请参见 Kesci官网介绍

  • 参赛队伍

    不得仰视本王

    队员: 天音CyberBryan赵蕊wepon

  • 解决方案

    详细解决方案请看 PDF文件

  • 代码目录说明

    • proccess 文件夹

      • Split.java将采样数据分块
      • CombineSample.java将采样数据合并
      • NThreadRNB.java和NThreadMatrix.java是并行采样代码工具类
    • feature engineering 文件夾

      • NullDiscrete.java和CityFeature.java为计算城市向量特征
      • city_feature.sql 为数据库处理代码
      • rank.py 对原始数值特征进行排序,得到排序特征
      • null.py 分析和处理缺失值
      • jw.py 生成经纬度特征
      • CategoryFeatureProcess.py 特征处理
      • MergeFeature.py 特征合并
      • SelectFeature.py 特征筛选
      • jingch文件夹
        • UserLogInfoFeature 登录信息特征提取类
        • UserUpdateInfoFeature 修改信息特征提取类
        • MergeTool 模型融合工具类
        • FeatureProcess 特征处理类
    • feature_select 文件夹

      • sort_feature_using_xgb.py 训练xgb模型对特征进行重要性排序,特征选择
      • avg_featurescore.py 将多份featurescore文件全加,得到特征重要性排序文件
    • sample 文件夹

      包含了两种采样代码,其中MY0为本次比赛使用的基于粗糙集的并行过采样算法

    • util 文件夹

      这个文件夹包含一些常用的工具类和代码
      
      • visualize_null.py 缺失值的可视化分析
      • visualize_dataset.py 对每日成交量和违约量进行可视化
      • plot_feature_importance.py 画特征重要性图
      • cal_auc.py 计算auc,线下验证
    • lr文件夹

      • lr.py 逻辑回归模型文件
    • svm 文件夹

      • svm.py 运用数据集分解的方法训练多个svm进行averaging
      • avg_val.py 查看在验证集上的效果
      • avg_test.py 查看在测试集上的效果
    • xgb文件夹

      • single_xgb.py 单模型xgboost,线下cv的auc值是0.782左右
      • bagging_xgb.py 单模型xgboost的改进版,对参数和特征加入随机扰动,训练多个xgboost子模型
      • avg_test.py 对子模型预测结果进行averaging
      • graphlab_xgboost.py graphlab版本的xgboost
    • ensemble文件夹

      • cal_mic.py 计算单模型结果文件之间的相关性
      • ensemble.py 多个单模型的加权融合,通过验证集选取最优参数
      • blend_ensemble.py 训练多个单模型,并进行blending融合
  • 使用须知

    • 代码可以自由使用,但请保留出处。