kaggle比賽 簡街市場預(yù)測比賽baseline
本篇baseline可是學姐的粉絲創(chuàng)作的!看來你們中間真的有許多大神深藏不露啊!如果你有比賽相關(guān)的經(jīng)驗總結(jié)想給學姐投稿的話點擊這里參與有獎投稿。
一起來看下這位同學的簡介市場預(yù)測比賽的思路!
思路目錄如圖:

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

為什么選擇簡街比賽?
結(jié)構(gòu)化賽題約占33%的比例,適合入門學習(計算機視覺也是33%)
簡街比賽是做什么的?
構(gòu)建交易模型(買入賣出),目標是最大回報
賽題數(shù)據(jù)特點
1.參賽者不知道字段含義? feature{0-129}
2.數(shù)據(jù)以表格形式給出
3.數(shù)據(jù)有時序特點

resp是交易的收益情況
任務(wù)是對每一行進行二分類
比賽的評價函數(shù)

某次交易決策帶來多少收益
自編碼器模型(這里只用encoder部分降維)
目的是將數(shù)據(jù)集換一個等效但是占用空間不大的形式
完成兩件事情,編碼解碼又要分類,所以損失函數(shù)由兩部分構(gòu)成
mse與binary_crossentropy
數(shù)據(jù)字段的理解
數(shù)據(jù)讀取
TRAINING = False?控制是否訓練
FOLDS = 4?4折交叉訓練
train = train.astype({c: np.float32 for c in train.select_dtypes(include='float64').columns})?縮小內(nèi)存
train.fillna(train.mean(),inplace=True)?缺失值填充
y = np.stack([(train[c] > 0).astype('int') for c in resp_cols])?對5個resp分類
數(shù)據(jù)字段的理解
匿名數(shù)據(jù)如何進行分析,如何做特征工程,是否需要數(shù)據(jù)增廣?
EDA
1.刷論壇很重要
https://www.kaggle.com/c/iane-street-market-prediction/discussion/198965

滿足一個tag就是一個true,這個tag可以將所有特征做個one-hot

第85天是個重要的時間節(jié)點,應(yīng)該根據(jù)85天后建模

2.觀察數(shù)據(jù)
130個特征有30個tag,那么需要觀察tag的分布

統(tǒng)計feature的tag數(shù)目

計算特征的相關(guān)性,xy都是特征
顏色越亮,相關(guān)性越高

觀察特征發(fā)現(xiàn)f0明顯不同

feature0可能和趨勢直接相關(guān)

可視化的目的
更加清晰的明白哪些特征趨勢是相同的,便于我們對特征進行分組,做交叉特征(相似的特征做交叉(特征的加減乘除)比不相似的精度高)
數(shù)據(jù)劃分方法
留出法(73)(hold-out)
k折交叉驗證(k-fold cv)
時序數(shù)據(jù)劃分方法:簡單滑窗和分組滑窗
時序周期性的建模
模型的調(diào)參方法
網(wǎng)格調(diào)參,隨機調(diào)參random search,貝葉斯調(diào)參
nni神經(jīng)網(wǎng)絡(luò)調(diào)參工具
模型集成(樹模型和神經(jīng)網(wǎng)絡(luò)模型)
XGB/CatBoost/LightGBM/在現(xiàn)有模型中加入Bagging思路。
神經(jīng)網(wǎng)絡(luò)模型
模型訓練
restore_best_weights=True?保存最優(yōu)的參數(shù)
encoder.save_weights('./encoder.hdf5')?保存最有的模型
比賽的收獲
1.熟悉了kaggle文本比賽的pipline
2.收獲了一枚獎牌

哈哈哈哈哈啊哈!這位同學真的是個耿直boy,他在csdn上面也寫了很多文章,大家可以去看看呢!
傳送門:
https://blog.csdn.net/weixin_45955767/article/details/118643701
關(guān)注學姐帶你玩AI公眾號,后臺菜單聯(lián)系學姐點擊投稿即可參與投稿呢!總結(jié)自己的經(jīng)驗成長會很大哦!
