OpenAIのワンショット模倣学習への新しいアプローチ、AIの未来を垣間見る

ワンショット模倣学習Yan Duan、Marcin Andrychowicz、Bradly C. Stadie、Jonathan Ho、Jonas Schneider、Ilya Sutskever、Pieter Abbeel、Wojciech Zaremba

5月16日、OpenAIの研究者たちは、プロジェクトの1つのビデオと、現在のAI開発の3つの主要なボトルネック(メタ学習、ワンショット学習、自動データ生成)の解決策を探る重要な2つの論文を共有しました。 前回の投稿で、単発学習の魅力的な問題に特化した記事を約束したので、ここにいきます。 最初に、彼らがリリースしたビデオを見て、彼らのすばらしい作品を説明します。

このビデオでは、1本の腕からなるロボットが互いの上に立方体を積み重ねています。 産業用ロボットが現在実行できる複雑なタスクを知っている場合、もし研究者が何が起こっているのかを説明しようとしていなかった場合、多くのアカウントでこれは非常に圧倒されるでしょう。 制御された環境では、タスクはシンプルで手続き型(ハードコード)のアプローチでこの問題をすでに解決しています。有望で革新的なのは、その下にある一般的なフレームワークがノイズの多い環境で複数のより複雑で適応的な動作にどれだけ拡張できるかです。

人間と高等動物の間の心の違いは、確かに素晴らしいですが、確かに程度の違いであり、種類の違いではありません。
- チャールス・ダーウィン

類推すると、この記事は、現在具体化されているAI(物理システムの人工知能)と22世紀のロボットとの間の認知システムの違いが、規模の1つであり、種類ではないことを示す強力な証拠です。 2012年のImageNet競争*以来、ディープラーニングの研究は急成長しており、ニューラルネットワークによって行われる分散計算の性質を変更するためではなく、特定のタスクを学習するためにネットワークを構造化する新しい方法を見つけることによって行われています。 ニューラルネットワーク機能が構造の場合、この構造はハードコーディングされていません(手動で設計されていません)が、最初に入力と出力の間に接続された原子計算ユニットの結果であり、それらの構造と接続を変更できます。 特定の機能を学習するのは、ネットワークの全体的な構造を変更することです。

この記事では、エージェントをトレーニングしてタスクを抽象的な方法で表すことができる一般的なフレームワークを構築し、新しいタスクの1回のデモン​​ストレーション(ワンショットの模倣学習)後にこの知識を新しい目に見えないタスクに転送する方法(転移学習)を学習しました。

タスク

正確なアーキテクチャの実装は異なりますが、一般的なアプローチのパフォーマンスを示す例として2つのタスクを採用しています。

粒子到達

最初の例では、システムは平面上の色付きのターゲット位置の入力と、指定されたターゲットに移動するシミュレートされたエージェントの単一のビデオデモを受け取ります。

図2.ロボットは、2次元の力で制御される点質量です。 タスクのファミリーは、目標のランドマークに到達することです。 ランドマークのアイデンティティはタスクごとに異なり、モデルはデモンストレーションに基づいてどのターゲットを追跡するかを把握する必要があります。 (左)ロボットのイラスト。 (中央)タスクはオレンジ色のボックスに到達すること、(右)タスクは緑の三角形に到達することです。

トレーニング中、システムは同じタスク(オレンジ色に到達)を再現する必要がありますが、ロボットとターゲットの開始位置は異なります。 テスト中にエージェントがテストされたのは、トレーニングされたタスク(オレンジ色に達する)か、以前に見たことのないタスク(たとえば、緑に達する)か、またはその両方かです。

トレーニングされたポリシーは、新しいシナリオで評価され、トレーニング中に見られなかった新しいデモの軌跡を条件とします。

エージェントが一意のデモンストレーションから目標ターゲットを推測し、別の構成から再び開始する必要があるのは確かです。 これは、正確なモーターシーケンスがテスト前に学習できなかったことを意味し、タスクとモーター計画の抽象化(高レベルの構造化表現)から推測する必要があります。

ブロックスタッキング

2番目の例では、エージェントは、立方体(異なる色で識別される)を、単一のシミュレートされたデモで示されているのと同じ順序でスタックすることを学ぶ必要があります。 このシミュレートされたデモンストレーションは、3D物理エンジンによって生成された一連の2D画像であり、ロボットのモーターと感覚装置の特性がモデル化されています。

ワンショットポリシー。 多くのタスクを解決するためにトレーニングされた単一のポリシー。 一番上のタスク:{abc、def}、一番下のタスク:{ab、cd、ef}

どちらの例でも、デモンストレーションと実際のテストでのキューブの初期位置は異なり、各タスクは別の初期位置から開始しています。 ロボットは、立方体を入れ替えてデモンストレーションの初期位置と一致させようとはせず、立方体がどのような状態で開始しても、立方体を積み上げるという高レベルのタスクを転送します。

ドメインのランダム化を使用したトレーニング

どちらの場合も、トレーニング中に使用されるすべての画像は、サンプルの以下の側面をランダム化するドメインランダム化を使用したシミュレーションによって取得されます。

テーブル上のディストラクタオブジェクトの数と形状テーブル上のすべてのオブジェクトの位置とテクスチャテーブル、床、スカイボックス、およびロボットのテクスチャカメラの位置、方向、および視野シーン内のライトの数位置、方向、ライトのスペキュラ特性と画像に追加されたランダムノイズのタイプと量

粒子到達のトレーニングセット

ランドマークの数が2から10に増加する、ますます困難になるタスクファミリのセットを検討します。各タスクファミリについて、ランドマークの位置とポイントロボットの開始位置がランダム化された、トレーニング用の10000の軌跡を収集します。 ハードコーディングされたエキスパートポリシーを使用して、デモを効率的に生成します。 計算されたアクションを環境に適用する前に摂動させることにより、軌道にノイズを追加し、シンプルな行動クローンを使用してニューラルネットワークポリシーをトレーニングします

ブロックスタッキングのトレーニングセット

具体的には、140個のトレーニングタスクと43個のテストタスクを収集し、それぞれにブロックの望ましいレイアウトを設定します。 各タスクのブロック数は2から10の間で変動します。トレーニングのためにタスクごとに1000の軌跡を収集し、評価に使用する個別の一連の軌跡と初期構成を維持します。 粒子到達タスクと同様に、軌道収集プロセスにノイズを注入します。 軌跡は、ハードコードされたポリシーを使用して収集されます。

成功したデモは、ハードコードされたポリシーを使用して収集されます

学習中に、正しい軌跡は手続き型の「ハードコードされた」ポリシーによって生成されることに注意してください。これは、システムの識別と制御の古典的な手法に依存していると思います。 したがって、トレーニングとテストの間、エージェントには2つの入力があります。a)構成Aでのデモンストレーション、およびb)開始構成B。トレーニング中のみ、学習アルゴリズムは理想的な応答にもアクセスできます。構成Bから開始する軌道問題に答え、学習中にエージェントの応答を比較します。これを教師あり学習問題にします。

各トレーニングタスクでは、一連の成功したデモンストレーションが利用可能であると想定しています。

明確でない場合は、次のセクションでさまざまな種類の学習パラダイムの違いについて説明します。

最適化アルゴリズムと損失関数

教師あり学習とは、各決定においてネットワークがユーザーが行ったはずの正しい選択にアクセスできるようにするトレーニングパラダイムのことであり、したがってエラーの概念です。 たとえば、犬と猫の分類タスクでは、トレーニング中の犬と猫の画像のラベルが事前にわかっており、エラーがすぐに検出されます。 その意味では、監視されていない学習とは異なります。一般的に、エージェントは受け取った入力で以前は不明だった構造を見つけるように求められ、猫と犬のラベルがないと、次のものだけに基づいて異なるオブジェクトの2つのクラスターがあることを発見する必要があります。データに含まれる情報。 強化学習とは異なり、ゴールに至る決定の正確なシーケンスは不明ですが、最終的な「報酬」だけがシーケンスが正しいかどうかを決定するリアルタイムシステムによく適用されます。 彼らは模倣学習を使用することにより、古典的な強化学習問題を監視された学習問題に変換します。この問題では、観測された軌道までの距離からエラーが計算されます。

監視対象のトレーニング設定の場合と同様に、手元のタスクは損失関数によって完全に定義されます。損失関数は、エージェントが意図された動作からどれだけ離れていたかを定量化することを目的としています。 この関数の定義は、最適化アルゴリズムがモデルのパラメーターを更新する方法を決定するため、多くの場合重要なステップです。 これらのアルゴリズムは、計算時間の点で重要であり、収束するとしても、調整が必要な場合があります。 実際、非常に高い次元で関数を最小化する解は、パラメーター空間の非常に小さなシェルに存在し、それらの間のハミング距離は小さく、その小さな領域から離れるとすぐに、解の間の距離が急速に大きくなります。 非常に驚くべきジェニファー・チェイスによって他の人の間でなされたその主題に関する非常に興味深い仕事がたくさんあります、彼女はトーキング・マシンの最後のエピソードで非常に興味深いインタビューで主題をブラッシングします。

ポリシーネットワーク(ネットワーク全体、どのアクションを実行するかを入力から決定できる)のトレーニング中に、最初に成功したデモの軌道を処理します。 この部分では、2つのアプローチを比較します。これは、従来の行動クローン作成(使用した実装が正確にわからない)とDAGGERアルゴリズムです。 これにより、アクションが連続的であるか離散的であるかに基づいて(シーケンス内のイベントの分布に基づいて)、l2またはクロスエントロピー損失による損失関数の反復最小化が可能になります。 すべての実験で、Adamaxアルゴリズムを使用して、学習率0.001で最適化を実行しました。

