【学习指导】Kaggle入门

来源:互联网 发布:网络协同是什么意思 编辑:程序博客网 时间:2024/05/21 16:56

Kaggle的比赛结果是以排名占比划分,共分为Prize Winner,10%或是25%这三档,新手可以以10%为自己的目标。在此平台上开发者可以用Python或者R进行编程。该比赛会有一些基本概念和时间限制(详情见比赛官网)。

这里写图片描述

比赛流程:

  1. Data Exploration & Visualization
    首先需要对数据进行初步的简单的处理来为今后的分析做铺垫,也可以采用绘图的方法来寻找灵感。
  2. Statistical Tests
    对于预测结果的不同是否会收到噪声的影响,需要在测试标准中设立一个阀值来对噪声造成的结果波动进行过滤。
  3. Data Preprocessing
    数据处理时需要对缺失数据、异常数据和某些离散类别数据甚至是一些小数点后的精度损失进行处理,尤其需要一定的pandas和iPython Notebook技巧
  4. Dummy Variables
    当需要处理类别变量时,可以对其可能的取值进行虚拟数值化(当取值种类数较小时)。
  5. Feature Engineering
    当一个变量从直觉上来说对所要完成的目标有帮助,就可以将其作为 Feature(特征)。
  6. Feature Selection
    最实用的筛选方法是看 Random Forest 训练完以后得到的 Feature Importance,通过挑选出最重要的 Feature,可以将它们之间进行各种运算和操作的结果作为新的 Feature,可能带来意外的提高。
  7. Feature Encoding
    如果类别变量种类过多时,需要重新设计变量系统来合理地表示这一 Feature。
  8. Model Selection
    准备好Feature后,需要将数据输入训练模型进行训练,在Kaggle的比赛中,Xgboost是一个重要的工具。
  9. Model Training
    核心是调整参数,基本准则是先粗略测试(大步迭代)后精细测试(小步迭代),并时刻观察精度达标时的收敛代数以防止过拟合,最好将该模型的随机数种子记录下来以重现模型。
0 0
原创粉丝点击