シンポジウムMBCのノート:ディープラーニングが機能する理由を理解する試み

私はMBCシンポジウムで興味深い報告について話し続けています(ところで、MBCはMind Brain Computationの略です)。







画像







スーリヤガングリは、理論的な神経科学の人です。つまり、さまざまなレベルでのニューロンインパルスの測定に基づいて、脳がどのように機能するかを理解しています。







そして、ここでは、神経科学に関係なく、世界でディープラーニングが行われ、何かを教えるための何らかの人工的なシステムが得られます。

解像度が限られている、再現性が難しいなどの脳とは異なり、私たちは深いネットワーク、すべての重み、すべての条件について完全に知っています。 疑問が生じます-脳がどのように機能するかを理解しようとする場合、まず、そのような小さなシステムがどのように、そしてなぜ機能するかを理解しようとしますか?







脳も機能することを期待せずに、後で適用できる方法を開発する可能性が高くなります。







免責事項:投稿はclosedcircles.comの編集されたチャットログに基づいて書かれているため、プレゼンテーションスタイルと明確な質問です。







レポート自体と実際に公開された作品へのリンクがありますが、これについては議論しますが、真剣に、投稿を読むことをお勧めします。







ディープラーニングと呼ばれるようになる以前のニューラルネットワークの非常に古い結果の1つは、ネットワークが階層的に研究されているように見えることです。







正確に何を意味するのか



この種の昔の研究がありました。







画像

ネットワーク入力に何らかのオブジェクトと関係を与えましょう。出力では、「カナリアが動く」などの機能を学ぶように求めます。

現在の分類タスクとは異なり、このタスクはネットワークによって情報を保存するのは愚かであり、テストデータセットはなく、トレーニングデータセットのみがあります。

入り口-オブジェクトと関係のワンホットエンコーディング、出口で特徴のセットの確率を取得する必要がある場合、ネットワークには1つの隠れ層しかありません。

ネットワークがトレーニングデータセットをどのように「教える」かについてのみ学習します。







そして、ネットワークは最初に「高レベル」の動物植物への分割を教え、それから初めて各種の詳細を教えます。







画像

さらに、クラス「動物」と「植物」はどこにも見当たりません。 ネットワークが最初は何も知らない動物と植物の特定の種のみがあります。







しかし、彼らはどのようにしてこれが起こると判断したのですか?

2番目の図を見ると、3つのクラスタリンググラフがトレーニングのさまざまな段階にあります。

最初はすべてがランダムで、すべてが低いです。 中央に「高い」メインカテゴリが表示され、動物と植物が分離され、その下で2番目のカテゴリが「成長」します。



わかりました、私が理解しているように、隠しレイヤーのアクティベーションはいくつかのプロパティに対応しています。 したがって、同様のプロパティを持つオブジェクトは互いに近くなります。

はい さらに、「動物/植物」の高レベルの分離が最初に研究されていますが、どこにも直接登録されていませんが、データからのみ研究されています。



面白い! そして、これはすべての初期データ/重みで自然に繰り返し可能です。

はい


彼らはなぜこれが起こっているのか理解しようとしています。



これを行うために、彼らはさらに単純なシステム、一般的に非線形性のない 1つの隠れ層持つネットワークを検討します。







画像

このようなシステムがあります-オブジェクトのワンホットIDが入力に与えられ、そのプロパティを出力する必要があります。

繰り返しになりますが、調査方法のみを確認し、テストデータセットはありません。

非線形性のないこのようなネットワークは、平滑線形行列と比較して表現力がありませんが、2次の偏差が既に最適化されているため、2つのレベルの存在により学習が非線形になります。

そのようなシステムの学習ダイナミクスの方程式は、すでに分析的に解くことができます。







一般に、そのようなシステムが最終的に「学習」することは長い間知られており、特徴オブジェクトの行列の特異値分解を目指しています。







(SVDの概要を説明するのは難しいですが、これは何らかの線形分解であり、各オブジェクトに対して「内部表現」のベクトルが導入され、そこから線形変換によって結果の特徴が得られると想像できます。たとえば、 こちらの良いチュートリアル)







特徴の数によるN次元の行列?

NxM。Nはフィーチャの数、Mはオブジェクトです。


つまり、結果の埋め込みは単なる内部SVDベクトルです。

さらに興味深いのは、システムがこの分解に「傾向」を持っていることです。

最初に、システムは最大の特異値に対応する分離を「学習」し、次に以下を学習し、次に小さな値を学習します。







この動作は、is点の存在によって説明されます。

サドルポイントは、勾配が0のポイントですが、それらは局所的最小値でも局所的最大値でもないため、勾配降下はそれらに転がり込むのが好きで、それらから抜け出すことは困難です:







画像







以下の図では、赤い点は同じサドルポイントです。







画像







最初に、システムはそこに転がり込んで長時間そこをさまよい、最後に緑の線に沿って離れます。







左側のグラフには何がありますか-入力/出力モードの強度?

これは、実際には各modの特異値です。


また、SVDについては、システムのパラメーターを決定するものをよく知っています。これらはオブジェクト間の相関行列によって決定されます。つまり、SVDはこれらのオブジェクトの中で最も相関のある方向を見つけます。

そして、特定の方向に「整列」されるオブジェクトが多いほど、この方向の特異値は大きくなります。







また、addle点と勾配降下-特異値との関係についてもう一度説明します。

線形ネットワークの最適化空間では、各特異値が点に対応し、対応する特異値の「学習」がこの点からの「出口」に対応することがわかります。



すべてのサドルポイントに到達するために必要なすべての機能を学習するには?

はい もちろん、ここでは「埋め込み」の機能を意味し、最終的な機能ではありません。

