Chatsimはマルチエージェントを使って、自動運転用の3Dシミュレーションデータを生成する技術です。(自動運転の学習データとしても活用できると思います)
最近中国で話題になりましたので、共有したいと思います。
実際自動運転シーンの生成プロセスは、以下のようなイメージです。
ChatSimの最も大きな特徴は、画面の一貫性を保持できることです。
従来の自動運転シミュレーションデータの生成では、主に二つのアプローチがあります。一つは、道路や車などすべての要素の3Dモデルを作成し、自動運転のシーンをツールで模擬する方法です(よく使われているツールとは、CARLA、AirSimなどがあるようです)。もう一つは、画像生成技術で生成する方法です。
それぞれのアプローチには弱点があって、3Dモデルを使用する方法では、時間もかかりますし、解像度も高くないため、現実世界との差異があります。一方、画像生成では、一貫性を保持できないことが課題となっています。同じプロンプトを使用しても、わずかな内容の変更により、生成された画像が前の画像と大きく異なってしまうことは避けられません。
ChatSimは、複数のエージェントにタスクを分担し、それぞれエージェントが担当する生成の部分だけを変更することで、生成される画像の一貫性を保つことができるようになりました。
もう一つはレンダリングに関する進化ですが、これは私もよくわからなかったです。ChatSimは、McNeRFという新しい神経放射場を提案しました。これは、複数のカメラを何らかの方法で調整することで、できるだけ一貫性のあるレンダリングを実現できるような技術らしいです。
⇩はClaude3がMcNeRFに対す解釈
「McNeRFは、複数のカメラアングルから撮影された画像を入力とし、シーンの3D表現を学習します。この3D表現は、連続的な関数で表現されるため、任意のカメラアングルからシーンをレンダリングすることができます。これにより、カメラが移動しても、シーンの見え方が自然で一貫性のあるものになります。」
ChatSimが実際使う時のサンプルもgithub上に載せています。非常に使いやすいようです。
例えば、「視点がゆっくりと前方に移動します。近くの前方に、前に移動している車を追加してください。」と指示すると、⇩のような動画が生成されます。
そして、別の条件を加えて、「追加された車を左折するように修正してください。追加された車の前にもう1台”Chevrolet”を追加してください。」にすると、⇩のような動画が生成されます。ターゲットとなっている車だけが変化し、他のものは全く変わっていません。
「左側に、こちらに向かってくる車を追加してください。」といった指示も可能です
マルチエージェント間のチューニングは非常に複雑であるため、中身はどう設計しているのは論文内で公開されていないですが、github上では近日中にコードを公開したいと書かれていますので、コードが公開されたらどのように実現したのかを確認したいと思います。
興味ある方: