kaggle比赛 简街市场预测比赛baseline
本篇baseline可是学姐的粉丝创作的!看来你们中间真的有许多大神深藏不露啊!如果你有比赛相关的经验总结想给学姐投稿的话点击这里参与有奖投稿。
一起来看下这位同学的简介市场预测比赛的思路!
思路目录如图:

Bottleneck encoder + MLP + Keras Tuner 8601c5 | Kaggle baseline搭建的参考
https://www.kaggle.com/aimind/bottleneck-encoder-mlp-keras-tuner-8601c5/

为什么选择简街比赛?
结构化赛题约占33%的比例,适合入门学习(计算机视觉也是33%)
简街比赛是做什么的?
构建交易模型(买入卖出),目标是最大回报
赛题数据特点
1.参赛者不知道字段含义 feature{0-129}
2.数据以表格形式给出
3.数据有时序特点

resp是交易的收益情况
任务是对每一行进行二分类
比赛的评价函数

某次交易决策带来多少收益
自编码器模型(这里只用encoder部分降维)
目的是将数据集换一个等效但是占用空间不大的形式
完成两件事情,编码解码又要分类,所以损失函数由两部分构成
mse与binary_crossentropy
数据字段的理解
数据读取
TRAINING = False 控制是否训练
FOLDS = 4 4折交叉训练
train = train.astype({c: np.float32 for c in train.select_dtypes(include='float64').columns}) 缩小内存
train.fillna(train.mean(),inplace=True) 缺失值填充
y = np.stack([(train[c] > 0).astype('int') for c in resp_cols]) 对5个resp分类
数据字段的理解
匿名数据如何进行分析,如何做特征工程,是否需要数据增广?
EDA
1.刷论坛很重要
https://www.kaggle.com/c/iane-street-market-prediction/discussion/198965

满足一个tag就是一个true,这个tag可以将所有特征做个one-hot

第85天是个重要的时间节点,应该根据85天后建模

2.观察数据
130个特征有30个tag,那么需要观察tag的分布

统计feature的tag数目

计算特征的相关性,xy都是特征
颜色越亮,相关性越高

观察特征发现f0明显不同

feature0可能和趋势直接相关

可视化的目的
更加清晰的明白哪些特征趋势是相同的,便于我们对特征进行分组,做交叉特征(相似的特征做交叉(特征的加减乘除)比不相似的精度高)
数据划分方法
留出法(73)(hold-out)
k折交叉验证(k-fold cv)
时序数据划分方法:简单滑窗和分组滑窗
时序周期性的建模
模型的调参方法
网格调参,随机调参random search,贝叶斯调参
nni神经网络调参工具
模型集成(树模型和神经网络模型)
XGB/CatBoost/LightGBM/在现有模型中加入Bagging思路。
神经网络模型
模型训练
restore_best_weights=True 保存最优的参数
encoder.save_weights('./encoder.hdf5') 保存最有的模型
比赛的收获
1.熟悉了kaggle文本比赛的pipline
2.收获了一枚奖牌

哈哈哈哈哈啊哈!这位同学真的是个耿直boy,他在csdn上面也写了很多文章,大家可以去看看呢!
传送门:
https://blog.csdn.net/weixin_45955767/article/details/118643701
关注学姐带你玩AI公众号,后台菜单联系学姐点击投稿即可参与投稿呢!总结自己的经验成长会很大哦!
