【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

に参加予定です。