ステップサイズは小さく始まり、指数関数的に減衰します。

アルゴリズム自体は転送を許可していません。転送を可能にするのは、トレーニングセットと損失関数を構築する方法です。

タスクには2種類の転送が存在します。 最初の種類は「現実のギャップを埋める」と呼ばれ、シミュレーションの入力のトレーニングから自然刺激のテストへの移行を可能にする学習の一般化です。 シミュレーションデータは、多くの場合、現実世界の貧弱な近似であり、完全すぎて、実際のオブジェクトの複雑さに欠けています。 現実の世界では、カメラに欠陥がありノイズが多い、モーターコントロールの精度が低下する、色が変化する、テクスチャが豊かになるなどです。この最初の転送を可能にするために、「ドメインのランダム化」と呼ばれる方法を使用します:入力にノイズを追加することにより、ネットワークは、現実世界に適切に一般化できるようにする共通の関連構造を学習できます。 たとえば、トレーニングの例の間でカメラの角度を変更したり、テクスチャを変更したり、軌跡の完全性を低下させます。 トレーニング中にノイズを追加することにより、堅牢性を追加します。

ここでテストされた2番目の転送は、別の初期構成で始まる単一のデモンストレーションに基づいて、以前は見られなかった構成と目標のセットで関連するモーターシーケンスを生成する機能ですが、同様の最終目標があります。 ここでも転送は、トレーニングセットを構築し、損失関数をモデル化する方法によって可能になります。 トレーニング中に同じ初期条件から開始して同様の目標に到達しないデモンストレーションを提示することにより、ネットワークは、絶対位置を使用せずに目標のより高レベルの表現と、単なる模倣ではないモーターシーケンス。 素朴な初期アーキテクチャでは、適切な方法で構造を変更するトレーニングが可能であり、このトレーニングされた構造は最終的な関数を意味します。

目的

ブロックスタッキングパラダイムについては、学習エージェントに満たしてもらいたいいくつかの制約がありました。

ブロックの数が異なるタスクインスタンスに簡単に適用できるはずです。
同じタスクの異なる順列に自然に一般化する必要があります。 たとえば、ポリシーは、タスク{abcd}でのみトレーニングされている場合でも、タスク{dcba}で適切に実行されます。
可変長のデモンストレーションに対応する必要があります。

彼らは、この課題に答えたいいくつかの質問を持っていました。

十分なデータをオフラインで収集できる場合、行動クローニングを使用したトレーニングはDAGGERとどのように比較されますか?
最終的な構成にタスクを完全に指定するのに十分な情報がある場合でも、デモ全体の条件付けは、最終的に望ましい構成の条件付けとどのように比較されますか?
デモ全体の条件付けは、最も有益なフレームの小さなサブセットである軌道の「スナップショット」の条件付けとどのように比較されますか。
私たちのフレームワークは、トレーニング中に見たことのない種類のタスクにうまく一般化できますか? (++)
メソッドの現在の制限は何ですか?

建築

粒子到達

この最初の例では、Long Short Term Memory(LSTM)ニューラルネットワークに基づいた3つのアーキテクチャを比較しました。 これらのネットワークの説明は、記憶と注意についての今後の投稿で取り上げられます。これらは、認知科学と計算科学の両方で絶対に魅力的な主題です。 本質的に、LSTMは以前のネットワーク出力(時間内)を新しい各時点でのネットワークの入力の一部として供給し、過去の状態の情報から現在(したがって、短期記憶ネットワークの名前)を通知できるようにします。 これらは、時系列を処理する多くの最先端技術(Alexa、Siriなど)の根底にあります。

ここでは、これらの3つの特定の条件を使用します。

  1. プレーンなLSTM:軌道と現在の状態を埋め込んで、モーターアクションを生成する多層パーセプトロンにフィードする方法を学習します。
  2. 注意を払ったLSTM:軌道のランドマークに加重表現を生成します
  3. 注意を伴う最終状態:以前のアーキテクチャと同様に、ランドマークに対する重み付けを生成するために最終状態のみのトレーニングで使用します

ブロックスタッキング

原則として、一般的なニューラルネットワークは、デモンストレーションと現在の観測から適切なアクションへのマッピングを学習できますが、適切なアーキテクチャを使用することが重要であることがわかりました。 ブロックスタッキングを学習するためのアーキテクチャは、このホワイトペーパーの主な貢献の1つであり、これは、より複雑なタスクの1回限りの模倣学習のアーキテクチャが将来どのようになるかを表すものであると考えています。

注意モジュール

記事は、タスクを学習するために使用されるネットワークの構造を説明する上で比較的高いレベルのままです。 アーキテクチャの重要な要素はアテンションモジュールですが、この主題には、その本質的な役割を詳しく調査する特定の投稿が必要だと思います。 持続的注意の認知科学の概念に類似して、注意モジュールは、空間と時間のさまざまなスパンにわたって含まれる関連情報を維持し、それに焦点を合わせるために使用されます。 時間と空間に引き伸ばされた情報コンテンツの埋め込みを含む固定サイズの出力を生成します。 トポロジーの類推から、私が将来の分散表現をどのように理解するかを大いに知ると私が信じる数学の分岐である、注意ネットワークは、情報、同じ曲率、異なる形状のトポロジー同型を実行します。 これらのネットワークは、神経科学における注意の概念に関連する機能である、予期しないまたはまれなイベントに焦点を合わせることができる顕著性検出器の役割を果たしていないことに注意してください。

ここでは、2つのタイプのアテンションネットワークを使用します。a)メモリに格納されたコンテンツ(クエリ、コンテキスト、メモリベクトル)に加重和を生成する時間的アテンションネットワーク、およびb)ブロックに関連する情報を回復できる近隣アテンションネットワークエージェントの現在のクエリに応じた位置。

時間的注意ネットワーク、c:コンテキストベクトル、m:メモリベクトル、q:クエリベクトル、v:学習ベクトルの重み。 出力は、メモリベクトルと同じサイズです。 これは、一部のメモリベクトルがコンテキストおよびクエリベクトルに基づいて出力にさらに影響を与えることを可能にする、これらのベクトルの線形結合です。ここでも同じ考え方で、空間情報間の競争は注意システムによって動的に維持されます。

政策ネットワーク

完全なネットワークは、デモネットワーク、コンテキストネットワーク、操作ネットワークの3つの異なるサブネットワークで構成されています。

デモンストレーションネットワークは、デモンストレーションの軌跡を入力として受け取り、ポリシーで使用されるデモンストレーションの埋め込みを生成します。 この埋め込みのサイズは、デモンストレーションの長さと環境内のブロック数の関数として直線的に増加します。

ここに示すように、デモンストレーションネットワークは、さまざまな複雑さとサイズのデモンストレーションを、コンテキストネットワークがタスクを表すために使用する一般的な形式に埋め込むことができます。 一般化が発生するのはおそらくこのレベルです。デモンストレーションの埋め込みでは、デモンストレーション中に見られる正確な軌道と立方体の絶対位置に関する情報を除外する必要があります。

コンテキストネットワークの構造を見ると、非常に高いレベルからではありますが、デモの埋め込みが中央の時間注意モジュールに供給されているデモネットワークとのインターフェースがわかります。 また、以前のアクション(LSTM)と現在の状態が、モーターネットワークに送信されるグローバルコンテキストの埋め込みを生成するためのデモの埋め込みと連結された入力として供給されることもわかります。

ネットワーク機能に関する彼らの説明は、私の意見では、この論文の最も重要な部分です。

コンテキストネットワークは、現在の状態の関数としてクエリベクトルを計算することから始まります。これは、デモの埋め込みのさまざまなタイムステップに参加するために使用されます。 同じタイムステップ内の異なるブロックのアテンションウェイトは合計され、タイムステップごとに1つのウェイトが生成されます。 この一時的な注意の結果は、サイズが環境内のブロックの数に比例するベクトルです。 次に、近隣の注意を適用して、各ブロックの埋め込み全体に情報を伝播します。 このプロセスは複数回繰り返され、重み付けされていないLSTMセルを使用して状態が進められます。
前の一連の操作では、サイズがデモンストレーションの長さとは無関係ですが、ブロック数に依存する埋め込みが生成されます。 次に、標準のソフトアテンションを適用して固定次元ベクトルを生成します。メモリの内容は、ロボットの状態と一緒に操作ネットワークに渡される入力を形成する各ブロックの位置のみで構成されます。
直感的には、環境内のオブジェクトの数は異なる場合がありますが、操作操作の各段階で、関連するオブジェクトの数は少なく、通常は固定されています。 特にブロックスタッキング環境では、ロボットは、ピックアップしようとしているブロック(ソースブロック)の位置と、上に配置しようとしているブロックの位置(ターゲットブロック)。 したがって、適切にトレーニングされたネットワークは、現在の状態をデモンストレーションの対応するステージと一致させることを学習し、ソースおよびターゲットブロックのIDをさまざまなブロックのソフトアテンションウェイトとして表現し、それらを使用して対応する位置を抽出します。操作ネットワークに渡されます。

