世界のデータを処理できるアーキテクチャの構築

Building architecture to process global data.

PerceiverとPerceiver IOはAIの多目的ツールとして機能します

現在のAIシステムで使用されるほとんどのアーキテクチャは、専門家です。2Dの残差ネットワークは画像の処理には適しているかもしれませんが、自動運転車のLidar信号やロボット工学で使用されるトルクなど、他の種類のデータにはほとんど適していません。さらに、標準的なアーキテクチャは通常、1つのタスクのみを考慮して設計されており、エンジニアは標準的なアーキテクチャが問題を正しく処理できるように、入力と出力を変形、歪曲、またはその他の方法で変更するために苦労することがよくあります。ビデオのように音声や画像から成る複数の種類のデータを扱う場合は、さらに複雑であり、単純なタスクでも多くの異なる部分から構築された複雑な、手作業で調整されたシステムが必要となることが通常です。DeepMindのミッションである科学と人類の進歩のための知能の解決に対して、多種多様な入力と出力を使用する問題を解決できるシステムを構築したいと考えています。そのため、私たちはさまざまな種類のデータを処理できるより一般的で多目的なアーキテクチャを探求し始めました。

図1. Perceiver IOアーキテクチャは、小さな潜在配列を介して入力配列を出力配列にマッピングすることで、非常に大きな入力と出力にも優雅にスケーリングすることができます。Perceiver IOは、さまざまな種類のデータに対して一般化するグローバルな注意メカニズムを使用しています。

ICML 2021(国際機械学習会議)で発表された論文およびarXivでのプレプリントとして公開された論文では、Perceiverという汎用アーキテクチャを紹介しました。Perceiverは、画像、ポイントクラウド、オーディオ、ビデオなどのデータを処理することができます。Perceiverは多くの種類の入力データを処理できますが、分類などのシンプルな出力タスクに限定されていました。arXivでの新しいプレプリントでは、Perceiverアーキテクチャのより一般的なバージョンであるPerceiver IOについて説明しています。Perceiver IOは、さまざまな入力から幅広い種類の出力を生成できるため、言語、ビジョン、マルチモーダル理解などの現実世界のドメインやStarCraft IIなどの難解なゲームにも適用することができます。研究者や機械学習コミュニティ全体のサポートのために、私たちはコードをオープンソース化しました。

図2. Perceiver IOは、まずどの文字に注意を払うかを選択することで言語を処理します。モデルはいくつかの異なる戦略を使用することを学びます:ネットワークの一部は入力の特定の場所に注意を払い、他の部分は句読点などの特定の文字に注意を払います。

PerceiverはTransformerを基にしており、入力を出力にマッピングするために「注意」と呼ばれる操作を使用します。Transformerは、入力のすべての要素を比較することによって、相互の関係とタスクに基づいて入力を処理します。注意はシンプルで広範に適用できますが、Transformerは入力の数が増えるとすぐにコストがかかるように注意を使用します。つまり、Transformerは最大数千の要素を持つ入力に適していますが、画像、ビデオ、書籍などの一般的なデータは簡単に数百万の要素を含むことがあります。元のPerceiverでは、一般的なアーキテクチャの主要な問題を解決しました:Transformerの注意操作をドメイン固有の仮定を導入せずに非常に大きな入力にスケーリングすること。Perceiverは、注意を使用して最初に入力を小さな潜在配列にエンコードすることでこれを実現します。この潜在配列は、入力のサイズに依存しないコストでさらに処理することができ、特に深いモデルにおいても入力の成長に応じてPerceiverのメモリと計算のニーズを優雅に成長させることができます。

図3. Perceiver IOは、光流推定と呼ばれる難しいタスクで最先端の結果を提供します。光流推定は、画像内のすべてのピクセルの動きを追跡することです。各ピクセルの色は、Perceiver IOによって推定された動きの方向と速度を示しています。上記の凡例に示されています。

この「優美な成長」により、Perceiverは画像、3Dポイントクラウド、音声と画像を組み合わせたベンチマークにおいて、ドメイン固有のモデルと競争力を持つ一方、元のPerceiverは入力ごとに1つの出力しか生成しなかったため、研究者が必要とするほど多目的ではありませんでした。Perceiver IOは、注目を利用して潜在的な配列へのエンコードだけでなく、そのデコードにも使用することで、ネットワークに大きな柔軟性をもたらすことで、この問題を修正します。Perceiver IOは現在、大規模で多様な入力と出力にスケーリングし、多くのタスクやデータの種類に対応することができます。これにより、テキストの各文字の意味を理解する、画像内のすべてのポイントの動きを追跡する、ビデオを構成する音声、画像、ラベルを処理する、さらにはゲームをプレイするなど、さまざまなアプリケーションを実現できます。これは、代替手法よりもシンプルな単一のアーキテクチャを使用することで実現されます。

オリジナルPerceiver IO オリジナルPerceiver IO オリジナルPerceiver IO 図4. Perceiver IOは同時に多くのデータの種類を理解することができます。ここでは、モデルが入力ビデオの画像と音声の両方を再構築する様子を示しています。

私たちの実験では、Perceiver IOが言語、ビジョン、マルチモーダルデータ、ゲームなど、幅広いベンチマークドメインで動作することを確認しています。これにより、研究者や実践者が専門化されたシステムを使用してカスタムソリューションを構築するために時間と労力を費やす必要なく、即座に問題を処理するための準備完了の方法を提供します。さまざまな種類のデータを探索することから学び続ける中で、この汎用アーキテクチャをさらに改善し、科学と機械学習全体で問題を解決するための高速かつ簡単な方法にしていくことを期待しています。

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more