見出し画像

イリヤ・サツケヴァー | ディープラーニングはAIの基礎 | 大きな役割を果たす | AIなしでは生きられない

皆さん、こんにちは。私の講演にお越しいただき、ありがとうございます。ディープラーニングの不合理な有効性について、ディープラーニングとは何か、なぜそれがそんなに優れているのか、なぜそんなに効果的なのか、私たちに何をもたらしたのか、そして将来何をもたらすのか、何を期待すべきかについてお話ししたいと思います。
このような文脈で、まずは私たちの物語の主人公である人工ニューロンを紹介しましょう。何年も前、コンピューター科学者たちは脳がどのように機能するかについて考えていました。彼らは、これらの非常に複雑な生物学的ニューロンがどのように機能して、それらから脳を作ると賢い行動が生まれるのかを理解しようとしていました。
生物学的ニューロンは非常に複雑ですが、40年代のMマッカロック・ピッツは、生物学的ニューロンについて重要なのは、左側の人工ニューロンによって記述される非常に単純な機能であると推測しました。これは推測であり、おそらく正しくはありませんが、非常に刺激的な推測です。なぜなら、生物学的ニューロンは非常に複雑で理解が難しいのに対し、人工ニューロンは比較すると極めて単純だからです。
もちろん、生物学的神経ネットワーク、つまり脳はさらに複雑で、さらに理解が難しいです。神経科学の多くの研究にもかかわらず、生物学的神経ネットワークについての私たちの理解は初歩的なものです。対照的に、人工神経ネットワークは複雑になる可能性もありますが、少なくとも私たちは数学的にそれらを訓練する方法を知っています。人工神経ネットワークが経験から学習することを可能にする数学的な学習規則があります。
私たちは、神経ネットワークの学習を正確に理解できるほど十分に理解しているので、コンピューター上で実装し、したがって神経ネットワークに興味深く有用なことをさせることができます。この全ての研究、神経ネットワークに関する全ての研究は、最終的に信じられないほど強力な非常に小さく非常に単純な原則のセットを生み出しました。ここで、この原則が何であるかを1枚のスライドで説明します。
その原則とは、非常に大きな神経ネットワークがあり、それを大量の計算能力を使って大規模なデータセットで訓練すると、信頼性高く予測可能な形で素晴らしいことができるというものです。この1つの単純なアイデアが、ディープラーニング革命の始まり以来、過去10年間にAIで起こったほぼすべての進歩の核心にあります。
私がこれについて非常に満足していることの1つは、ディープラーニングの核心的なアイデアを他の科学、例えば物理学の核心的なアイデアと比較すると、それらは非常に複雑に見え、理解するためには多くの勉強が必要ですが、ディープラーニングの核心的な原則は本当に単純で、学校の子供にも説明できるということです。
次に、この魔法のようなディープラーニングの公式の使い方について少し詳しく見ていきましょう。大まかに言えば、ネットワークアーキテクチャを選択する必要があります。これは実際には簡単になるでしょう。データセット、データソースを選択する必要があります。これはもう少し難しいかもしれません。そして、このデータをどのように使用するかを最適化するための目的を選択する必要があります。これも再び簡単になるでしょう。
以下では、異なる有名な神経ネットワークの例を見ていき、それぞれの例でこれらの選択がどのように行われたかを見ていきます。では、始めましょう。
最初に紹介したい神経ネットワークはAlexNetです。この場合、アーキテクチャにはコンボリューショナル・ニューラル・ネットワークを使用し、データセットにはImageNetを使用し、目的にはラベルの予測を使用しました。これは比較的大規模なコンボリューショナル・ニューラル・ネットワークを比較的大規模なデータセットで訓練し、その結果を得ました。
次の例に進みましょう。sequence-to-sequenceアーキテクチャです。これは、神経ネットワークが本当に優れた機械翻訳を行えることを初めて示したARニューラル・ネットワークでした。そのアーキテクチャはLong Short-Term Memory(LSTM)でした。これは一種の再帰型ニューラル・ネットワークで、この発表の目的のためには、それが何であるかを知る必要さえありません。入力としてシーケンスを受け取り、出力としてシーケンスを生成するのに適したアーキテクチャです。
データセットはWMTで、これは単なる翻訳データセットでした。英語の文と仏語の文があり、神経ネットワークの目標は翻訳のすべての単語を予測することでした。そして再び、神経ネットワークはこの作業が行われた2014年の基準では少し大きめでしたが、非常にうまく機能しました。古典的な翻訳システムを上回る性能を発揮することができました。
次に、異なる種類の神経ネットワークに続きます。これは強化学習に基づく神経ネットワークです。これも前と同じくLSTMですが、データセットはもはや以前のような静的なデータセットではありません。今度は強化学習環境です。この強化学習環境では、神経ネットワークが訓練データを作成するために自身のコピーに対してゲームをプレイします。目標は、通常よりも成功につながる行動を予測することでした。
データセットはその場で生成されましたが、原則は依然として非常に似ています。大規模な神経ネットワークを大規模なデータセットで訓練し、非常に強力な結果を得ます。OpenAI Fiveの場合、私たちはこのゲームの世界チャンピオンを打ち負かす神経ネットワークを訓練することができました。
少し文脈を説明させてください。おそらく全ての人がDota 2というゲームを知っているわけではないと思うからです。Dota 2はリアルタイムストラテジーゲームです。リアルタイムストラテジーゲームとは、画面上にいくつかのキャラクターがいて、それらを制御し、何をするべきかを指示すると、彼らがそれを実行するというものです。それは5人のプレイヤーが5人のプレイヤーと対戦するようなものです。各プレイヤーは自分のキャラクターを制御し、キャラクターは基本的にさまざまな戦闘に参加します。
このゲームのプロフェッショナルは本当に優秀で、人生をそれに捧げています。そして、多額の資金が投入される非常に大規模なプロフェッショナルシーンがありました。このシンプルなアプローチ、つまりDota環境によって生成されたデータで大規模なLSTMを訓練するだけで、このゲームの世界チャンピオンを打ち負かすことができました。
次の例は、ロボットハンドでルービックキューブを解くというものです。これは前のDota 2の例と非常によく似ています。ここでも、ポリシーを制御するLSTMがあります。データセットは、この場合はシミュレートされたロボットハンド環境です。そして再び、データは強化学習環境との相互作用によって生成されました。
正確にこのステップがどのように行われるかについては詳しく説明しませんが、それも非常に洗練されたものではありません。目標は前と同じく、より良い行動を予測すること、つまり予想外に良い結果につながった行動を予測することです。そして、私たちはシムtoリアル転移を行い、実際に物理的なロボットでルービックキューブを解くことができました。はい、それが公式であり、それは常に結果を出し続けています。
次に紹介したい例はCLIPです。CLIPは興味深い神経ネットワークです。なぜなら、今回はTransformer、Vision Transformerを使用しているからです。初めて見ると...申し訳ありません、スライドをスキップしてしまいました。はい、ジャンプしてしまいました。
ここでGPT-3について話したいと思います。GPT-3は基本的に同じアプローチです。この場合、Transformerという神経ネットワークがあり、インターネット上のテキストという大規模なデータセットで訓練されています。目的はテキストの次の単語を予測することです。
GPT-3の発見を本当に特別なものにしているのは、テキストの次の単語を予測することが非常に興味深い目的であるという認識です。言い換えれば、インターネットのテキストを本当に上手く予測できる神経ネットワークがあれば、それは多くの異なることができ、多数の言語タスクで大きな能力を発揮できるということです。
比喩的に言えば、テキストの次の単語を推測できる、つまりテキストの次の単語について十分に教育された推測ができるということは、少なくともある程度テキストを理解しているということを意味します。例を挙げると、ミステリー小説を読んでいて、小説の最後で探偵が犯人の正体を明かそうとしているとします。次の単語、つまり犯人の名前を推測できる、あるいはこの人物かあの人物か、あるいは1人に絞り込めるとしたら、テキストを本当に理解している必要があります。
次の単語を予測するように訓練された神経ネットワークはまさにそれを行っています。しかし、それがすべて基づいている核心的な原則は、テキストを予測するように訓練された神経ネットワークです。テキストを予測するように訓練された別の神経ネットワークがCLIPです。この場合、データセットはインターネットから収集された画像であり、テキストはそれらの画像の周りに存在するさまざまなテキストキャプションです。
このタスクで畳み込み神経ネットワークを訓練する場合、実際にはVision Transformerでしたが、画像と関連するテキストキャプションの広範なセットでニューラルネットワークを訓練すると、ニューラルネットワークは一般的な視覚能力を学習し、膨大な種類のビジョンタスクをゼロショットで実行する能力を開発します。
どんなビジョンデータセットでも、このニューラルネットワークを使用すると、すぐに非常に堅牢で信頼性の高い結果が得られます。これは非常に重要です。この点について1分ほど説明したいと思います。
ディープラーニングの詳細、人々がどのようにメトリクスや評価を行っているかを深く掘り下げると、非常に奇妙なことに気づくでしょう。多くの場合、ビジョンのようなドメインで人間レベルの結果を達成したと報告しているにもかかわらず、明らかにビジョンは解決されていません。どうしてそのようなことがあり得るのでしょうか。
答えは、訓練データとテストデータが同じ分布から来ている場合、非常に微妙な過学習が起こっているということです。例えば、非常に有名なベンチマークであるImageNetでは、訓練セットとテストセットがありますが、それらは同じ分布からのものです。そのため、ImageNetの訓練データで神経ネットワークを訓練すると、テスト性能はある意味で誇張されます。なぜなら、神経ネットワークを実世界に持ち込むと、画像は異なる分布から来ることになり、性能は悪化するからです。
これはCLIP神経ネットワークには当てはまりません。なぜなら、これまで一般的に行われてきたような1つの狭いタスクではなく、インターネットからの幅広い画像セットで訓練されたからです。
もう1つの非常に興味深い神経ネットワークはDALLE-Eです。基本的に、CLIPは画像からテキストへ、DALLE-Eはテキストから画像へです。Transformerを取り、基本的にはGPT Transformerですが、少し小さくしました。そして、テキストと画像のペアを取り、画像を離散トークンとしてエンコードする方法を見つけ、そしてGPT-3のテキスト生成能力を使って、それらの画像表現の言語を生成しました。ここに例がありますが、それは画像を記述する言語のコンテキストにおける同じ次の単語予測です。
そして最後にCodexで締めくくりましょう。Codexも再び小さめのGPT-3で、GitHubの次の単語を予測するように訓練されただけです。その結果、ニューラルネットワークはかなり上手にコーディングができ、コメントから関数全体を書くこともできます。これはGitHubの次の単語を予測することから導き出されます。大規模なコードベースの次の単語を本当に上手く予測できるということは、結果として、「volumeという関数はXを行う」というコメントを読むと、ニューラルネットワークは実際にそれを行う関数のテキストにかなり良い確率質量を持つことになります。ただし、ニューラルネットワークが十分に優秀である場合に限ります。
さて、あと数分ありますので、将来何を期待すべきかについて簡単にお話しします。明らかに、ディープラーニングはかなり急速に進歩していると言えると思います。そして、それが継続するだろうという仮定は間違いなく安全です。しかし、具体的にどのような方法でしょうか。
私たちが見ることを期待すべきことの1つは、効率の向上です。私たちのアーキテクチャや最適化アルゴリズムの効率において、比較的小さいですが非常に重要な改善がありました。何年も前の再帰型ニューラルネットワークから始まり、LSTMへの大きなジャンプ、そしてTransformerへの非常に大きなジャンプがありました。私たちは将来もう1つの大きなジャンプがあるでしょうか。答えは、おそらくです。そしてもしそのようなジャンプがあれば、ディープラーニングの能力が全面的に急速に向上することを期待すべきです。
注目すべき点は、ディープラーニングでは非常に大規模な統一が行われてきたということです。基本的に、私たちはすべてに1つのアーキテクチャを使用しています。おそらく、将来のアーキテクチャもすべてに使用され、ディープラーニングとAIのすべての応用分野を全面的に改善するでしょう。
モダリティの統一も期待すべきです。なぜなら、それは確かに有用に思えるからです。異なるモダリティは、私たちのニューラルネットワークに同じデータを見る異なる方法を提供します。同時に多くのモダリティに優れた単一のニューラルネットワークを持つことで、学習したいすべての概念をより深く理解することができます。これは、人間が同じ概念を複数の側面や角度から見ることで恩恵を受けるのと同様です。
また、推論も重要な分野として言及しておきます。ここでは多くの進歩が見られるはずです。ディープラーニングはAIのあらゆる分野で大きな進歩を遂げたと言えますが、推論の分野は他の分野と比べて遅れをとっていました。
OpenAIで私たちが推論に関して行った作業は2つあります。1つはCodexモデルで、これは実際にプログラムを書くことができ、かなり上手く行います。もう1つは、最近形式数学で進歩を遂げ、いくつかの数学オリンピアの問題を解くことができました。国際数学オリンピアドの2つの問題さえ解くことができました。これらの問題は決して簡単ではなく、多くの推論を必要とします。これらは、推論においてニューラルネットワークをより優れたものにするために私たちが踏み出している小さな一歩に過ぎません。
最後に、アラインメント、安全性、信頼性について話したいと思います。これは次のように説明できます。今日私たちが持っているニューラルネットワークは、すでに非常に優れています。しかし、多くのアプリケーションでまだ使用できません。なぜなら、それらは信頼性がなく、ランダムで望ましくない間違いを犯し、安全ではなく、有害な出力を生成し、アラインメントがとれていません。つまり、私たちの意図をうまく理解していないのです。
ここでは、近い将来におけるアラインメント、安全性、信頼性の改善に向けた単純な道筋について説明したいと思います。簡単に言えば、ニューラルネットワークをより良く、より大きくすると、エラーが少なくなります。これはよく確立されていますが、それに加えて、より良いニューラルネットワークはより速くファインチューニングされます。
これは何を意味するかというと、人間のフィードバックからの強化学習というアプローチを使って、簡単かつ迅速に行動を指定できるようになります。このアプローチでは、人間の教師が文字通り、複雑な入力に対してニューラルネットワークが生成する出力について、これは良い出力、これは悪い出力と言います。そして、ニューラルネットワークが優れているほど、教師の意図を理解するのが速くなります。
では、これで何ができるのでしょうか。たくさんのことができます。例えば、私たちが行った具体的なプロジェクトの1つは、GPT-3をアラインメントさせ、それを使用する人の意図を明示的に従うようにすることでした。指示に従うように教えました。GPT-3や他の言語モデルを使用したことがある人は、そのニューラルネットワークを操作して望む結果を得るのにかなりの労力が必要であることを知っているでしょう。それは多くの能力を持っていますが、あなたが望むことを行いません。それは本当に難しいのです。
しかし、指示に従うようにファインチューニングすることで、比較的少ない労力で指示に従うように教えることができました。指示に従うようインセンティブを与え、それを使用する人々はそれを気に入っています。私たちには、このような方法でファインチューニングされた小規模な言語モデルでさえ、評価者やユーザーに本当に好まれることを示すさまざまな指標があります。そして大規模なモデルは本当に非常に好評です。実際、これらの指示に従うモデルは現在、私たちのAPIでデフォルトになっています。
同じアプローチを使用して、ニューラルネットワークの有害性を減らし、望ましくない出力を減らすこともできます。
結論として、ディープラーニングは本当に驚くべき、信じられないほどの進歩を遂げました。ディープラーニングのアイデアは信じられないほど単純です。そして、ディープラーニングに賭けないのは賢明ではないと言えると思います。
ここで終わりにします。ご清聴ありがとうございました。
イリヤに感謝します。質問の時間が少しあります。オンラインからDanofferさんから寄せられた質問の1つは、本質的にデータが少ない分野や、ユニークな、あるいは新しいアプリケーション分野において、転移学習を通じてディープラーニングが貢献すると思いますか。小さなデータで学習できる特別に設計されたネットワークを見ていますか。それとも、これは単にディープラーニングを適用する適切な場所ではないと思いますか。
そうですね、確かにデータが少ない分野では...データはディープラーニングの燃料です。計算能力と並んで。データが少ないと、データが豊富な分野で見られるような信じられないほどの進歩を生み出すことは不可能になります。
データが豊富な場合、進歩は実際に信じられないほどです。データがない場合は、いくつかのトリックを使う必要があります。どんなトリックが使えるでしょうか。転移学習は非常に良い第一の選択肢です。転移学習は非常に強力なベースラインを提供し、実際に今日取り得る他のアプローチよりもはるかに優れている可能性が高いです。
特殊なネットワークアーキテクチャの設計については、試すことはできますが、このアプローチには非常に強力な実績があるとは言えないでしょう。
ありがとうございます。もう1つの質問は、ディープラーニングの計算要件が常に増加しているのを見ていますが、これは今後も続くと思いますか。それとも将来的には、より計算効率の良いネットワークや計算要件の縮小を見込んでいますか。
計算要件に関する私の予想は、同時に2つのことが起こるだろうということです。一方で、特定のレベルの性能に到達するために必要な計算量を減らすという大きなインセンティブがあります。そのため、コミュニティ全体が、ニューラルネットワークの効率を向上させ、方法の効率を向上させるための研究を多く行っています。同じ結果をより少ない計算で得られるようにするか、より多くの計算でより良い結果を得られるようにするためです。
しかし同時に、本当に素晴らしい結果、本当に優れたパフォーマンス、本当に優れたパフォーマンスへの需要があることも事実です。最高レベルでは、非常に効率的なアーキテクチャと非常に効率的な方法があっても、多くの計算を使用したいと思うでしょう。
つまり、私たちが持つ計算能力が多ければ多いほど、誰かがそれを使用する方法を見つけるだろうということですね。
はい、それは安全な賭けのように思えます。
では、この楽観的な結論で、イリヤ、どうもありがとうございました。

この記事が気に入ったらサポートをしてみませんか?