2020 Lyft Motion Prediction for Autonomous Vehicles Competition link: https://www.kaggle.com/c/lyft-motion-prediction-autonomous-vehicles
Lyft Motion Prediction forAutonomous Vehicleshttps://www.kaggle.com/c/lyft-motion-prediction-autonomous-vehiclesいのうえ
View Slide
概要Motion prediction用の大きいデータセットを作ったのでそれでコンペしようぜ!https://arxiv.org/abs/2006.14480
概要Public & PrivateTrain
概要l5kitという専用のLibraryを使用してデータをGenerateする。データの作り方はいくつかある。Satellite Semantic
概要
概要Ego: 自動運転車Agent: 自動運転車が認識した周囲の移動物体予測したいのはこの Agentの5秒後(50 frames)の軌跡TestのSceneの10秒目の画像が評価対象だった。
評価指標混合ガウスの負の対数尤度 ● 1つのAgent(AVの周囲の物体)につき50 frame先までの位置の予測をK=3種類出力 ● 確信度cを含めて出力:混合ガウス ● 50 frame先までの平均L2誤差が1m以内でもスコアは100以上になる
Baseline...ResNet18をベースにしたシンプルなモデル
14th place approach・・・同じシーンで1フレームずらしただけの画像はほとんど同じ!10フレーム毎にサンプリング 1/10のデータ量になりLossの減少も高速に!
14th place approach● 予測軌跡の移動距離が6m以下のものが約65%とかなり偏りがある● 基本的に、軌跡の移動距離が小さいものほどeasy taskで大きいものほどhardtaskになると考えられる
14th place approach● 予測軌跡の移動距離が小さいほど大きく削るように調節■ 6m以下を50%削る■ 3m以下を更に50%削る■ 1.5m以下を更に50%削る■ 0.75m以下を更に50%削る● データ数は削る前の約53%● 全体として6m以下・以上の割合が1:2になるこれでおおよそデータ数が5,760,000くらいになる。 1エポック 12時間くらい!
LSTM Decoder: Repeat feature vector
14th place approach
11th place solution● ResNet18● Rastesr size (150, 150)● Batch size: 512● 408000 iterations
11th place solution● ResNet18● Rastesr size (150, 150)● Batch size: 512● 408000 iterations僕らのチーム結局、学習が全然足りてなかったのが敗因だった。。。
1st place solution● Rasterizerを改善、4倍の高速化に成功○ CPU律速 GPU律速(V100 x 8 DDP)● Custom rasterizer● Low resolutionでPretrain● EfficientNet x 4 のEnsemble
1st place solution● Rasterizerを改善、4倍の高速化に成功○ CPU律速 GPU律速(V100 x 8 DDP)● Custom rasterizer● Low resolutionでPretrain● EfficientNet x 4 のEnsemble● Bootstrapped validation1. 幾何学的変換をベクトル化して可能な限りバッチ処理できるようにした。2. 大きなndarrayを小さなListに分割3. ConcatenateをGPUで行う。(Numpy concatenateは遅いらしい)0.124 sec / sample 0.032 sec / sample
1st place solution- SatelliteとSemanticを融合- サイズを横長に。- いくつかのRaster sizeをEnsemble● Rasterizerを改善、4倍の高速化に成功○ CPU律速 GPU律速(V100 x 8 DDP)● Custom rasterizer● Low resolutionでPretrain● EfficientNet x 4 のEnsemble● Bootstrapped validation
1st place solution- Raster size(64, 112)で4エポック pretrain- 5エポック目を(224, 448)で学習- カスタマイズしたScheduler● Rasterizerを改善、4倍の高速化に成功○ CPU律速 GPU律速(V100 x 8 DDP)● Custom rasterizer● Low resolutionでPretrain● EfficientNet x 4 のEnsemble● Bootstrapped validation
1st place solution- Raster sizeが異なった4つのEfficientNetをEnsembleした。● Rasterizerを改善、4倍の高速化に成功○ CPU律速 GPU律速(V100 x 8 DDP)● Custom rasterizer● Low resolutionでPretrain● EfficientNet x 4 のEnsemble● Bootstrapped validation
1st place solution- Bootstrapped validationをすることでスコアだけじゃなくてSDも考慮- SDが大きかったEffnetB7, 8は除いた。● Rasterizerを改善、4倍の高速化に成功○ CPU律速 GPU律速(V100 x 8 DDP)● Custom rasterizer● Low resolutionでPretrain● EfficientNet x 4 のEnsemble● Bootstrapped validation