彼らが彼らの説明を終える方法は、エキスパートシステムアプローチから学習システムアプローチへのAI研究の現在のドリフトの完璧な例であり、それはまた、脳がどのように進化したかについての議論を示唆しています。

トレーニングではこの解釈を強制しませんが、実験分析は、学習したポリシーが内部でどのように機能するかについてのこの解釈をサポートします。

彼らはそれがどのように機能するか知りません! 彼らは、特定の計算を実行し、アプリオリに有用であると考える特定の情報を格納できる構造を構築し、構造全体が学習することを期待してトレーニングセットに供給します! ヒューリスティック探索を正しい方向に向ける方法として、一種の人工知能研究のブードゥー、アートがあります。 そして、それらのマジシャンの多くが現在openAIのために働いているようです。

彼ら自身の言葉では、操作ネットワークは最も単純な構造であり、多層パーセプトロンに供給されるコンテキストの埋め込みから、モーターアクションが生成されます。

結果

結果は、私があまり興味を示さない部分であることが多く、特に驚くほど素晴らしい技術論文の場合はそうです。 このアプローチが機能し、ハードコードされた専門家のポリシーと同様の精度で実行され、それらの特定の手続き型アプローチとは対照的に、さまざまなタスクに一般化できるということを踏まえて、私は速く進みます。

粒子到達

ブロックスタッキング

これらの実験では、さまざまな条件もテストしました。 DAGGERを使用して、実証された軌道をダウンサンプリングすることにより、3つの異なる入力条件を比較しました:完全な軌道、軌道のスナップショット、または最終状態のみの使用。 彼らはまた、行動クローニングアルゴリズムをデモンストレーションの完全な軌道と比較しました。

キューブアイデンティティを一般化するシステム機能の強力な証拠

討論

過去数か月のOpenAIによる急速な進歩を読んで、彼らの仕事について話し、彼らの仕事と私が信じていること、そしてAI分野全体の進歩についての私の考えを共有したいという強い衝動を感じ、生物学的脳が働きます。 特に、人間間で見かけ上共有されている認知機能は、タスクを実行する方法を生得的に知っている共有構造によるものではなく、同じ環境に直面した比較的類似した単純な構造の結果であるという、この成長しているアイデアは、同様のタスクを実行することを学びます。 関数は、特定の環境のために特定のタスクのみを学習できる機能のない構造の結果であり、ネイティブにタスクを実行できる構造ではなく、いくつかのパラメーターを微調整するだけで環境に適応します。

タスクと構成:一見恣意的な定義

彼らがなぜ彼らがしたように異なる仕事について話すことを選んだのか私には理解できないことを認めなければなりません。 タスクは、ブロックスタッキング実験で、ブロックの相対的な位置を表す文字列のセットとして定義されます。セット内の要素の数は、スタックの数と配置する必要のあるブロックの数の文字数を定義します。 。 したがって、タスクは、スタックの絶対位置に関係なく、スタック内のブロックの配置です。

一部のブロックはテーブル上にある可能性がありますが、タスクの一部ではありません

個別のタスクの基準として相対位置とスタック数を定義するという彼らの選択は、恣意的であるようです。 実際、ブロックの絶対的な開始位置(構成と呼ばれるもの)に基づいてさまざまなタスクについて話すことも意味があります。 問題の一般的な性質は彼らには明らかであると私は信じていますが、明確にするために、彼らは詳細には触れないことを好みます。 ポリシーの学習を2つのタイプの一般化としてフレーム化する方が理にかなっています。

汎化は複数のレベルで評価されることに注意してください。学習したポリシーは、すでに見られているタスクの新しい構成と新しいデモに一般化する必要があるだけでなく、新しいタスクに一般化する必要もあります。

「タスク」を「スタック順序」に置き換えるだけです。 タスクを正しく学習することは、エージェントが、キューブの位置(構成)だけでなく、それらのアイデンティティ(タスク)、スタックの数(タスク)、およびデモンストレーションの軌跡(簡単に紹介)を抽象化できる埋め込みを学習することを意味します引用)関連する運動応答を生成する。

これらの一般化は矛盾しているように見えますが、同じネットワークがキューブの初期構成またはそれらのアイデンティティを抽象化し、さらにモーター応答の絶対位置をどのように回復できるでしょうか。

これは、学習中のさまざまな協調サブネットワークの必要性を説明し、さまざまな入力を受け取ります。また、コンテキストネットワークでは、タスクの抽象的な表現に、キューブの絶対位置などの下位情報が降順コマンドの前に提供されることを説明します。

このタスクと構成の違いについてのコメントはばかげていると思うかもしれませんが、異なるオブジェクトでの抽象化のプロセスは本質的に同じであることを理解することが重要です(これは次のセクションで開きます)。

不変性なくして学習はありません

