Open sinchir0 opened 3 years ago
(追いつきました) まとめていただきありがとうございます!
pyスクリプト作ります!!!
py スクリプトの上げ方はしんちろさんがやってるみたいに自分のやつ(複数)を一つの dataset に入れとく感じでよさそうですかね。
あと、僕が出力している oof は control の行を含んでいるのですが、これは統一してないとめんどくさいかも...
たしかにoofは統一してないとスタッキングする際に面倒臭そうですね・・・ control の行を含んでいるもので良い気がしていますがいかがでしょう?
僕はoof含んでいません!受け取る際に行数で判断できるのでまあいいかなーとは思ってます。 スタッキングする際はcontrol落としたデータで学習すると思う(controlの行は学習の際には何の情報もないと思うため)ので、どちらかというと落としてくれていた方がありがたいです。(めんどくさければ落としてなくても大丈夫です。)
僕も現状oofにcontrolの行は含んでいない形でデータ持ってます。(control含まない場合は21948行ですかね)
しんちろさんがスタッキングの部分を担当するのであれば、しんちろさんがやり易い方に合わせるでいいのかなと思いますが、どうですかね?
たしかに学習させないと思う&sig_idがあれば問題ないと思うので、control含まない方がいろいろ楽だし良さそう!
なので、出力しておくoofのshapeは(21948, 207)
で統一するって感じですかね💪
(207はsig_id + target_col)
最新 version 更新しました。 https://www.kaggle.com/masatakashiwagi/stacking-models-script?scriptVersionId=47831633
変更点:
list にしたのは好みがあると思うので、ダメだったら戻してください。
weight optimize は一旦ここから fork して作ろうと思います。
必要なこと
下記の用意お願いします。
最終subのnotebookイメージ
.pyへの変換
方法
jupyter nbconvert --to script *.ipynb
.pyで出力するデータ
.pyを実行すると、各自のsubmissionが吐き出される状態にしておいてください。
rankgauss,PCA,VarThrをするときは「train & public」までのデータを使うようにし、「test 」を含めないようにしてください。(rerun時にtestのデータが変わるため。) 参考Notebook : https://www.kaggle.com/sinchir0/nn-use-train-public?scriptVersionId=47382227
submission.csvは、皆で同じ名前にすると上書きされてしまうためsubmission_{yourname}{model}.csvにしてください。(submission.csvじゃなければなんでもOK) 例:submission_sinchir0_nn.csv
一応出す予定のモデルは下記でまとめましょう。スタッキングする際は取り敢えず沢山のモデル混ぜれば良い気がします。調和平均とる場合は、どのモデル使うべきか相談させて下さい。
notebookのoutputをdatasetへ上げる方法
Notebook、一番下の左下ボタン「New Dataset」で上げることが可能です。
test+publicをあげているdataset
PCA, RankGauss, VarThrの際はtrain+public testまでみる方針かなと思ってます。public testのデータは下記にあげています。 ../input/moa-test-pub
datasetを共有する方法
datasetのタブ「Settings」のSharingからCollaboratorsを追加してください。
相談
チーム間でのdatasetの共有?みたいなことができるのか。それともpublic datasetにする必要あり? →共有可能。上記の画像参照。
oofは予め出力しておいて、datasetで読み込む形で問題ないですかね?weight datasetの中に入ってい るイメージです。 →oofはdatasetに入れるイメージ。