【Kaggle参加記録】G2Net Gravitational Wave Detection【メダル圏外】
KaggleのG2Net Gravitational Wave Detectionに参加し、1219チーム中222位でメダル圏外という結果でした。
Solution
元のwave dataをtrainとtestすべてのmean, stdでnormalize。
元のwave data(2s, [4096])とそれを2つに分割したdata(1s, [:2048])(1s, [2048:])の3つにCQTを適用して各image(129, 46)をstack(129, 138)。
①上記を(512, 512)にリサイズしEfficientnet b7でモデル作成。
public: 0.87427 private: 0.87737
②上記①の5foldのOOFの予測値と真のtargetの差の絶対値abs(target - oof_preds)をもう1つのtarget(multi target)としてEfficientnet b7でモデル作成。
①との比較 public: +0.00027 private: +0.00025
③normalizeしたwave data(2s, 4096)(1s, [:2048])(1s, [2048:])の3つをCQTを適用せずそれぞれ(23, 512)にリサイズ。CQT(129, 138)を(512 - 23 * 3, 512)にリサイズしstack(512, 512)。Efficientnet b7、b6でモデル作成。
②との比較(b7) public: +0.0009 private: +0.00101
④上記③のEfficientnet b7、b6のモデルのベストエポックを使用し、画像のサイズ(512, 512)を(608, 608)に変更して再学習。(過去コンペのsolutionを参考)
https://www.kaggle.com/c/landmark-recognition-2020/discussion/188299
③との比較(b7) public: +0.00013 private: +0.00014
①~④のモデルをアンサンブルし最終的にpublic: 0.87867 private: 0.87604となり、
public notebookに負けてしまい悔しい結果となりました。
②のmulti targetは精度向上もわずかで、モデルの学習時間も長くなってしまうため、最後の手段にしたほうが良かったですね。
publicでメダル圏内にも行けていない状況で僅かな精度向上を追ってしまっていました。
他の参加者のsolution
abs(target - oof_preds)を用いて各バッチの30%をlow SNRのデータにしたというsolution。CPMPさんはlog transformを用いてhigh SNRとlow SNRのサンプルの違いを小さくし良い結果が得られたとのこと。
https://www.kaggle.com/c/g2net-gravitational-wave-detection/discussion/275364
trainable bp filter
https://www.kaggle.com/c/g2net-gravitational-wave-detection/discussion/275343#1528936
Zebra Mixup
https://www.kaggle.com/c/g2net-gravitational-wave-detection/discussion/275335
Frontend architectures(1D-CNN, trainable WaveNet wavegram, trainable 1d-CNN wavegram)
https://www.kaggle.com/c/g2net-gravitational-wave-detection/discussion/275341
次は
Google Brain - Ventilator Pressure Prediction
に参加予定です。