転移学習は、インシリコであろうと生体内であろうと、おそらく最も魅力的な認知の概念であり、AI研究者と神経科学者の両方にとって非常にホットなトピックであり、私の博士論文のテーマです。 機械学習の前に、密接に関連する概念が多くの分野で検討されており、この抽象的で常に部分的に定義されている概念には多くの名前があります。 哲学者、人類学者、社会学者はそれを(ポスト)構造主義(Claude Levi-Strauss、Michel Foucault)と呼ぶかもしれません。言語学者はSyntagmaとネストされたツリー構造(Noam Chomsky)について話します。研究者や神経科学者はそれを構造学習と呼ぶかもしれません。 また、表現学習やメタ学習などの機械学習の分野で関連する概念を目にすることもあります。著者によっては、転移学習または転移学習の実行に使用される学習パラダイムを指す場合があります。 ディープニューラルネットワークについて話すとき、これらの違いはぼやけています。本質的に、ニューラルネットは、通常、トランスファーラーニングの形を意味するノイズの多い環境でその構造を変更(メタラーニング)することにより、特定の問題(表現ラーニング)を埋め込むことを学習しています。

AI研究者と認知科学者はしばしば転移学習の非常に具体的な定義を持っています。これは、システムが特定のタスクで取得した知識を使用して、共通の構成構造を共有する別のタスクを実行できるようにするプロセスです(記事で説明)。 認知科学では、2つのタスクがどのように異なっているように見えるかに応じて、ニアトランスファーとファートランスファーのこの概念があります。 しかし、より抽象的な観点から見ると、騒々しく複雑な環境では、すべての学習は転移学習の一種であり、転移が非常に近い場合と非常に遠い場合の違いは、共有情報の問題のみであり、規模の問題ではありません。

制御された環境では、ハードコーディングされた現実の離散化を構築するための努力が事前に行われますが、実際、この離散化は転移学習が行うことを手続き的に再現し、共通の囲い構造の下で実際に見られる無限の状態のセットを統合します。 本質的に、転移学習は、直接または拡張によって、学習エージェントが不変量を使用して世界のモデルを構築するプロセスを指します。 これは、類似性、反復、およびバリエーションを使用して、入力によって分散スパン全体で集団を構造化する、ますます抽象的で構成された表現を形成するプロセスです。 一般的な意味では、これは、数学の場合と同じように、情報グループを操作するための基本的な演算を作成することを可能にします。 アイデンティティを許可し、オブジェクトを分類する能力を説明します。 Josh Tenembaumが実際に私に話しかけた例を挙げます。2歳の子供に初めて馬を認識するように教えていると想像してください。異なる馬の写真をいくつか見せてから、別の馬の写真を見せて、家の写真を見て、どれが馬かを教えてもらいます。 子供はこのタスクを非常に簡単に行うことができますが、それでもコンピュータが入力が少ないとうまくできないものです(ワンショット学習)。

子供はどのようにそれをしましたか?

動物の認識は子供で研究されており、オブジェクトを関連する部分に分解する能力、毛皮の色の範囲、首のサイズ、全体的な形状などに関連しています。この能力は、ドアを開けることもできますこれまでに見たことがない、あなたはあらゆる状況に一般化する運動シーケンス(ドメインの一般化)を学びました。 これは、世界を簡素化する説明モデルの構築にも使用します。有名なスイスの時計にカッコウが突然出現したことに最初は驚かれるかもしれませんが、2番目の登場後はそれを期待します。 不変性を見つけることはニューラルネットワークが学習する方法であり、それらのモデルは無意識に構築されます。 例としては、数学や数字を聞く前でも、物理学について直感的に学ぶ方法があります。

たとえば、微小重力で生まれた子供が地球の重力にどれだけ速く適応し、オブジェクトが落下すると地面に落下することを直感的に学習できるでしょうか。

幼児やほとんどの動物は、犬の足に靴下をはめて新しい情報に適応するのに時間がかかるのと同じように、無意識のうちにモデルを修正すると仮定するかもしれません。

しかし、幼い子供にとっては、好奇心から言語、象徴、信念を通して、意識的な尋問と彼の直感的なモデルの修正が行われます。 モデルを意識的に調べて変更する私たちの能力は魅力的です。そして補足として、プロセスを言語化できる唯一の種は人間かもしれませんが、他の種は同様の意識的な修正を行うかもしれません。

不変性は時間の義務的な特性であり、すべてが常に新しいものであり、決して予測できない場合でも、すべてが常に新しく予測不可能なという、このユニークな不変式が残っています。 不変性のない世界を想像することは不可能です。なぜなら、不変性のない人生は不可能であり、私たちの脳は役に立たないからです。 生命は、予測可能な事象の繰り返し、原因と結果の繰り返し、生物へのエネルギーの周期的な再導入によってのみ機能する機械です。 そして、これらの必要なサイクルの使用を改善するというライフの探求において、私たちの脳は究極のツールです。 これは予測マシンであり、繰り返しを動的に見つけ、それを使用して世界とのより良い相互作用を行うことができる適応器官です。

