kaggle-简街市场预测

1. 赛题描述

kaggle - Jane Street Market Prediction

赛题数据 匿名时序结构化 数据;

  • train.csv 训练集,包含历史数据和返回值
  • example_test.csv 样例测试集,它展示了看不见的测试集的结构
  • example_sample_submission.csv 样例提交文件
  • features.csv 匿名特征的元数据

在这里插入图片描述
赛题任务时序数据 的分类任务;

赛题思路:构建 分类模型 来完整;

  1. 数据字段理解;
  2. 字段缺失值处理;
  3. 时序周期建模;
  4. 模型调参方法;
  5. 模型集成(树模型 + 神经网络);

1.1 特征工程思路

在这里插入图片描述

1.2 赛题评分函数

在这里插入图片描述

  • weight 字段:含义未知,但参与最终打分;当 weight 取值为 0 时,不参与打分;
  • resp 字段:收益回报,有正有负;resp 取值为负,则 action 应该为 0,resp大于0,则action为 1
  • 250 天是一年工作日的数量(训练集是2年);

2. 结构化赛题知识点

在这里插入图片描述

2.1 结构化赛题特点

  • 结构化竞赛(Tabular Data Competiton)是最常见的赛题类型;
  • 是非常适合入门的赛题类型,对计算资源友好;
  • 可以选择用深度学习模型,也可以用树模型;
  • 对赛题的字段理解和建模方法决定了最终的精度;

2.2 结构化赛题难点

  • 简街数据为匿名数据,需要对字段进行分析和理解;
  • 数据字段需要特殊的统计,分析和处理(数据字段的原始形式);
  • 数据字段的编码方式和特征提取方式;

匿名数据如何进行分析,如何做特征工程?

  • 需要根据字段自身的分布,以及字段和标签的分布,字段属性分析,(可通过画图、可视化),找到字段的相关性后,同时(整合在一起)进行分析。

2.3 结构化赛题要点

  • 数据理解与特征工程(50%重要性)
  • 数据模型和超参数(20%重要性)
  • 模型集成(30%重要性)

3. 特征工程 - 50%

3.1 Jane Street: EDA of day 0 and feature importance

参考链接 - Jane Street: EDA of day 0 and feature importance ⭐️ ⭐️

train.csv 的 dataframe

在这里插入图片描述
shape : (2390491, 138),后面未显示是 feature_0feature_129ts_idaction 列。

3.1.1 train.csv 大数据量

  使用 datatable 处理,对比 pandas 读取速度快很多。

reading this magnificent kaggle - Tutorial on reading large datasets by Vopani

3.1.2 resp 特征

  数据格式形式
在这里插入图片描述

在这里插入图片描述
  对resp列做画条形图,仅显示值在 -0.05 ~ 0.05 范围。

在这里插入图片描述
  Calculate the skew and kurtosis of this distribution。

  • skew 偏度=0.10,kurtosis 峰度=17.36

  • If the distribution is symmetric, then the mean is equal to the median, and the distribution has zero skewness.[3] If the distribution is both symmetric and unimodal, then the mean = median = mode.

在这里插入图片描述

图源:Skewness - wikipedia

使用柯西分布进行线性拟合

  由于柯西分布具有长尾特性 参考链接 - 神奇的柯西分布,可以对上面条形图进行拟合。

在这里插入图片描述

3.1.3 weight 特征

  权重值为 0的行进行统计,占 17%。对 weight列画出条形图,显示范围在 0.001~1.4 之间的值。

在这里插入图片描述
  对权重值 weight 进行 降序排序后,再进行画图,发现是一个双峰图。

在这里插入图片描述
  使用 高斯函数 进行拟合,黑色实线 为两条高斯函数曲线的叠加。

在这里插入图片描述

3.1.4 datets_id 特征

  猜想交易模式发生在第 85 天,分组统计 500天 中的 ts_id 数量。

在这里插入图片描述
  画出每天交易量的条形图

在这里插入图片描述
  发现 大交易日( more than 9k trades)大多数在 85天 之前。

3.1.5 feature 特征

  对特征 feature_0 单独分析,发现值仅有 -1 和 1 两种取值,后面章节对其重点分析。

  对 feature_1 至 feature_129 共 129 个特征单独分析,发现似乎有 4 种一般 类型 的特征,下面是4种特征的示例图(举例)

在这里插入图片描述
  对每一个特征画出其走势图,发现它们符合以上 4 种曲线走势,根据其自身图形进行划分。

3.1.5.1 Linear features
  • 1
  • 7, 9, 11, 13, 15
  • 17, 19, 21, 23, 25
  • 18, 20, 22, 24, 26
  • 27, 29, 21, 33, 35
  • 28, 30, 32, 34, 36
  • 84, 85, 86, 87, 88
  • 90, 91, 92, 93, 94
  • 96, 97, 98, 99, 100
  • 102 (strong change in gradient), 103, 104, 105, 106
  • as well as 41, 46, 47, 48, 49, 50, 51, 53, 54, 69, 89, 95 (strong change in gradient), 101, 107 (strong change in gradient), 108, 110, 111, 113, 114, 115, 116, 117, 118, 119 (strong change in gradient), 120, 122, and 124.

……

3.1.6 action 特征

action的数值为 0,1 两种形式,统计出每天交易为 1 (action=1)的数量占比。

在这里插入图片描述

3.1.7 the first day day_0 特征 与 缺失值查看

在这里插入图片描述
  对 day_0 所有139个特征,缺失值的查看

在这里插入图片描述
  对整个 训练数据集统计缺失值 情况。


  使用 missingno 库画缺失值图

msno.dendrogram(train_data.iloc[:500, :])  # 根据缺失值的特征,将其组合到一起,构成框图

在这里插入图片描述

局部图截取

缺失值填充 方法有

  • 向前填充;
  • 最近邻填充;
  • 常数填充;
  • 迭代建模填充;

3.1.8 DABL plot

  后面可以学习 DABL

在这里插入图片描述

3.2 Market Pred-Feature Comparison+Date Analysis

参考链

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值