そして、入るだけでなく、それらから抜け出すこと、すなわち たとえば、サドルポイントは植物と動物を分離します。



埋め込み機能-隠れ層ニューロンの活性化ですか?

はい あなたがその中を突っついている間、あなたは何が何であるかを理解することはできませんが、あなたが一方向に落ちた場合-まあ、すべての木があります!



ええ、理解できますが、どのようにして最初に最大の特異数のポイントに落ちることがわかりますか?

彼女は最大のピットを持っており、最初にそこに滑り込むからです。



誤ってどこかをさま​​ようことは機能しませんか? 他のローカルミニマムへ

線形システムには極小はありません。

通常、いいえ、データセットからの主な方向が重要であるため、統計的に機能しません。



そしてここで愚かな質問-勾配降下は目標がピットに落ちないのですか?

ええ、はい。 しかし、サドルポイントは彼を惹きつけますが、最低でもありません。 それらから抜け出すことは困難ですが、外に出ると、勾配降下によりyou点から遠く離れた場所に移動します。



そしてそれはデータセットに依存しますか? たとえば、動物/植物間よりも魚/鳥のデータが多い場合

はい、そうです。 特異値は、ローカルではなく、データセット全体のプロパティです。



そして、これはすべて、最初のタスクに関連して私たちに何を伝えますか?

多少簡略化された定式化(ただし、記述された特性は保持されます)では、最大特異値から始まるSVD分解に従ってトレーニングが行われることがわかりました。

主な推進力は、オブジェクト間の最も強い相関です。

これはまだ状況を完全には説明していませんが、重要な中間結果です。


そして次の瞬間、階層ビューに入る方法。

アイデアはこれです:世界の絵が階層的である場合(つまり、最初に特定の高レベルの特徴が決定され、詳細がそれに依存する場合)、その特徴は階層が高くなり、影響を受けるオブジェクトが多くなり、相関関係が説明されます。







彼らはそのような単純なモデルでそれを示しています。

次の簡単な方法でオブジェクトを生成します-最初に1つのフィーチャをランダムに生成し、次にそれが判明したオブジェクトに対しては0、別のフィーチャをランダムに生成します。







次の図では、これは右上のツリーで示されています。

画像

オブジェクトが非常に加熱されている場合、最も強い特異値は最初のノードのみに対応することがわかります(全体として、これはほとんどのオブジェクトを分割できる方向です)







最後に、元の現象の説明を提供します。

単純化されたネットワークは、オブジェクトの最も強い相関の方向を自然に順番に学習します。実際のデータのオブジェクトには階層プロパティがあるため、階層の上記のプロパティが最も強い相関を生成します。

したがって、ネットワークは最初にそれらを教え、より詳細なもの(少数のオブジェクトに影響を与える)を教えます-2番目。







このアイデアはさまざまな方向に展開できます。



たとえば、心理学にはそのような神秘的な瞬間があります-カテゴリーの形成です。

世界にはオブジェクトがあり、それらには機能があります。 脳は「動物」などのカテゴリーをどのように区別しますか?







画像







順番に考えると、鶏と卵の問題が発生します。









そして、「一貫性」がいかに重要であるかはよく知られています。

典型的な例は、カテゴリ「犬」には「犬」という単語がありますが、カテゴリ「青いもの」にはありません-いいえ。 青色のものが似ていないからです。

トレーニングでこの効果を実証するために、ランダムデータを生成しましょう。







画像







ここでは、右側にランダムな特徴を持つランダムなオブジェクトを生成しました-マトリックス可視化。 これらのオブジェクトを、すでに気に入っている線形ネットワークの入力に送り、オブジェクトと機能の対応を学習します。

これは、以前に説明したのと同じ状況と見なされます-ここにオブジェクトと機能のスープがありますが、ここにカテゴリはありますか?

データには実際にカテゴリがあります-偶然ではなく、オブジェクトが特定のカテゴリに属する​​かどうかにコインを投げてデータを生成しました。 行の列を再配置すると、次のようになります。







画像







つまり、このノイズには実際には3つのカテゴリがあります。 問題は、私たちのネットワークがそれらを学習するかどうかです。







これは、データセット全体に対するこの長方形のサイズに依存することが分析的に示されることがわかります。 カテゴリが十分に大きい場合、学習し、そうでない場合、ノイズにdrれます。 さらに、カテゴリを識別できるという事実は、カテゴリ内のオブジェクトの数だけでなく、データセット全体に対するサイズの比率にも依存します。

カテゴリサイズの臨界値は、sqrt(N * M)に比例します。







ちなみに、「すべての青いもの」という言葉がないのは、私にはあまりわかりません。 すべてのデータに対する比率は非常にまともです。

いや! 青いオブジェクトには一致する機能が少なすぎます。

正方形は大きいですが、非常にまばらです。 カテゴリの外観については、領域のサイズとその「密度」の両方に制限があります。


さて、最後のポイント。

「カテゴリ」の概念がデータセット全体に依存しているという事実は、従来の心理学でこれについて話すことが非常に難しい理由を説明しています。

カテゴリ内のオブジェクトの選択は、人類の全体的な経験に依存し、「ローカル」にアプローチすることは非常に困難です。

しかし、このような単純なモデルでさえ、ノイズの中の構造を見つけることによって、学習がこの鶏と卵の問題を解決する方法を示しています。







まとめると



一方で、この作業は、どのネットワークが非常に効果的に訓練されているかを暗示しています-実世界のデータは特定の構造を持っているためです。

一方、ここでも理論が実際からどれほどかけ離れているかを明確に示しています。議論中のモデルは、非常に深い現代のアーキテクチャは言うまでもなく、過去のニューラルネットワークの標準によっても非常に原始的です。

ただし、結論は外挿できます。








All Articles