
NIO、自動運転AIに「走らなかった未来」を学習――複数の安全な軌跡を生成、NAVSIMで95.5
[メンバーシップ限定]蔚来汽車(NIO)は、香港科技大学、中国科学技術大学との共同研究で、自動運転AIに複数の安全な走行軌跡を学習させる新手法「FPD-Drive」を発表した。
今回の研究が取り組むのは、実際の走行記録には、運転者が選んだ一本の軌跡しか残らないという問題である。
同じ交通状況でも、安全な走り方は一つとは限らない。前方車両への接近を避ける場合、早めに減速する方法もあれば、適切な車間距離を保ちながら緩やかに速度を落とす方法もある。
しかし、従来の模倣学習では、実際に記録された軌跡が主な正解となる。記録には存在しない別の安全な走行方法を、十分に学習できない場合がある。
FPD-Driveは、学習時だけ未来の交通状況を参照できる教師AIを利用する。その教師AIが複数の走行候補を生成し、安全性と多様性を考慮して選別したうえで、通常の車載カメラ情報から判断する生徒AIへ知識を移す。
論文によると、FPD-Drive-ProはNAVSIM v1のnavtestでPDMS 95.5を記録した。NAVSIM v2の高難度評価navhardではEPDMS 58.1を記録している。
重要なのは、実際の走行時に未来の映像を必要としないことである。未来を知る教師AIは学習時にのみ使用され、推論時には生徒AIが現在までの観測情報から走行軌跡を生成する。
実際の走行記録には、一本の軌跡しか存在しない
自動運転AIの学習には、実際の道路を走行した際のカメラ映像や車両の動作記録が利用される。
例えば、前方に低速車両が存在する場面を考える。
人間の運転者は、車間距離を保ちながら緩やかに減速するかもしれない。あるいは、交通状況に応じて、少し早めに減速を開始するかもしれない。
どちらも安全な走行方法になり得る。
しかし、実際の走行記録に残るのは、その運転者が選択した一本の軌跡だけである。
従来の模倣学習では、この記録された軌跡を正解としてAIへ学習させる。
すると、AIが別の安全な軌跡を生成した場合でも、記録された軌跡と異なるという理由で、低く評価される可能性がある。
これは、自動運転における模倣学習の基本的な問題である。
安全な運転方法は一つとは限らない。しかし、実際のデータには一つの選択結果しか記録されない。
FPD-Driveは、この制約を克服しようとする研究である。
「未来を知る教師AI」を学習時だけ利用
FPD-Driveの中心にあるのは、Future-Privileged Multi-Target Distillationという仕組みである。
Future-Privilegedとは、通常の走行時には利用できない未来の情報を、特別に利用できることを意味する。
例えば、ある交差点へ車両が接近している場面を考える。
通常の自動運転AIは、現在までのカメラ映像から、周囲の車両や歩行者が今後どのように動くかを予測する必要がある。
しかし、過去に記録された走行データを学習する場合、その後に実際に何が起きたかという未来の映像が存在する。
FPD-Driveは、この記録済みの未来映像を教師AIへ与える。
教師AIは、現在の映像だけでなく、その後に道路上で何が起きたかも参考にできる。
例えば、交差点の先で車両が減速したことや、別の車両がどのように移動したかを知っている。
この情報を利用し、教師AIは複数の走行軌跡を生成する。
ただし、教師AIが知っている未来は、実際に記録された走行に対応する未来である。
別の軌跡を走った場合の交通状況が、実際に記録されているわけではない。
したがって、教師AIはあらゆる反事実的な未来を知っているわけではない。
記録された未来の交通状況を追加情報として利用し、より適切な走行候補を生成する仕組みである。
一つの場面から64本の走行候補を生成
FPD-Driveは、現在の交通状況から64本の走行候補を生成する。
入力には、四方向のカメラ映像、現在の車両状態、ナビゲーション指示を利用する。
それぞれの走行候補は、将来の車両位置と進行方向を表す8時点の姿勢情報で構成される。
まず、Transformerを利用した軌跡生成器が、64本の大まかな軌跡を出力する。
次に、Diffusion Transformer(DiT)が、それぞれの軌跡を修正する。
ここで重要なのは、最初から完全な走行軌跡を生成しようとしないことである。
まず大まかな候補を生成する。
その後、各候補に対する修正量を学習する。
例えば、ある候補では減速を少し早める。
別の候補では、カーブへの進入位置を調整する。
このように、最初の軌跡を基準として、細かな修正を加える。
研究チームは、この方式をResidual Diffusionと呼んでいる。
Diffusionによって軌跡全体を一から生成するのではなく、既存の軌跡からの差分を生成する。
これによって、複数の候補を効率的に改善する。
64本すべてを正解として学習するわけではない
教師AIは64本の走行候補を生成する。
しかし、そのすべてが安全で適切なわけではない。
例えば、道路の境界を越える軌跡が含まれる可能性がある。
前方車両との衝突につながる軌跡もあり得る。
そこで研究チームは、PDM-Closedという評価器を利用して、各候補を評価する。
安全性などの条件を満たさない候補は除外する。
さらに、安全な候補の中から、互いに異なる走行方法を選び出す。
例えば、ほとんど同じ場所を通る軌跡が何本もあっても、学習できる走行方法の幅は広がらない。
そこで、二つの軌跡の平均的な位置の違いを表すADEを利用する。
選択する軌跡同士には、少なくとも1mの平均位置差を求める。
この条件を満たしながら、評価の高い軌跡を最大4本選択する。
つまり、64本の候補から、安全性と多様性を満たす最大4本を学習対象として選び出す。
ただし、常に4本が選ばれるわけではない。
十分な品質と多様性を満たす候補が少なければ、選択数も減る。
重要なのは、一本の正解軌跡を、複数の安全な走行方法へ拡張することである。
教師AIが作った軌跡を、生徒AIへ移す
次に、教師AIが選び出した複数の走行軌跡を、生徒AIへ学習させる。
生徒AIは、教師AIとは異なり、未来の映像を利用できない。
現在のカメラ映像、車両状態、ナビゲーション指示だけを入力とする。
しかし、学習時には、未来を知る教師AIが選んだ複数の安全な軌跡を正解として利用できる。
ここで研究チームは、教師AIの軌跡と、生徒AIが生成した候補を対応付ける。
例えば、教師AIが四つの異なる軌跡を選んだ場合、生徒AIが生成した64本の候補の中から、それぞれに最も近い候補を割り当てる。
この対応付けには、二部マッチングによる最適化を利用する。
そのうえで、生徒AIの軌跡が教師AIの軌跡へ近づくように学習する。
この方法によって、教師AIが生成した複数の走行方法を、生徒AIの異なる候補へ分担して学習させる。
一つの軌跡だけを模倣する場合と異なり、生徒AIは、同じ交通状況から複数の適切な走行候補を生成するようになる。
複数の安全な軌跡を生成できても、選択を間違えれば意味がない
しかし、FPD-Driveは、複数の軌跡を学習するだけでは終わらない。
研究チームが重視したもう一つの問題が、走行候補の評価である。
例えば、64本の候補の中に、安全な軌跡が10本あったとする。
しかし、AIが危険な軌跡へ最も高いスコアを与えれば、その軌跡を選んでしまう。
つまり、候補を増やすだけでは、安全な走行判断は実現しない。
むしろ、候補が増えるほど、適切な軌跡を選ぶことが難しくなる場合がある。
FPD-Driveは、この問題に対してSafety-Aware Score Correctionを導入した。
これは、走行候補の安全性評価を補正する仕組みである。
特に、二種類の誤りを修正する。
一つは、危険な軌跡を過大評価する誤りである。
もう一つは、安全な軌跡を過小評価する誤りである。