ボリス・ハニン | ニューラルネットワークのスケーリング極限

23,609 文字

YouTube
作成した動画を友だち、家族、世界中の人たちと共有

ほな、始めさせてもらいますわ。今日はボリス・ハニンさんをお迎えしとります。ボリスさんは、スティーブ・ゼルディッチ先生の下でノースウェスタン大学で学ばれて、MITやテキサス大学オースティン校、テキサスA&M大学で職を得られた後、現在はプリンストン大学の准教授やってはります。ほな、ボリスさん、よろしゅうお願いします。
ありがとうございます、マイク。テキサス大学オースティン校とテキサスA&M大学を混同するんは、おる人によっては気ぃつけなあかんでしょうけどね。
ほんま、お招きいただいてありがとうございます。このイベントを企画してくださって感謝しとります。色んな講演を聞いて、みんなと話すのがほんまに楽しかったです。ここ数年、わたしを魅了してきた一連のアイデアを皆さんと共有できるのが楽しみでんねん。「ニューラルネットワークのスケーリング極限」って呼んどるんですけど。
ちょっと説明させてもらいますと、これは統計物理学や、ランダム行列理論などから来る数学的手法を使って、ニューラルネットワークが何をしているのか、学習がどのように進んでいるのかを理解しようっていう試みなんです。それだけやなくて、ニューラルネットワークの実用的な使用にも直接影響を与えることを目指しとります。
これから、その全体像をお話しさせてもらいますけど、途中で質問があれば遠慮せんと止めてくださいね。質問は最後にまとめてっていうつもりはありませんし、正直、準備したスライドが多すぎて全部見せるんは無理やと思いますねん。
ほな、まずはニューラルネットワークと機械学習の基本からおさらいさせてもらいます。全員が既に知ってるわけやないと思うんで、今週初めの講演の内容を少し復習して、みんなが同じページに立てるようにしたいと思います。
まず、高いレベルで言うと、ニューラルネットワークは関数のパラメータ化された族なんです。これが最も単純な種類のニューラルネットワークで、全結合フィードフォワードネットワークって呼ばれとります。
ほな、出力がどう計算されるか、順番に説明していきますわ。これが出力で、入力xの関数になっとります。基本的に、xはN0次元のベクトルで、これが入力の次元を表してます。そして、この出力を計算するために、xを一連の隠れ層で処理していくんです。
最初の隠れ層はほんま単純で、実はみんな単純なんですけど、xに行列W1をかけるだけです。これでRN0からRN1への写像ができて、その結果の各成分に同じ非線形関数σを適用します。これが1層分の処理で、基本的に線形変換をして、それから座標ごとに非線形性を加えるわけです。
これを大文字のL回繰り返します。Lはレイヤーの数で、ニューラルネットワークの深さとも呼ばれとります。そして、最後の出力は、この最終隠れ層の線形な読み取りになるわけです。これが全結合ネットワークの表記法です。ここでθってパラメータベクトルを書いてますけど、これは全てのW行列の要素を意味してます。
誰かがNsとかLとかσを与えてくれたら、それがニューラルネットワークのデータみたいなもんで、あとはパラメータθを変えることができるわけです。
ニューラルネットワークについて、わたしは2つの見方をしとります。左側がコンピューターの考え方みたいなもので、長いパラメータのリストがあるだけです。実際には何百万、何十億、何兆ものパラメータがある高次元空間かもしれません。θを変えることで、xからZL+1(x)への異なる関数が得られます。でも、パラメータから出力への写像がかなり複雑なんで、わたしはこの少し漫画っぽい、多様体的な見方の方が好きです。
θを動かすと、異なる面白い関数が得られることを願ってるわけです。これがニューラルネットワークの本質で、わたしのイメージする姿です。じゃあ、実際にはどう使われとるんでしょうか?簡単に3つのステップで説明させてもらいます。
ステップ1は、世界について何かを観察することです。たくさんの入力xiを観察します。ここがxsの場所です。そして、いくつかの出力f(xi)も観察します。fは知らない関数ですけど、いくつかの例があるわけです。例えば、xiがi日目の株式市場の状態で、f(xi)がi+1日目のポートフォリオのリターンみたいな感じです。
fの公式が欲しいところですけど、あるのは過去のデータだけです。そして、fか、少なくともfの良い近似が、ニューラルネットで計算できる関数の空間のどこかにあることを期待してます。fの近似を学習したいんですけど、どうやってやるんでしょうか?
ステップ1は、ちょっと謙虚になって、「最初はどのパラメータ設定がこのfに対応するのか全然わからへん」って言うことです。そこで、初期のパラメータ設定をランダムに選びます。一般的なPyTorchのデフォルト設定では、パラメータ空間に非常に単純な確率測度を置きます。
各成分、つまり全ての重みと全ての行列が、独立同分布のガウス分布からサンプリングされるみたいな感じです。だから、ここに単純な分布を鐘型の曲線で示しとるんです。でも、θからZへの写像はかなり複雑なんで、訓練の開始時には、複雑で面白い測度からあなたの初期関数をサンプリングすることになります。この測度については、このプレゼンテーションの中でもう少し詳しく説明させてもらいます。
当然、訓練開始時のこの関数は、関数fとは何の関係もありません。まだ訓練データを使ってへんからです。そこで最後の重要なステップとして、θの推定値を反復的に改善していきます。これは貪欲な局所探索の一種で、勾配降下法の一種です。
t回の最適化ステップの後にθtという値にいるとすると、損失の負の勾配の方向にステップサイズηだけ進みます。ηは学習率やステップサイズと呼ばれることもあります。これはあなたの訓練データに対する経験的リスクで、現在どれだけ訓練データにフィットしているかを測るものです。
なんか、絵を描くんは簡単やけど、定理を証明するんは難しいみたいな感じですね。パラメータ空間で何かをして、それが関数の空間で何かに対応するわけです。うまくいけば、あなたのデータを生成した関数にたどり着くことができます。
これがニューラルネットワークの使われ方の夢みたいなもんです。ちょっと一旦止めて、表記法が大丈夫か確認させてもらいます。これが基本的な表記法で、これから使っていく予定です。大丈夫ですか?
ほな、タイトルのもう一つの部分、スケーリング極限について話させてもらいます。今、ニューラルネットワークが何かをおさらいしましたけど、スケーリング極限というのは、実際に大きいパラメータが全て大きくなる可能性がある状況でニューラルネットワークによる学習を分析しようという試みのことです。
現実世界では、たくさんの訓練データポイントがあります。非常に高次元のデータを扱うこともできるし、深いネットワークや幅の広いネットワークも使えます。大きな計算予算も持っとるかもしれません。実際には多くの大きなパラメータがあるわけです。そして、これらが単に大きいだけでなく、無限に大きい場合に何が起こるのかを理解したいんです。
これが問題の数学的な表現です。特に数学的な志向がない人なら、「なぜ無限大のデータセットや無限大のニューラルネットワークを気にするの?大きいニューラルネットワークと大きいデータセットだけでも十分苦痛やったんちゃうの?」って思うかもしれません。
ほな、2つの動機を提示させてもらいます。動機の1つ目は理論的な動機です。確率論や統計学、機械学習、物理学など、あらゆる分野で共通するテーマとして、大きなパラメータがある場合、少なくとも慎重にやれば、そのパラメータを無限大にすると、物事はより難しくなるんじゃなくて、むしろ単純になることが多いんです。
大数の法則や中心極限定理、ランダム行列の固有値の漸近分布なんかを考えてみてください。理論サイドの希望は、学習の簡略化された記述を得て、それを分析的に分析して何かを言えるようにすることです。
これは理論家の話ですけど、同じくらい重要な実践的な動機もあるんです。これはハイパーパラメータの転移、あるいはハイパーパラメータのチューニングと呼ばれるもので、これから説明させてもらいます。
ニューラルネットワークを実際に使う上での大きな問題の1つ、これはあんまり人に言われへんことですけど、それは無限に見える数のハイパーパラメータを選ばなあかんことです。これは成功に直接つながらへんし、痛みを伴うから、あんまり話されへんのかもしれません。
ハイパーパラメータっていうのは、ニューラルネットワークの訓練可能なパラメータじゃなくて、それ以外の全てのことを指します。例えば、アーキテクチャから来るハイパーパラメータがあります。モデルの深さや幅、トランスフォーマーを使う場合は自己注意ヘッドの数なんかがそうです。
これらをコンピューターに教えなあかんのです。それから、初期化にもハイパーパラメータがあります。訓練をどう始めるか、どの測度からパラメータを選ぶかとかです。最適化アルゴリズムにもハイパーパラメータがあって、学習率をどう選ぶかとかです。これらの選択をうまくやらんと、GPUにかけたお金も、データ収集にかけたお金も、全部無駄になってしまうんです。
これが悲しい現実です。そして、これは実践的なジレンマを生み出します。一方では、モデルの実際のパフォーマンスがハイパーパラメータの設定に極端に敏感になることがよくあります。他方で、モデルが大きくなればなるほど、異なるハイパーパラメータ値を試すのにかかるコストが高くなります。
ちょっと面白い動画をお見せしたいと思います。この動画はJosh Soldiesteinっていう研究者が作ったもんです。多くの人が知ってるかもしれませんが、彼はGoogleで素晴らしい仕事をしとります。この動画は、少なくとも面白い動画やと思います。
ここで見とるのは、1つの隠れ層を持つ非常にシンプルなネットワークを訓練してる様子です。x軸は最初の層の学習率を表していて、y軸は2番目の層の学習率を表しとります。そして、2つの層のそれぞれの学習率がピクセル空間で値を持っていて、それがモデルのパフォーマンスを示しとります。
最もパフォーマンスの高いモデルは、赤とオレンジ、緑と青の境界線にあるやつです。この図の要点は、このハイパーパラメータ値の良い設定を見つけようとすると、非常に滑らかじゃない景観を最適化しようとしてるってことです。この図を作るのにどれだけの計算力が使われたか考えたくもありません。
これは極端な感度が現れてる視覚的な例です。
(質問者)同じ初期化で行われてるんですか?
はい、同じ初期化を使うてるはずです。そのシードを固定して…あるいは、いくつかのシードで平均を取ってるかもしれません。これは、最終的に訓練されたモデルが、選んだハイパーパラメータにどれだけ敏感かを視覚的に示したもんです。
当然、これをやるんはほんまに大変です。最終的にはピクセル化してしまいますわ。Googleでさえ、無限の計算力はありませんからね。ほな、これを消す方法を考えないとあかんな。
(質問者)この図を理解しようとしてるんですけど、θの値の小数点以下が重要ってことですか?それともそれらはハイパーパラメータじゃないんですか?
そうじゃないんです。θじゃなくて、最適化アルゴリズムのステップサイズのことです。
(質問者)つまり、深さと幅、そしてこの種のフィードバック…(聞き取れない)…そのダイナミクスってことですね。
そうです。知っとると思いますけど、それは文字通り2次元のスライスだけです。最初の層の学習率はどうか?2番目の層の学習率はどうか?それだけでもかなり複雑になるんです。
これをどう消すか分からんなぁ。
(質問者)でも、その図を見ると、非常に敏感に依存してるように見えますよね?
そうですね、確かに…
(質問者)それじゃあ、良い選択をするのは絶望的じゃないですか?
うーん、わたしの見方としては、絶望的というわけじゃなくて、ただ計算コストが高いだけなんです。
(質問者)それほど多くが(聞き取れない)から生き残ったことに驚いてるんですが。
ここでは、いくらか平均化してると思いますけど、わたしが言いたいのは、実際にハイパーパラメータを慎重に選ぶことが重要やということと、大規模にやろうとすると禁止的に高価になるってことを示したかっただけです。
これが、深層学習の理論と実践の間にある分野、ハイパーパラメータ転移と呼ばれるものを生み出したんです。
ほな、その夢を説明しましょう。誰かが1兆個のパラメータを持つ大きなニューラルネットワークを持ってきて、「最適な学習率を見つけたいんやけど、実験するには高すぎるんや」って言うたとします。これは例えば、GPTでも実際に起こったことです。
あなたがしたいのは、その大きなモデルを1000倍、100万倍小さくして、小さなモデルの最適な学習率の設定が、大きなモデルの最適な学習率の設定と実際に同じになるようにすることです。そして、小さなモデルで数値的に見つけるだけです。これがハイパーパラメータ転移ってやつで、小さなモデルから大きなモデルにハイパーパラメータを転移させるんです。
誰も2つのモデルが同じパフォーマンスを示すとは言ってません。大きなモデルの方が良いパフォーマンスを示すでしょう。問題は、最適化を行うための正しいハイパーパラメータを見つけることだけなんです。
一見すると、これは夢物語に思えるかもしれません。大きなモデルが小さなモデルと何の関係があるんやって。でも、わたしが言いたいのは、これが可能やってことなんです。これには数学的な原理があって、それについて説明していきたいと思います。
例を見せましょう。これは最後の方の内容に飛んでしまいますけど、最後まで行けるかどうか分からんので。これは、ハーバード大学のJanis AlbanとBlakeのグループ、そしてわたしのポスドクと学生たちと書いた論文で出てきたようなものです。
ここでの設定は、非常にシンプルなモデル、かなり深い残差ネットワーク(ResNet)を取って、コンピュータービジョンの標準的なベンチマークデータセットであるCIFAR10で20エポック訓練したものです。
ここで、色々な色と点線は、凡例が右側にありますけど、異なる色は異なる深さのモデルを示していて、点線か実線かで異なる幅のモデルを示しています。
ここで一番大きなモデル(ここ下の方)と一番小さなモデル(ここ上の方)の差は、パラメータ数で300倍から400倍くらいです。あんまり頑張って押し広げようとはしてないですけど、かなり異なるモデルになってます。
そして、この論文で提案したスケーリングを使うと、最小のモデルを色んな学習率で訓練して、「ああ、これが一番良かった」って言えるものが、20エポック後に最も低い訓練損失を得たという意味で、他の全てのモデルにとっても最良のものになることが分かります。
もう一度言いますけど、訓練損失は下がりますが、最適な学習率はほぼ一定のままです。これが、ハイパーパラメータの転移とチューニングの原理から期待されるものなんです。
これは、これまでの最先端と比較したものです。あんまり深入りはしませんけど、これが目指すところやということです。
(質問者)つまり、学習プロセス全体で固定されてるってことですね。
はい、ここではスケジュールは使ってません。でも、わたしたちのハイパーパラメータ転移へのアプローチでは、スケジュール全体が転移します。実際、それが実用的に有用であるために必要なんです。スケジューリングが重要やからね。
ほな、これが夢やと言いましたけど、今からこの最もシンプルな赤ちゃんのような例で、なぜこれが概念的に可能なのかを説明したいと思います。哲学的な問いとして、一体何が働いているのかを考えてみましょう。
1950年代に戻ってみましょう。わたしは1950年代を知らんけど、想像はできます。1950年代には、カーネルリッジ回帰しかなかったと想像してください。それが間違いかもしれませんけど、わたしはそう考えとります。
わざと可能な限りバニラな問題を設定してみましょう。xsをたくさん観察します。これらは全て、d次元の等方的なガウス分布からIIDでサンプリングされています。そして、いくつかの応答yを観察します。これは秘密のベクトルβの転置とxの積に、ノイズを足したものです。これらのサンプルをn個持っています。
基本的に、この問題には2つの大きなパラメータがあります。観察するサンプルの数と、各サンプルの特徴量の数、つまり次元です。
ほな、ここにいるあなたは、このパラメータ空間のこの点にいると想像してください。100万個のサンプルを1000万次元で持っています。これは全く非現実的というわけじゃありません。そして、学習をどうやるか理解したいわけです。
ニューラルネットワークや他の全てのものが出る前は、どうやって学習してたんでしょうか?リッジ正則化回帰を使ってました。
ハイパーパラメータλを固定して、λに依存する最適な予測器、つまり最適なパラメータθを考えます。これは、データに対する経験的リスクと、パラメータベクトルのノルムの2乗にλをかけたものの和を最小化します。これには正確でよく知られた公式があります。
この意味での学習は難しくありません。これは1つのハイパーパラメータを持つ問題で、これを使おうとしてる学習率のアナログだと考えてください。
そして、目標は何でしょうか?目標は、ハイパーパラメータの最適な設定を見つけることです。わたしにとっては、新しい訓練データでのサンプル外リスクを最小化するλの値を見つけることを意味します。これがわたしの夢です。
どうやってやるんでしょうか?実務家なら、「問題ない、交差検証をやるよ。たくさんの異なるλを試して、数値的な手順で最も良いものを選ぶだけだ」と言うかもしれません。
でも、計算リソースが足りないと想像してください。これらの数字を笑うかもしれませんが、10の12乗と10の13乗に置き換えてみてください。そうすると、誰も笑えなくなると思います。その設定では本当に交差検証はできないでしょう。
そこで理論家が登場して、「問題ない、理論が救ってくれる」と言います。理論はどう救ってくれるんでしょうか?理論が救ってくれる最初の試みは、最適なλの値が垂直なスライスでほぼ一定になるんじゃないかということです。
これは推測ですね。ほな、これが本当かどうか見てみましょう。サンプル数を固定して、特徴量の数を無限大にすると、完全に定義された数学モデルが得られますが、非常に悲しいことに、ここでλは無限大になります。
無限次元空間にいて、有限個の例しか観察してないので、βベクトルについて何も見てないということになります。だから、どこでもゼロの予測をしたいということになって、仕事をクビになってしまいます。常にゼロを予測するのは本当に悲しいことです。
これは、明確に定義されたスケーリング極限があった例ですが、良いスケーリング極限ではありませんでした。この無限モデルは、実用的な目的では、始めたモデルに近くなかったんです。
ほな、「問題ない、別の大きなパラメータがある。それを無限大にしよう。特徴量の数、つまり全てが存在する次元を固定して、サンプルをどんどん増やしていこう」と言うかもしれません。
また、完全に定義された数学的極限が得られ、λを正確に計算できます。それは有限になりますが、ここで見たεs、つまりデータ内のノイズを正則化することだけが問題になります。
しかし、またしても、そのλの値は、あなたが興味を持ってる実際の設定での最適なλの値からかけ離れたものになります。
だから、クビにはならなくても、少なくとも昇進はできませんでした。どこでもゼロを予測するほど悪くはありませんでしたけどね。
問題は何でしょうか?問題は、あなたのハイパーパラメータが垂直や水平の線を越えて転移しないということです。
じゃあ、解決策は何でしょうか?解決策は非常にシンプルです。N→∞とd→∞が可換ではないと言うんです。この位相図の角を基本的に吹き飛ばさなあかんのです。
問題は何かというと、主要な認識は、ランダム行列理論や高次元確率論から来るんですけど、予測器θを構成する2つの重要な行列があるんです。サンプル共分散XX^Tと、入力と出力の間の一種の交差共分散XYです。
これらの行列のスペクトルが、このθがどれだけうまく機能するかを考える際に考慮しなあかんものです。でも、これらの行列のスペクトルは、dやnに独立には依存しません。
古典的な事実として、マルチェンコ・パストゥールの定理を考えてみてください。これは比率に依存するんです。θの予測器の統計をほぼ保存したいなら、この図の原点から一定の傾きの線に沿って進む必要があることに気づかなあかんのです。
数学的に言うと、dとnを一定の比率で一緒に無限大にできます。ここでの比率は10でした。そして、ここでのλの値を正確に計算できます。そして、このd/n=10でのλの値は、実際には実践でのλの値に非常に近くなります。
これが理論家の言うことで、これが正しいスケーリング極限で、この極限で解析的な計算ができるんです。でも、実務家は「結局、あなたのスケーリング極限なんて要らないよ。モデルを大きくする代わりに、単純に小さくすればいいじゃないか」と言います。
この線に沿って上がる代わりに、この線に沿って下がるんです。これが計算能力的に多すぎるなら、nとdの両方を1000倍小さくします。そして、ここで交差検証を行い、それが実際のモデルでの最適なハイパーパラメータ選択を推定する方法として十分やと考えるわけです。
これが、理論家が興味を持つスケーリング極限と、実践で興味を持つハイパーパラメータの転移やチューニングの間の一種の双対性です。実は同じ問題なんです。
ちょっと一旦止めて、質問やコメントがないか確認させてもらいます。これからニューラルネットワークの話に移りたいんですけど、これまでの話は何が起こってるかの哲学みたいなもんです。無限サイズのモデルが実際に有限サイズのモデルに近くなるように極限を取る方法を理解せなあかんのです。そうすれば、何か面白い転移ができるかもしれません。
ほな、ニューラルネットワークに戻りましょう。わたしの好きなニューラルネットワークにおける極限の非可換性の例を紹介せずにはいられません。わたしと話したことがある人は、もうこの例を見たことがあると思いますけど、仕方ないですね。
ニューラルネットワークでは、サンプル数や特徴量の数に加えて、深さっていう新しいものがあります。非常に単純な非可換性の例を見てみましょう。ここで見るのは、ディープリニアネットワークと呼ばれるものです。
層の間の非線形性σを取り除いて、単純に恒等写像にしました。だから、出力は単に入力に行列の積をかけたものになります。訓練とかは全然興味がなくて、全てのパラメータがランダムな場合の訓練開始時の初期測度にだけ興味があります。
これらのN×N行列の各要素は、単純化のために全ての幅を同じ大きな数Nにしてますけど、適切にスケールされた中心化ガウス分布からの独立同分布サンプルです。そして、入力ベクトルxのノルムを1にしています。
まず言えることは、これがわたしの数学的な心を幸せにするんですけど、ランダム行列の積、つまりこの非常にシンプルなモデルで研究してるものは、永遠に研究されてきたんです。ランダム行列に関する論文は無限にあって、特にこの積に関しては2つの体制で出てきます。
1つの体制は、ネットワークの深さ、つまり行列積の項の数を固定して、行列のサイズを無限大にする方法です。これは通常、自由確率論の体制と呼ばれています。
これは美しい分野で、全てが普遍性によってここから来ていて、固有値や特異値に対する最大エントロピー分布など、高次元統計学や確率論の標準的な分野です。これはとても素晴らしいです。
でも、同じくらい重要で同じくらいよく研究されてる体制があって、行列のサイズを固定して、積の項の数を無限大にする方法です。
これはランダム力学系のリャプノフ指数の研究みたいなもので、乗法的エルゴード定理の領域とも呼ばれています。この2つの体制があって、これらは非常に異なります。そして、既に図が示唆してるように、NとLが無限大に行く2つの極限は可換ではありません。
これは、ニューラルネットワークにどんなスケーリング極限を期待できるかという話につながります。この非可換性を最もシンプルな観測量で示してみましょう。入力ベクトルxを固定して、Wをランダムにして、ただノルムを計算するだけです。これは単なるランダムなスカラー数です。
ほな、2つの体制で何が起こるか計算してみましょう。まず、モデルの深さを固定して、行列のサイズを無限大にしてみましょう。何が得られるでしょうか?ちょっと頭をひねって、表記法を理解する必要がありますけど、重要な観察は、行列のエントリの分散に対するこの正確なスケーリングで、これらの大きなガウス行列はそれぞれ、長さと角度をほぼ保存するってことです。
これが正規化の仕組みです。いくつかの行列がありますけど、Lは固定されてるので、17個とかそんなもんです。だから、積全体は、Nが大きくなるにつれて、入力のノルムをより保存するようになります。結果として、入力のノルムが1だったので、この自由確率極限でほぼ確実に1が得られることを簡単に示せます。
これはとても素晴らしいです。ほな、今度は行列のサイズを固定して、項の数を無限大にした場合を計算してみましょう。この方向に行きたいわけです。質問ですけど、特に見たことがない人に聞きたいんですが、誰か答えを知ってますか?はい?
(質問者)無限大だと思います。(笑)
いいえ、ゼロになります。全ての特異値が1未満になって、それがどんどん増えていきます。
(質問者)ランダムな方向に右ベクトルを伸ばすと、次の大きな割線に大きな射影を持つ可能性が高いと思います。
まあ、でも独立で、お互いに非干渉ですからね。
(質問者)そうですけど、一度何かが伸びたら、次の大きな(聞き取れない)と並ぶ可能性が高くなります。
はい、それはほぼ正しい直感です。ただ、平均的には少し圧縮されることが分かります。だから、無限大ではなくゼロに向かうんです。
(質問者)側面1。
その通りです。実際、有名な結果があって、この行列積をL乗根にして、Lを無限大にすると、全ての特異値が0と1の間になります。だから、それをL乗すると、全ての特異値はゼロに向かいます。
約束通り、これが幅と深さが可換でない最もシンプルな例、少なくともわたしが思う最もシンプルな例です。そして、問題は、ここで何が起こるかということです。誰かが実際にニューラルネットワークを持ってきて、ある深さと幅を持っていて、何を考えるべきか知りたいわけです。
ほな、わたしはいつも、良い講演には幾つかの要素が必要だと教わりました。定理があって、図があって、計算があって、そしてジョークがないといけません。そして、重要なのは、定理とジョークが違うものでないといけないってことです。(聴衆が笑う)これがわたしのジョークです、気づいてもらえたかな。
ほな、計算をしてみましょう。定理はこれから出てきますけど、この計算は1枚のスライドでできる唯一の計算で、ここでは説明的だと思います。この特定のランダム変数を理解するためのきれいなトリックを見せましょう。この場合、正確に、漸近的ではなく計算できるんです。
何をするかというと、この行列積とxのノルムを計算したいわけです。重要なアイデアは、あんまり深く考えずに、W1とxのノルムで割って掛けるだけです。そして、何が分かるでしょうか?W1とxの積は標準ガウスベクトルです。結局のところ、xは単位ベクトルでしたからね。
そして、標準ガウスベクトルの方向はそのノルムと独立です。そのノルムはカイ二乗分布、あるいはカイ二乗分布の平方根を持ちます。W2は回転不変なので、この単位ベクトルをxと同じと見なしてもいいわけです。そして、このオブジェクトの分布は独立で、平方根を取ってないのでスケールされたカイ二乗分布です。
L個の行列からL-1個の行列に減ったので、とても嬉しいです。これをさらにL-1回適用します。何が分かるでしょうか?このランダム変数に対して、本当に美しい厳密な分布公式があることが分かります。それは何でしょうか?それは、平均1に正規化されたカイ二乗ランダム変数の積で、それから平方根を取ったものです。
この結果はそれ自体で美しいと思います。明らかに非常に特殊なケースですけど、NとLがどのように互いに戦うかを示しています。Nは熱力学的平衡に向かわせようとします。全てをその平均に向かわせようとするんです。1/N×カイ二乗(N)は、その平均である1の周りにすぐに集中します。だから、この自由確率極限で1が得られるんです。
でも一方で、そのようなものをL個掛け合わせているんです。そしてLは変動を増幅します。だから、Lは一種の平均場的な極限から離れさせて、全く異なるものを得させるんです。
ほな、計算を完成させるために、唯一賢明なことをしましょう。対数をとります。これを書き直しただけです。そして、分子にはIIDのランダム変数の和があります。だから、Lが大きい場合の挙動を理解したければ、分子に中心極限定理を適用するだけです。
これを描きましたけど、各々の平均と分散を正しく計算したと信じてください。Lが大きい場合に得られるのは、平均が-L/4Nで分散がL/4のガウス分布のe乗です。
要するに、導入すべき正しいパラメータは、行列積の項数と行列のサイズの比率なんです。そして、このランダム行列アンサンブルには、自由確率体制とエルゴード理論体制の間を補間する1パラメータ族のスケーリング極限が実際にあるんです。
そして、言いたいのは、ニューラルネットワークのことを全く気にしなくても、ランダム行列側だけでも、この体制に関して多くの美しく本当に基本的な未解決問題があるってことです。わたしはそのいくつかについて考えていて、もっと考える時間があればいいのにと思います。本当に魅力的な問題ばかりです。
これはただのウォームアップのつもりでした。非可換性について何か示したかっただけです。でも、ちょっと悲しいのは、ニューラルネットワークの要点は、ここにσがあることなんです。今のところ、xの線形関数を少し変わった方法で計算できるだけです。
ほな、非線形の場合について少し話しましょう。また、2秒ほど止めて、コメントや質問がないか確認させてもらいます。はい?
(質問者)ちょっと聞きたいんですけど、重みの行列の分散はどう変化するんですか?
ほな、このWsの正規化では、Nが大きくなると全ての特異値が有界のままです。Wsに関して全て完全に同次なので、分散の変化を前に出したければ、単にスケールアウトできます。
(質問者)これはカオスの縁の初期化みたいなもので、ここでちょっと大きくなると…(聞き取れない)
そうですね、縁に留まりたいんです。NとLを無限大にするなら、これが唯一賢明なことです。
(質問者)でも、質問は、その指数関数、最後のやつですけど、重みの分散があると意味のある変化があるんですか?
ああ、そうですね。短い答えはこうです。分散を定数Cだけ変えると、CのL乗の前置因子が得られます。
(質問者)分かりました。
これが同次だからです。技術的にはCのL/2乗です。分散を変えるために、それぞれにCの平方根を掛けるだけですからね。だから、あんまり洞察的ではありません。大丈夫です。
(質問者)ちょっと質問があるんですけど。もし全てのWsの行列式を1に制約したら、わたしの最初の推測が正しくて、ゼロではなく無限大になるんですか?
明らかではありません。例えば、全てが直交行列だったら…
(質問者)そうしたら1になりますね。
そうですね、確かに。
(質問者)でもランダムで、行列式が…まあ、スペクトルに影響を与えますよね。それでもまだ(聞き取れない)だと推測してるんですけど。
正直、100%確信は持てません。ちょっと微妙で、この体制で何が起こるかを計算することについて、行列モデルの関数として、多くの未解決問題があります。だから、確信は持てません。はい?
(質問者)最初に述べられた(聞き取れない)…実際には一様かもしれません。
重要だったのは単に分散、標準的な正規化された分散だけです。
(質問者)ただ、一様分布でもいいんですか?
ああ、はい。普遍性の結果を証明しました。ランダム行列理論の意味で、ここで平均0、分散1/Nの任意の分布を持つことができ、いくつかの高次のモーメントがあれば、同じ極限の答えが得られます。ただ、この計算はうまくいきません。
この簡単な計算をするには、ガウス分布の回転不変性が必要です。
(質問者)そうですね、その通りです。
(質問者)すみません、つまり物理的な言葉で言うと、深いネットワークでは、ランダムなベクトルがそのNのために完全に爆発するか、ゼロになるかのどちらかということですか?
いや違います。もしL/Nが一定なら、ガウス…ああごめんなさい、ガウス分布の平均はゼロでした。ごめんなさい。
いや、L/Nが一定なら、一種の…
(質問者)ええ、でも深さが無限大に行くと、Lも無限大に行きますよね?
そうですね、Lは無限大に行きますが、L/Nは有限のままです。それがスケーリング極限の要点です。
解釈としては、次のスライドにありますが、L/Nはモデルの実効的な深さの役割を果たします。それが正しい考え方です。
ほな、それを述べて、もっと議論したいと思います。
モデルをσを含むものにアップグレードしましょう。σが重要だからです。そして、これらの全結合ネットワークの深さと幅の二重スケーリング極限に非常に興味を持ったことをまとめさせてもらいます。
ここには、ランダム行列理論側の2つの体制のアナログがあります。深さを固定して幅を無限大にすると、少なくともこの種の初期化では、NTKやlazy、またはカーネル体制と呼ばれるものが得られ、ニューラルネットワークは線形モデルになります。
これはニューラルネットワークの有名な極限ですが、ちょっと悲しいですね。ニューラルネットワークの全ての要点は、線形モデルではないはずだからです。
でも、ネットワークの幅を固定して深さを大きくすると、これらのネットワークは訓練不可能であることが知られていました。そこで、これらの非線形ネットワークでは何が起こるのかという疑問が生まれたわけです。
短い答えは次の通りです。隠れ層の幅が全て同じ大きな整数Nに比例すると想像してください。厳密に等しい必要はありませんが、比例している必要があります。
そうすると、ランダム行列の積の場合と同じように、モデルの複雑さを測る正しい方法は、LやNを別々に見るのではなく、その比率を見ることです。
例えば、この種の線形モデル体制からどれだけ離れているかを測る場合などです。これがニューラルネットワークの実効的な深さの役割を果たします。
例えば、ニューラルネットワークの実効的な深さがゼロに近づくと、たとえLが無限大に行っても、Nよりも遅く行くだけなら、依然としてこのカーネルまたはlazy体制にいることになります。
だから、特徴を学習したい場合、ニューラルネットワークを非線形にしたい場合、この種の精密な意味で、深さが必要だということがこの分析で初めて示されました。特徴学習にはL/Nが大きいことが示唆されます。
でも、先ほどの議論が示唆するように、代償を払わなければなりません。全てがL/Nの指数関数だったことを覚えていますか?だからL/Nが大きすぎると、実際に学習を行うには数値的に安定しすぎてしまいます。
これにより、人々が長い間ニューラルネットワークで遭遇してきた数値安定性の問題、爆発する勾配と消失する勾配の問題に対する一種の厳密な解決策が得られました。
基本的に、訓練開始時の勾配の分散を測ると、それらはL/Nの指数関数になるということです。これが定理の本当の意味です。
L/Nが大きすぎると、分散が非常に大きくなるか、非常に小さくなるかのどちらかで、数値的な積を得ることができません。
これは、ニューラルネットワークの非常にシンプルな位相図を構築することを目的としています。幅と深さが大きいと考えていますが、これらの分析では全て、訓練データポイントの数は固定されています。
これらの分析はそのように進みます。そして、既に幅と訓練データポイントの数が無限大に行くのは可換ではないことを見ました。だから、深さと幅と訓練データポイントの数が全て大きくなる体制で何か言えるかどうかは興味深い問題です。どんな極限が存在するのかさえ明確ではありません。
ほな、ここでもう一度止めて、質問があるか確認させてもらいます。スライドの欠点ですね。黒板での講義も考えましたが、それに専念する勇気が出ませんでした。
(質問者)そのスライドに非線形性の効果の式を入れられませんか?
はい、基本的にはこうです。これを省略しましたが、本当に大きなLに行きたい場合、非線形性の整形と呼ばれるものを行う必要があります。
つまり、各層の非線形性は恒等写像に近くなければならず、1/Lだけ恒等写像に近くなければなりません。それは少し馬鹿げて見えるかもしれませんが、L層あるので、深い線形ネットワークとの1次の差が得られます。それが重要なポイントです。
そして、恒等写像からの差がどれくらい大きいか、1/Lの定数、その定数がL/Nと掛け合わさって実際に影響を与えるんです。基本的にはそういうことです。
ほな、これはある種のスケーリング極限ですが、ここではランダム行列理論を使うことはできません。少なくとも、わたしの知る方法ではできません。これらのランダム場の相関関数を計算するために、統計物理学、基本的には統計力学や統計場理論の技術を使わなければなりませんでした。
そういったことがこのような定理に含まれています。
ほな、これがスケーリング極限のバージョン1でしたが、今からバージョン2をやっていきます。バージョン2はバージョン1よりも少し悲しいですが、ある意味ではより幸せでもあります。これから説明します。
少なくともこのバージョンのスケーリング極限については、非線形バージョンの論文も最近完成させましたが、それを正当に扱うには独自の講演が必要になります。だから、深い線形の場合に戻ります。
ここで非線形性を取り除き、確率的勾配降下法による学習の代わりに、MITの本当に優秀な共同研究者のAlexander Sokapaと一緒に、ベイズ推論による学習を研究することができました。彼は数学の博士課程の学生です。
これを訓練前の重みの初期分布と考える代わりに、各パラメータに対するこの種のIIDガウス分布を、予測に対する事前分布を定義するものと考えます。そして、訓練データセットを観察し、この分析の要点は、ネットワークの深さと幅と共に訓練データセットのサイズを大きくして、何が起こるかを尋ねることです。
定理はこんな感じでした。nのIIDサンプルを持つデータセットを観察します。負の対数尤度として単に平均二乗誤差を使います。これは、損失関数として平均二乗誤差を使うのと同じようなものです。そして、ゼロ温度でベイズ推論を行います。
つまり、通常の現代的なセットアップのように、データに正確にフィットし、全ての訓練データポイントに正確にフィットするという条件を強制します。
そして、この場合に分かったこと、わたしは本当に興奮したんですが、この複雑な事前分布を取るというこのモデル、各パラメータに対しては単純に見えますが、これらの行列の積に対する事前分布はかなり複雑です。ガウス分布の積はかなり複雑なオブジェクトですからね。
それらはある程度複雑ですが、事後分布の厳密な公式を得ることができます。最初は何も漸近的なことをする必要はなく、対数分配関数を書き下すことができ、Meijer G関数と呼ばれる特殊関数のクラスで厳密に書くことができます。
重要ではありませんが、モデルを厳密に解くと言うとき、特殊関数で答えを書き下せるということを意味します。それはほぼ同語反復のようなものです。
これに興奮した理由は、実践的なベイズ推論の93.7%は、L=0の場合、つまり単一のガウス行列を持ち、パラメータにガウス事前分布を持ち、二次の対数尤度を持つ場合、事後分布も再びガウスになるという事実に基づいているからです。
だから、厳密に計算でき、実世界でのベイズ推論を実際に行うのに本当に有用です。一般に、パラメータに線形なモデルを超えると、厳密に解けるベイズ推論の種類を見つけるのは非常にまれです。でも、これは厳密に解ける新しい例のクラスでした。
xに対して線形ですが、パラメータに対しては非常に非線形です。だから、わたしはそれに満足していました。
そして、学んだ2つのことは、データセットのサイズを大きくすることを許すと、全く新しいスケーリング極限の世界が現れるということです。実際、2つの実効的な深さの概念があることが分かりました。
もちろんL/Nは生き残り、これは以前に議論した事前分布の実効的な深さですが、得られる事後分布の実効的な深さの役割を果たす新しい深さの概念があります。それはL/Nですが、持っているサンプルサイズを掛けたものです。
ほな、位相図を見せましょう。直接説明するよりも見た方が分かりやすいと思います。
ここでまた、x軸は深さ、y軸は幅です。そして、ここではどこでも訓練データポイントの数が無限大に行きます。3次元で正確に描くことができなかっただけです。
いくつかの名前を付けましょう。事後分布の実効的な深さと呼ぶもの、サンプル数×深さ/幅をλと呼び、深さ/幅をγと呼びます。
位相図の最初の部分は、ここの上の方にあります。これはNTK体制のアナログで、サンプル数と深さが無限大に行っても、その積が幅より小さい限り、つまりλがゼロに行く限り、カーネル体制に戻ると言っています。単一のガウス行列を使った場合と全く同じ答えが得られます。
だから、わたしがこれを実効的な深さと呼ぶ理由です。これは、ゼロに行くと、深さゼロのニューラルネットワークと同じ予測が得られるパラメータです。
さらに、λの極限値によってパラメータ化された1パラメータ族のモデルが得られ、これはより非線形な事後分布を得るにつれて何が起こるかを記述します。
この弱結合学習相には基本的に2つの興味深い性質があります。1つは、事後分布がλの値にのみ依存することです。そして、それはあなたの訓練データの非常に中心的な統計、具体的には入力空間で観察した方向の割合と、データの最小ノルム補間のノルムです。
これが意味をなさなくても構いません。ただ、ここで漸近解析を行った後、明示的に書き下せる非常にシンプルな1パラメータ族の事後分布が得られると言っているだけです。
でも、次のことが分かります。事後分布の実効的な深さの有限の値では、証拠が最大化されることはありません。
ベイズ証拠に馴染みのない人のために説明すると、ベイズ理論には2つのモデルが与えられたとき、どちらのモデルがより良いか、つまりデータにより良くフィットするかを決定する本当に美しい方法があります。それがモデルの証拠を測ることです。これは基本的に、あなたのデータを観察した事後確率です。
証拠を最大化すること、つまり分配関数を最大化することは、より深いネットワークを好む正確な数学的理由を与える唯一の場所です。これがわたしの知る唯一の場所です。もしあなたがベイズ主義者で、証拠最大化を信じるなら、この実効的な事後深さの有限の値に満足することはありません。無限大に行かなあかんのです。
これが数学的にどう働くかです。これが深い線形事後分布の第1相です。
そして第2相があります。λが無限大、つまり事後分布の実効的な深さが無限大になる相転移があります。でも実際には事前分布の実効的な深さが変化します。
ここでも1パラメータ族のモデルがあり、ここでは強結合体制があります。ここでは、事後分布が異なるλに対して変化していましたが、ここでは実際に事後分布はどこでも同じで、選んだγの値に依存しません。
だから、証拠を最大化する普遍的な事後分布が得られます。良い事後分布を得たということです。でも、事後分布は同じですが、証拠は実際に異なります。事後分布は証拠を最大化しますが、同じ事後分布が異なる証拠を持つモデルに現れます。
そして、あなたの訓練データの統計に依存する、深さと幅の比率の一意の値γがあり、それが他のものを最大化します。
わたしが言いたいのは、これらの深い線形ネットワークでこんなに複雑なものを見つけるとは予想してなかったということです。でも、これは基本的にゼロ温度でのベイズ推論に対するこれらの深い線形モデルの位相図の完全な特徴付けです。
そして、わたしたちが見つけていること、ここでは発表しませんが、わたしの理解がまだ十分ではないからですが、非線形ネットワークでさえ、確率的勾配降下法を行うかベイズ推論を行うかにかかわらず、データセットのサイズが大きい場合、カーネル法からどれだけ離れているかを制御するのは、本当にこの実効的な深さの概念だということです。
だから、これは実際に有用な種の熱力学的パラメータです。そう言いたければですが。
ほな、もう一度止めましょう。この図を解析するのは非常に難しいか、おそらく不可能かもしれません。もし不可能なら、わたしは他のことに移りますので、無視してください。でも、少なくとも提示しようと試みたかったんです。
(質問者)じゃあ、最良の戦略は何ですか?最良の傾きは?
最良の傾きですか。それには公式があります。こんな感じです。γ(あなたの訓練データ)は、あなたのデータの最小ノルム補間のノルムを、α0で割ったものの対数です。α0は、あなたの訓練データが入力空間で埋める方向の割合です。
ちょっと正しく言えるか見てみましょう。プラス1を足したいと思います。これが公式だったと確信しています。要するに、公式が得られるということです。そして、それは完全に明示的です。少なくともわたしにとっては、それを解釈するのは完全に明白というわけではありませんが、計算可能な何かが出てくるのを見るのは本当に嬉しかったです。
それが最良です。はい?
(質問者)はい、これを少し外挿しようとしてるんですけど。(聞き取れない)大文字のN。(聞き取れない)
そうですね、ありがとうございます。これを言うべきでした。通常、L/Nの正しい一般化は、Nsの逆数の和のようなものです。
それが通常の働き方です。だから、本当に一般化すべきなのはL/Nです。そして、パラメータの数は、わたしが見る限り、何か自然な方法で直接入ってこないように見えます。ただし、非線形の場合はどうすればいいか分からないという但し書きがつきます。
(質問者)次元のようなものですね。
その通りです。わたしはそう考えています。各層でデータのN次元表現のようなものだと。そんな感じです。
ほな、とても良いです。あと数分しかないと思います。そうですよね?7分です。
(質問者)はい、7分です。
ほな、素晴らしい。じゃあ、最初に見せた ResNet の図に戻りましょう。ResNet は実際に全結合ネットワークよりもずっと簡単です。これはわたしたちがはるかによく理解しているものです。
ResNet の定義はこうです。全結合ネットワークとは少し違います。入力 x から始めて、W × x を計算する代わりに、ここで正しい正規化を行っていますが、元の入力にアフィン変換を加えたものを返します。
これが最初の層でやることです。次の層では、最初の層で生成したものと生成したものの差、つまり残差を学習しようとします。そして、それを以前のように単一の層としてモデル化します。1/√(次元×深さ) をかけます。これは完全に明白というわけではありませんでしたが、振り返ってみれば正しいものを入れたということです。前の層の表現に適用された一種の単一の層です。
これを大文字の L 回行います。L 個の残差層があり、その後、以前のようにモデルの読み出しがあります。これがわたしの ResNet の定義です。
最適化手順では、勾配降下法を行いますが、学習率、あるいはここでは学習率スケジュールを幅の因子でリスケールする必要があることが知られています。
これは平均場パラメータ化、あるいは μP パラメータ化と呼ばれるニューラルネットワークのパラメータ化です。これを行う必要があるのは完全に明白というわけではありませんが、何らかの非自明な学習ダイナミクスを得るには、これが正しいことです。
この設定で興味があるのは、L と N をスケーリングする際に、この学習率、つまり実用的な側面である a(t) の最良の選択を転移できるかどうかです。
ネットワークをより広く、より深くしたいとき、実際に安価な方法で最良の学習率を見つけることができるでしょうか?
基本的な主張は、これは定理から来ているのですが、N と L が無限大に行く際のこれらの訓練ダイナミクスの極限を、ある程度恐ろしいけれども完全に明示的な方法で特徴付けることができたということです。
このパラメータ化で、ここに 1/√(NL) があり、ここに 1/N があり、ここに N がありますが、これらは全て必要なステップでした。そうすると、学習率 a(t) のようなハイパーパラメータ、ここには本当に入れませんでしたが、バッチサイズや運動量係数などは、実際に深さと幅を変更したときに転移します。
この分析は今のところ、固定された訓練データセットサイズを必要とし、これらの処方はデータセットサイズが無限大に行くと破綻します。
前のスライドで示したのは、成長するデータセットサイズでの学習の厳密な分析がある数少ない例の1つです。だからわたしはそれに興奮したんです。
ほな、このハイパーパラメータ転移のプロットに戻りましょう。これは既に見せたものです。ここでのハイパーパラメータは、最適化していた定数ステップサイズで、深さと幅にわたって転移します。
でも、別のことを見せましょう。実践的なことをする美しさは、定理が適用されなくても実験を実行できることです。
前のプロットは、定理を証明したモデルに対するものでした。ただ、間違いを犯してないことを確認するためです。
でも、ここでは実際にかなり洗練されたことをしました。自己注意機構やバッチ正規化、そして全ての機能を備えたビジョントランスフォーマーを取り、全てのものをリスケールしました。これが 1/√L が示唆するものです。そして、複雑なコサイン減衰学習率スケジュールを使いました。
これは、少なくともコンピュータービジョンのタスクでは、実践でかなり一般的に行われることです。そして、複雑なデータセットで行いました。ImageNet と Tiny ImageNet で行いました。
これらは、まあ、ImageNet は今日ではあまり現実的とは考えられていませんが、確かに CIFAR10 よりは現実的です。
言いたいのは、モデルが非常に異なり、定理が厳密には適用されなくても、わたしたちは非常に喜びました。Tiny ImageNet とこちらの ImageNet の両方で、学習率に対して非常に良いハイパーパラメータ転移が得られました。
ここではそんなに多くの実験を実行しませんでした。これらの学習率全てをフィルタリングするのはかなり高価だからです。でも、悪くありません。深さは3倍変化し、これは数値的な理由で幅を変更できる最大のものですが、パラメータ数は幅の2乗でスケールします。だからかなり大きな変化です。
そして、理論が直接適用されないこれらのモデルでも、実際に処方が転移に対して完全に機能することが分かりました。だからわたしたちは非常に嬉しく思いました。これは実践で人々が実際に使うのを喜んでいるものだと思います。
ほな、もう一度1秒だけ止めて、これについて質問がないか確認させてもらいます。あと1枚スライドがあります。以上です。
(質問者)グラフを理解しようとしているんですが。(聞き取れない)
はい。
(質問者)ここでの新しいことは、幅と深さを実際に正規化することですよね。(聞き取れない)
はい、その通りです。考え方としては、SDEの時間離散化を見たことがあれば、重みはランダムです。ちょっと戻ってみると、訓練開始時には、重みをランダムだと考えてください。
この1/Nは、これが大きなガウス行列で、この1/√Nは前に示したもので、正しい正規化です。でも、これはあなたのプロセスの増分、つまりZ_L、Z_2からZ_1を引いたものがガウス分布に従うと言っているようなものです。
そして、この1/√Lは、標準的なオイラー丸山型の離散化のようなものです。1/Lはあなたのδτで、層のインデックスが総層数で正規化されたときにどれだけ変化するかです。
でも、分散標準偏差のみが変化するので、1/√、つまりδτの平方根で正規化する必要があります。だから、これを推測する原理的な方法がありますが、実際に極限を取って物事が収束することを証明する必要があります。それがこれの由来です。
この数値計算についてもう1枚スライドを入れたのを忘れていました。どれだけの計算を節約できるか聞かれるかもしれません。本当に20エポックまで行く必要があるのでしょうか?ここに20と書いたままにしましたが、なぜかは分かりません。9エポック、3エポックでもいいのでしょうか?
論文ではこれをあまり押し進めませんでした。原理的な方法で尋ねる方法が明確ではなかったからです。でも、9エポック後に見つかる最良の学習率は、3エポック後に見つかる最良の学習率と同じなので、多くの計算を節約する余地があります。
最小のモデルを最小のエポック数で訓練したいわけです。それがゲームです。最小値が何かを特徴付ける方法は確信が持てません。確かに、データセット依存であり、そういったことがあります。
ほな、最後に1つのことをしましょう。わたしのモデルを要約します。これがわたしの残差ネットワークで、これがわたしの最適化スキームです。そして、これらの ResNet、あるいは実際にこれらの全結合ネットワークでの学習をどのように分析するかについて、わたしが思う興味深いポイントを1つ挙げたいと思います。
要点は基本的に、対称群があるということです。各層の全てのニューロンは分布的に完全に交換可能です。あるニューロンを7番目のニューロン、別のを12番目のニューロンと呼んでも、実際には何の違いもないわけです。だから、各層のニューロンの対称関数だけが問題になるんです。
実際、わたしたちが気づいたのは、これは本当にJandiceとここハーバード大学のBlakeの発明だと言えると思いますが、彼らは全結合の場合でこれを行い、ResNetの場合にも引き継がれるんですが、各層で2つのカーネルを研究する必要があるということです。
順伝播の統計を再現するカーネルを研究する必要があります。これは、2つの異なる入力を与えて、得られる表現のベクトルの重なりを測るカーネルです。
そして、同じことを行いますが、これは平均がゼロになるように少し異なる正規化で、逆伝播のためのものです。ある入力での層の表現に関する出力のヤコビアンと、別の入力でのその層の表現に関する出力のヤコビアンを計算し、それで正規化します。
要するに、これらのカーネルのダイナミクスの観点からのみ、訓練の統計を基本的に書くことができるんです。そして、有限の幅では、これらのカーネルは変動するオブジェクト、ランダムなものです。
でも、これらのカーネルが単なる平均であることが分かります。そして、本当にチェックすべきことは、これらのカーネルが自己平均化する、つまり無限幅の極限でそれらの平均に収束するということです。
これらが、言ってみれば研究すべき正しい秩序パラメータなんです。
ほな、定理をざっと述べました。得られる公式、これらのカーネルのSDEはかなりひどいものです。でも、要点は、NとLが無限大に行くと、これらのカーネルは基本的に明示的な進化方程式を満たすということです。
基本的に2つの時間インデックスがあります。1つは層のインデックスで、ネットワークを通過した層の割合のようなもので、時間インデックスとして機能します。そして、実際の最適化の時間があります。だから、ある意味で2変数のカーネルなんです。
そして、ハイパーパラメータ転移の観点から見て、この明示的な進化で重要な唯一の部分は、学習率スケジュール全体、a(t)全体が、極限のダイナミクスにおいて単に無次元の1次のハイパーパラメータとして生き残るということです。
そして、極限のダイナミクスは非常に苦痛で、少なくとも今のところ明示的に解くことは本当にできませんが、最適化すべき無次元のパラメータとして学習率が残るような正しいパラメータ化を選んだことが分かります。
そして、それがわたしの観点からすると、ハイパーパラメータ転移を行える目印なんです。

コメント

タイトルとURLをコピーしました