084 m5コンペ振り返り
2020年7月6日20時10分から
kerneler.icon質問や感想は以下のマシュマロよりください
いただいた質問はや感想は、放送で紹介します
このポッドキャストでは、Kaggleを中心としたデータサイエンスに関連する情報を配信していきます。
kerneler.iconお題
m5コンペ終了
regonn.icon
accuracy 銅メダル
currypurin.icon
accuracy 銀、uncertainty 銅メダルだった
初め @ryuichigt と2チーム、その後、paoさん、resistanceさん、チズチズさんチームとマージ
マージ後は、パイプライン作りと、uncertaintyをやっていた
Accuracy
概要
ウォルマートの店舗の商品の日付毎の売り上げ予測
個別の商品だけではなく、店舗毎・商品のカテゴリ毎など12lvで集計したスコアの平均で評価される
train 2011/1/29~2016/6/28, public 2016.4.25~2016.5.22, private2016.5.23~2016.6.19
currypurin.iconの取り組み
マージ前、次の可視化などを行い、日毎・グループ毎にCVをみていた
以下の図は、public前の28日間(自分が当初 validにしていた期間)のスコア上が、recursive(再帰的処理)なしで、したはrecursive有り
https://gyazo.com/58ec2482f1d1926df67dc1092536ca42
https://gyazo.com/756d9cf03952a711627f0fcacedc31be
チームの最終モデルは、2/1〜5/23までをvalidationにとって、そこのcvスコアが高くなるように、weightを決定
全データで学習した
uncertainty
概要
スコア
https://cdn.discordapp.com/attachments/710366242527248435/715359603612975155/2020-05-28_09.22.25.png
ピンボールロス
https://cdn.discordapp.com/attachments/710366242527248435/715359654183436418/2020-05-28_09.23.21.png
ピンボールロスのイメージ
https://cdn.discordapp.com/attachments/710366242527248435/715370932557840404/1-1.jpg
0.05の分位点の予測値が、trueの左にくるとロスは、誤差0.05だが、右にくると誤差0.95となる
τ<0.5であれば、trueより小さく、τ>0.5であればtrueより大きく予測したい
τが0.5と離れているほど、反対に予測した時の罰則(1-τ) or τが大きくなり、正解した時の罰則が小さくなるので分布を予測する場合に使われるらしい
currypurin.iconのモデル
①. accuracyでtrainの5foldでoofを作り,同時にpublicとprivateを予測
②. ①からlv1からlv12までを作成(普通に集計)
これで、train, public, privateにlv1からlv12の「予測値」ができる
③. 9つのアウトプット(「quantiles」)のMultiOutputRegressorを作成(MLP)
pred = 「予測値」* 「quantiles」。 predとy_trueでロスを計算し、predがサブミットする値
「予測値」からの係数を予測するモデルのイメージ
currypurin.icon振り返り
コンペによりrecursive・daybydayなど使ったことがない手法を試せて勉強になった
publicが特殊でrecurciveにマッチするのは、チームマージ前から良くわかっていて、Kernelで人気があったのもわかっていたので、順位を狙うのであれば、recurciveは使わない方が良かった
accuracyの300位までのcontries
https://gyazo.com/e99ce20f755c71d34605e57e59832e3b
japanが80以上で、1番多い
リスナーからの質問
https://gyazo.com/f4aa96c7517f73b281866de64f585587
https://gyazo.com/4397352f35d87df3c8b57265b2115620
Pylance
これを機にPythonで型を書く癖をつけていく
Python関係の「○○100本ノック」のまとめ
画像処理100本、ディープラーニング 、言語処理、Numpy、Pandas、音声情報処理(作成中)、データサイエンス100本ノックがある
Quevicoの宿泊予約キャンセル予測コンペの結果
public24位だった
2015/07/01〜2017/06/30のトレーニングデータを元に、2017/07/01〜2017/8/31の予約のキャンセルを予想
評価指標AUC
トレーニングデータで学習すると、cv 0.95とかでるが、publicLBのスコアは0.88ぐらい
このギャップをどう扱うか重要だったっぽい。
自分は次のことをやる程度で終了
LightGBMとCatboostでベースモデルを作る。Catboostの方が少しスコアが良い
日付系の特徴を作成
Adversarial Validationでtrainとtestで特徴選択 → ほぼスコア変わらず
5foldの予想をrankアベレージング → ほぼスコア変わらず
データが軽くて練習に良かったと思う。
Blueqat Summit Tokyo 2020 に参加
いままでオフラインイベントだったので、参加しにくかったけど、今回はオンラインになったので参加
最近 湊(みなと)さん がほぼ毎日オンラインの量子コンピュータ関連勉強会を30分位の単位で開催してくれているので、参加している
最近の量子コンピュータ界隈の話題がわかった
量子コンピュータがしっかりと業務に活かされだすのは10~15年後ぐらい先になるっぽい
技術を追っていれば、10年後にも仕事のスキルとして使えるなら勉強しておくといいのかも
7月の目標
regonn.icon
ルンバが稼働できるように家を片付ける
コンペとかで結構家が散らかっているのでルンバが稼働できるようにする
毎日ハピネスプラネットのチャレンジをやってみる
日立から独立した新規事業の幸福度を計測していくアプリで毎日チャレンジをやっていく
モブプロ活動をやっていく
強化学習・Tellus・自動売買BOTでモブプロを実施してブログ記事を書く
最近、もくもく会やKaggleをチームで臨んでみて、モブプロをやってみてもいいのかなと思っている。
currypurin.icon
これまでのコンペの復習をする(簡単に)
次にどのコンペやるか考える
HiliteやBirdcallが候補
テーブルコンペが今週あたりに来るようなので、そのコンペもやってみたい
「機械学習初心者がKaggleの「入門」を高速で終えるための、おすすめ資料などまとめ」の更新
データサイエンス100本ノックが良さそうなので、Kaggleスタートブックの次のコンテンツに入れたい
今週のkaggle
Haliteコンペやってる
普段のKaggleコンペと違って、プログラミング実装力が求められている感じがする
新しいテーブルコンペが7/2から1週間で来るらしい
https://gyazo.com/e4ac9e53bf8ba87c9089d714fb1ed896