生命が選んだこの方法は、構造のわずかな変化に対して非常に堅牢です。 同じままであるのは、世界、環境の統計的特性ですが、それに遭遇する神経構造は、処理するために進化した関連情報を埋め込むことができる限り、変化する可能性があります。 これは、私たちの脳が個人ごとに、さらには一次皮質でさえ非常に異なっていても、同じ機能を共有できる理由を説明しています。

神経系は順応性があり、進化を必要とせず、適切な方法で行動を変えるために遺伝子変異を遅らせます。 C. Elegansに見られるような単純な神経系は、生来の内部コーディネーターおよび外部センサーとして機能します。食べ物を感知し、それに向かって移動し、痛みから逃げ、再現します。 これらの単純なシステムは当初は厳格で、非常にノイズの多い世界の極端な近似を実行して、考えられる少数の状態(左側の食品、下の熱など)で離散化しました。 私たちの運動能力と感覚能力は、神経系の予測能力と連動して進化しました。 私たちのセンサーがより正確になるにつれて、神経系はゆっくりとその構造を変更して情報を保存し、経験から学ぶことができるようになりました。 当初、匂いの種類や光のパターンなど、特定のカテゴリの入力を認識することを学ぶことができるようになりました。また、試行錯誤を通じて、ますます複雑になるモーターシステムを制御することもできるようになりました。 世界は非常に複雑であるため、私たちの脳は生来の手続き型アプローチではなく、学習パラダイムに向かって自然に進化しました。 計算上これは完全に理にかなっています。Goの単純なゲームの状態空間は、宇宙の原子数(10⁸⁰)よりもはるかに大きく(2⁸⁰10、)、生物がより複雑になるにつれて、可能なすべての近似をハードコードしようとします。組み合わせ爆発により急速に扱いにくくなる可能性があると述べています。

一部の人々は、私たちの脳は、それが進化しようとしている空間を本質的に表すような方法で構築されていると信じているかもしれません、DNAのどこかに、顔を構成するもの、または音波の時間的組織の遺伝子があるということです言葉を上げる。 彼らは、この生まれながらの知識が出生時にどこかにエンコードされていると信じているかもしれません。 他の人は、私が高校にいたときの私の哲学の教師のように、その存在は本質に先行し、私たちの脳は生物と世界の出会いによって完全かつ独占的に定義されると信じているかもしれません。 現実はもちろんより複雑であり、これまでに研究されてきたほとんどの終脳システムでは、脳は実行する機能を本質的にエンコードしませんが、入力に含まれる情報に応じてそれを学習します。 関連情報の入力が不十分である場合、それらの構造で学習する能力には有効期限がある場合があります(例:弱視)。 しかし、生来の構造が最終的な機能をエンコードしない場合、脳は特定の構造を持っています。 この構造は個人間で維持され、同じ種の個人は共通の機能と意欲を共有します。 DNAは、特定の構造を適切に設定します。その構造は、最終的な機能を本質的に実行することはできませんが、個々の経験に基づいて特定のタスクの複雑さを学習することができます。 進化が脳を体の残りの部分から分離する非常に効果的な血液脳関門、ならびに髄膜およびそれを外界から保護する硬い骨の殻の出現につながったことは驚くべきことではありません。構造はゲノムにエンコードされているため、訓練された脳の構造は、元々保存されているモデルから再生成できません。 興味深いのは、ますます複雑になるタスクを実行するますます複雑になるディープネットワークの開発を通じて、類推によって同じ学習メカニズムが発生することです。

構成構造は見づらいがどこにでもある

余談ですが、著者たちでさえ、ターゲット到達の最初のタスクが構成的な構造を持っていることを認識していないのは奇妙です。

粒子到達タスクは、単純化されたシナリオでの一般化における課題をうまく示しています。 ただし、タスクは構成構造を共有しないため、新しいタスクへの一般化の評価は困難になります。

構造は確かにブロックスタッキングよりも低いレベルであり、実験操作にすぐにアクセスすることはできませんが、タスクは実際には共有構造で構成されています。 世界を平面に近似すると、1つの構成構造は、変換によってキューブの同一性(色)が保持され、位置(Xa1、Ya1)のブロックAまたはランダムな開始位置から位置(Xb1、Yb2)のブロックBに移動します。 )は、位置(Xa2、Ya2)のブロックAから位置(Xb2、Yb2)のブロックBに行くよりも、同じ高次構成構造の一部です。

ネットワーク間のインターフェース

異なる抽象化レベルで入力を処理できるニューラルネットワークの拡張には、インターフェイスが必要になります。これは、発見する余地がまだまだあると私が信じているドメインです。 これらのインターフェースは、多くの性質を持つことができます。 それらは、たとえば、記事で示されているように、2つのネットワーク間の共通言語と見なすことができます。アテンションシステム(デモネットワーク)で武装した下位レベルのネットワークは、別のネットワーク(コンテキストネットワーク)が使用できる表現でデモを変換できます。デモの長さや初期構成に関係なく、アクションを指示します。

この言語の表面はここではサイズが固定された平面ですが、ネットワーク間の通信を改善できる可能性のある変更を想像できます。 たとえば、表面のサイズは、ネットワークが学習中に相互作用するときに動的に拡大または縮小するように設定でき、それによって言語の複雑さを圧縮または拡張します。 たとえば、フィードバックを通じて、より動的な相互作用を想像することもできます。 2番目のネットワークの入力と出力に基づいて1番目のネットワークの入力を変調することを学習する並列ネットワークとして存在する、ネットワーク間の円滑な通信を学習するファシリテーターネットワークの存在を想像できます。 複数のより専門的なネットワークへの強壮剤(ゆっくり変化)の流入として機能する複雑なコンテキストネットワークを想像できます…研究の魅力的な将来の領域!

失敗のケースは、新しいモジュールが持つ可能性のある役割を示唆しています

エラーはしばしばモーターのミスが原因であり、ミスの数はタスクの複雑さとともに増加することは注目に値します。

ターゲットの数を増やすだけで運動機能を低下させるべきではありません。これは、生殖ネットワークが運動ネットワークと話すことを学習する方法があまりに抽象的であることを強く示しています。 彼らのテストは、コンテキストネットワークとモーターネットワークの間のインターフェースが比較的具体的(ロボットの位置、ターゲットの位置)であることを彼らが言うので、彼らは奇妙です。

考えられる解決策は、これがモジュラーアーキテクチャであるため、さまざまな損失関数を使用するか、タスクの特定の側面をそれぞれ表すモジュール損失関数を使用することです。 また、脳の運動前領域に相当するものによって、デモンストレーションとコンテキストネットワークが運動コマンドを悪化させることなく抽象的に維持できることも保証されます。 最適なモーターコマンドを選択するために、(抽象的なネットワークからの)目標と感覚入力に基づいてオブジェクトをより適切にローカライズするには、プレモーター領域が必要です。 コンテキストネットワークは、現在のコンテキストでデモンストレーションをより高いレベルの埋め込みに転送し、同時にモーターアクションを準備しようとしているようです。 運動前ネットワークの役割は、運動学習と素早い適応のために運動前機能と小脳の両方の機能を組み合わせて、目標志向で適応的な方法で運動システムと通信することを学ぶことです。

興味深い理論、モラベックのパラドックスがあります。これは、計算に負担をかけるより高いレベルの認識ではなく、感覚入力と運動システム出力の扱いになることを予測しています。 これは確かに、運動行動を適応的に制御するために小脳に存在する大量のニューロン(他の脳よりも多い)を説明することができます。 このパラドックスは、私たちが自分の知識を機械に組み込んで、制御されていないノイズの多い環境で複雑なタスクを実行できると信じていた時代(80年代)に策定されました。 もちろん、このパラドックスは、何らかの方法でマシンが離散化された状態のセットで世界を表すことができ、より高いレベルの機能を構築することがより簡単になる場合に理にかなっています。 しかし、どちらも非常に負担がかかることがわかり、ネットワーク間のインターフェースで使用される内部表現は、私たち自身の意識的な表現に似ているものとはかけ離れています。

結論

この記事は、問題の特定の処理をそれぞれ担当する異なるニューラルネットワークを組み合わせることで、本質的に一般化を必要とするタスクを作成し、ドメインのランダム化を通じて適切な学習環境を構築することで、メモリと注意システムは、単純な複製を超えて一般化することを学ぶことができます。 それは、情報の視覚的ストリームで一度だけ示されている高次の目標を発見することを学び、一般化された空間で計算を実行して、異なるコンテキストでその目標を再現できる適切なアクションを回復します。

将来的には、入力の前処理などのハードコーディングされたメソッドへの依存度が低くなる新しい環境で、複雑なタスクを一般化することを学ぶことができるが、そのようなタスクのいくつかをより重要に実行できる、それらのアトミックビルディングブロックに基づいて構築された構造の複雑さが増すことがわかります。メモリストレージ。 メモリストレージは、メモリネットワーク全体の分散表現に置き換えられ、注意システムは、リアルタイム注意ネットワークの周期的アクティビティに置き換えられます。 問題は、強力なシリアルテクノロジー(Turingマシン)を、具体化されたシステムでの分散コンピューティングへの依存度の増加にどのように適応させることができるかということです。