高度なグラフニューラルネットワークを使用した交通予測
'Advanced traffic prediction using graph neural networks.'
DeepMindはGoogleと提携することで、AIの利点を世界中の数十億人にもたらすことができます。言語障害のあるユーザーが元の声を取り戻すことから、ユーザーが個別のアプリを見つけるのを助けるまで、私たちはGoogleのスケールで画期的な研究を即座に現実の問題に適用することができます。今日、私たちは最新のパートナーシップの成果を共有できることを嬉しく思っています。Google Mapsを利用する10億人以上の人々に真にグローバルな影響をもたらしています。
Google Mapsとの協力
人々は正確な交通予測と到着予想時間(ETA)にGoogle Mapsを頼っています。これらは特に交通渋滞から迂回する必要がある場合、友人や家族に遅れていることを通知する必要がある場合、重要な会議に間に合うために時間に余裕を持って出発する必要がある場合に特に役立つツールです。これらの機能は、Google Maps Platformを使用して集乗・降車時刻の情報や所要時間に基づいた見積もり価格を提供するライドシェア企業などのビジネスにも役立ちます。
DeepMindの研究者は、Google Mapsチームと協力して、ベルリン、ジャカルタ、サンパウロ、シドニー、東京、ワシントンD.C.などの場所で、グラフニューラルネットワークなどの高度な機械学習技術を使用して、リアルタイムETAの精度を最大で50%向上させました。以下の図に示すように:
Google MapsがETAを予測する方法
ETAを計算するために、Google Mapsは世界中の道路セグメントのライブトラフィックデータを分析します。このデータにより、Google Mapsは現在の交通状況の正確な写真を得ることができますが、ドライバーが運転中に10分、20分、または50分後に見られる交通状況を考慮していません。将来の交通状況を正確に予測するために、Google Mapsはライブトラフィックの状況と世界中の道路の過去の交通パターンを機械学習で組み合わせています。このプロセスはいくつかの理由で複雑です。たとえば、ラッシュアワーは毎朝と夕方必ず発生しますが、ラッシュアワーの正確な時間は日々や月々によって大きく異なる場合があります。道路の品質、速度制限、事故、閉鎖などの追加要素も、予測モデルの複雑さに寄与することがあります。
DeepMindはGoogle Mapsと協力して、世界中のETAの精度を向上させました。Google Mapsの予測ETAは97%以上の旅行に対して一貫して正確でしたが、私たちは残りの不正確さをさらに最小限に抑えるためにチームと協力しました。台中などの都市では50%以上も改善されました。これをグローバルスケールで実現するために、実世界の道路ネットワークの接続構造をモデル化するための関係学習バイアスを取り入れた一般的な機械学習アーキテクチャであるグラフニューラルネットワークを使用しました。以下はその仕組みです:
世界の道路をスーパーセグメントに分割する
私たちは、大量の交通量を共有する隣接する複数の道路セグメントからなる「スーパーセグメント」に道路ネットワークを分割しました。現在、Google Mapsの交通予測システムは次のコンポーネントから構成されています:(1)スーパーセグメントを構築するためにテラバイト単位の交通情報を処理するルートアナライザー、および(2)各スーパーセグメントの所要時間を予測するために最適化された新しいグラフニューラルネットワークモデル。
交通予測のための画期的な機械学習アーキテクチャへの道
スーパーセグメントを使用して移動時間を推定する機械学習システムを作成する際に解決する最大の課題は、アーキテクチャ上の課題です。単一のモデルで動的なサイズの接続セグメントを任意の精度で表現するにはどうすればよいでしょうか?
最初の概念実証では、可能な限り既存の交通システムを使用し、具体的には既存の道路ネットワークのセグメンテーションと関連するリアルタイムデータパイプラインを使用しました。これにより、スーパーセグメントは道路セグメントのセットをカバーし、各セグメントには特定の長さと対応する速度特性がありました。最初に、各スーパーセグメントに対して単一の完全接続型ニューラルネットワークモデルをトレーニングしました。これらの初期結果は有望であり、旅行時間を予測するためにニューラルネットワークを使用する可能性を示しました。ただし、スーパーセグメントの動的なサイズにより、それぞれに別個にトレーニングされたニューラルネットワークモデルが必要でした。これを大規模に展開するためには、数百万のこれらのモデルをトレーニングする必要があり、インフラストラクチャの課題が生じる可能性がありました。これにより、再帰ニューラルネットワーク(RNN)など、可変長シーケンスを扱えるモデルを調査することにしました。ただし、道路ネットワークからさらなる構造を組み込むことは難しいとわかりました。その代わりに、グラフニューラルネットワークを使用することにしました。交通モデリングでは、車が道路ネットワークを通過する方法に興味があり、グラフニューラルネットワークはネットワークのダイナミクスと情報伝播をモデル化することができます。
当社のモデルは、各ルートセグメントがノードに対応し、同じ道路上の連続するセグメントまたは交差点を介して接続されたセグメント間にはエッジが存在するグラフとして、地元の道路ネットワークを扱います。グラフニューラルネットワークでは、ニューラルネットワークによってメッセージとそのエッジおよびノードの状態への影響が学習されるメッセージパッシングアルゴリズムが実行されます。この観点から、当社のスーパーセグメントは、交通密度に比例してランダムにサンプリングされた道路のサブグラフです。したがって、これらのサンプリングされたサブグラフを使用して単一のモデルをトレーニングし、スケールで展開することができます。
グラフニューラルネットワークは、畳み込みニューラルネットワークや再帰ニューラルネットワークによって課せられる学習バイアスを拡張し、”近接性”の概念を一般化することで、任意の複雑な接続を処理する能力を持つようになります。グラフニューラルネットワークでは、隣接するノード同士がメッセージをやり取りします。この構造を保持することで、ノードは隣接ノードに依存することが容易になります(これには1つのメッセージパッシングステップのみが必要です)。これらのメカニズムにより、グラフニューラルネットワークは道路ネットワークの接続構造をより効果的に活用することができます。当社の実験では、メインの道路に含まれない隣接する道路も含めることで、予測力が向上することが示されています。たとえば、側道の渋滞が大きな道路の交通に影響を与えることを考えてください。複数の交差点を跨ぐことで、モデルは曲がり角での遅延、合流による遅延、停止-再開の交通での全体的な所要時間をネイティブに予測する能力を獲得します。グラフニューラルネットワークが組合せ空間上で一般化する能力こそが、当社のモデリング技術のパワーをもたらすものです。それぞれのスーパーセグメントは、長さや複雑さによって異なる場合がありますが、同じグラフニューラルネットワークモデルで処理することができます。
基礎研究から本番用の機械学習モデルへ
アカデミックな環境ではしばしば見落とされるが、本番の機械学習システムにおいて大きな課題の1つは、同じモデルの複数のトレーニングランで存在する大きな変動性です。品質のわずかな違いは、よりアカデミックな環境では単なる初期化の問題として単純に捨てることができますが、これらの小さな不一致は、数百万のユーザー全体で合わせると大きな影響を及ぼす可能性があります。そのため、モデルを本番環境に導入する際には、このトレーニングの変動性に対してグラフニューラルネットワークを頑健にすることが重要なポイントとなりました。トレーニング中に使用されるグラフ構造の変動性が大きいことが不安定性の主な原因です。1つのグラフバッチには、2つのノードから成る小さなグラフから100以上のノードから成る大きなグラフまでさまざまなサイズのグラフが含まれることがあります。
しかし、試行錯誤の末、私たちは教師ありの設定で新しい強化学習技術を適用することで、この問題を解決するアプローチを開発しました。
機械学習システムのトレーニングでは、システムの学習率は、新しい情報に対してどれだけ「可塑性」または変更可能であるかを指定します。研究者はしばしばモデルの学習率を時間の経過とともに減少させることがあります。新しいことを学ぶことと既に学んだ重要な特徴を忘れることとのトレードオフは、子供から大人への進化と似ています。私たちは最初に指数的に減衰する学習率スケジュールを使用してパラメータを安定させました。また、以前の研究で効果が証明されているモデルアンサンブル技術を探求し、トレーニングラン間のモデルの分散を減らすことができるかどうかを分析しました。
結果として、この問題への最も成功したアプローチは、MetaGradientsを使用してトレーニング中に学習率を動的に適応させることでした。トレーニング中に学習率を自動的に適応させることで、モデルは以前よりも高い品質を達成するだけでなく、学習率を自動的に減少させることを学びました。これにより、より安定した結果が得られ、私たちは新しいアーキテクチャを本番環境で使用することができました。
カスタマイズされた損失関数によるモデルの汎化
当社のモデリングシステムの究極の目標は、旅行の見積もりの誤差を減らすことですが、複数の損失関数の線形結合(適切に重み付け)を使用することで、モデルの汎化能力を大幅に向上させることがわかりました。具体的には、モデルの重みに対する正則化項、グローバルトラバーサルタイムのL_2およびL_1損失、およびグラフ内の各ノードに対するHuber損失と負の対数尤度(NLL)損失を使用したマルチロス目的を定式化しました。これらの損失を組み合わせることで、モデルを誘導し、トレーニングデータセットでの過学習を回避することができました。トレーニング時の品質の測定は変わりませんでしたが、トレーニング中の改善が持ち出しテストセットやエンドツーエンドの実験に直接反映されるようになりました。
現在、MetaGradientテクニックが、トレーニング中にマルチコンポーネントの損失関数の構成を変化させるためにも使用できるかどうかを探っています。この研究では、旅行推定誤差の削減をガイドとするメトリックを使用しています。この研究は、強化学習で成功を収めたMetaGradientの取り組みに触発されており、初期の実験では有望な結果が示されています。
協力
Google Mapsチームとの緊密かつ実りある協力のおかげで、これらの革新的で新しく開発された技術を大規模に適用することができました。一緒に、研究上の課題だけでなく、製品化やスケーラビリティの問題も乗り越えることができました。最終的なモデルと技術は、世界中のGoogle MapsおよびGoogle Maps Platform APIのETAの精度向上につながり、成功したローンチを実現しました。
Googleのスケールで最先端の研究を行うことは、独特の一連の課題を提供します。もし、グラフニューラルネットワークなどの最先端の技術を用いて現実の問題に取り組むことに興味がある場合は、こちらでこれらの問題に取り組んでいるチームについて詳しく学びましょう。
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles