BOSCHは続く
相変わらず自分用の備忘録
こちらのコードを参考にお勉強しております
今回のデータは2GBくらいある巨大なデータで、サンプルデータを抽出するにも一苦労なわけですが、迂回するにはこんな風に書くといいよというメモ
X = pd.concat([pd.concat([dchunk, nchunk], axis=1).sample(frac=0.05) for dchunk, nchunk in zip(date_chunks, num_chunks)])
pandasで、chunksizeを指定すると、返ってくるのがDataFrameではなく、TextReader??というオブジェクトなんですが、それに対してループを回して、同時にサンプリングもしますよという発想ですね。
それでこちらのコードで欠損値の処理をしてなかったのに気付き、コメントを読むと、XGBはNaNがあってもOKということで驚きました!
What are the ways of treatng missing values in XGboost? · Issue #21 · dmlc/xgboost · GitHub
今回のデータでは、大量に欠損値あるため、埋めるよりもそのまま渡した方がいいよと作者さんがコメントしていました。
xgboostのパラーメーター関連
http://kamonohashiperry.com/archives/209
どうやらxgbには3種類のパラメーター群、(全体、ブースト、学習)があり、設定するのは主にブースティング関連のパラメーターのようです。
グリッドサーチってやったことないので、挑戦してみようかな・・・
PythonでXgboost · Wolftail Bounds