Chapter Content
えーっと、チャプター7ね、始めるか。今回は「メタへ行く」っていうテーマ、うん。
まあ、外から見るって言うか、自己言及的っていうのかな、そういうのを一番うまく表す言葉が「メタ」なんだよね。メタっていうのは、こう、自分自身について語ること。例えば、メタデータってあるじゃない?あれはデータに関するデータのこと。データのコンテンツとか、形式とか、構造とかを説明するんだよね。これで、個々のデータが、ある全体的な構造にちゃんと従ってるか確認できるわけ。メタ分析も同じ考え方だよね。一つの研究だけじゃなくて、複数の研究の結果を組み合わせて、より統計的に信頼できる結論を導き出そうとするんだ。
メタへ行くっていうのは、何かこう、グループの中の一つの事例だけじゃなくて、もっと深く、普遍的な真実を見つけようとする試みなんだよね。メタ分析の場合、それぞれの研究には、固有のバイアスがあるから、それだけじゃ真実のほんの一部しか見えない。メタへ行くっていうのは、システムの核心にある、隠れた真実を学ぼうとすることなんだ。隠れた構造っていうのは、便利な名前とかカテゴリーがないんだよね。でも、確実に存在していて、システムの一つの現れ方にすぎない。多くの事例を組み合わせることで、その真の姿に近づけるんだ。
で、重要なのは、メタへ行くっていうのが、抽象化を生み出す唯一の方法だってこと。人がどうやって抽象概念を作るか考えてみて。前の章で見たように、抽象化っていうのは、表面上は全然違うもの同士の類似点を見つけることで生まれるんだよね。より深い類似点が見つかれば、情報的にも物理的にも、より高次のカテゴリーを作ることができる。これって、システムの内側からはできないんだよね。内部からの視点だけでは、システムをカテゴリーに分類できない。外に出て上から見ることで初めて、システム内部の様々な部分の類似点に気づけるんだ。だから、抽象化を作るには、メタへ行く必要があるんだよね。自分自身を見つめ直し、異なるものを繋ぎ合わせる自己言及的なプロセスなしには、抽象化は生まれないんだ。
うん、これはメンタルな抽象化だけじゃないんだよね。物理的な抽象化も、内部の要素を一つのまとまりにするには、メタレベルの観察が必要になる。人間は、高いレベルの物理的な抽象化を持った道具をデザインするには、上から類似点を見つける必要があった。車のシフトレバーってあるじゃない?あれは、内部の部品を連携させる、より高次の物理的な抽象化のインターフェースだよね。あれは、人間が内部の部品が同じ目標に向かってどのように連携するかを想像できなければ、作られなかったはずだよ。システムの内側からは、全体像は見えないんだよね。外からしか見えない。
えーっと、誤解しないでほしいんだけど、メタは単なる抽象化のレベルじゃないんだよね。抽象化自体は、自分自身について語るわけじゃなくて、下位の要素を包含する高次の構造として存在する。でも、抽象化の創造っていうのは、コメントしているシステムの外に存在するプロセスなんだ。抽象化はまだシステムの内側にあるけど、メタは外側にあるんだ。いくつかの要素を一つのグループにまとめ、インターフェースを公開する場合、この新しい抽象化レベルは、システム自体から一歩外に出ることによってのみ形成されたはずだよ。
物理的な抽象化を作るためにメタへ行くっていうのは、人間の活動として理解できるかもしれないけど、自然によってもたらされる他の抽象化とどう関係するんだろうか?以前、抽象化による進歩は絶対的だって言ったよね。つまり、より困難な課題を解決するために進化するシステムは、物理的な抽象化のレベルを上げなければならない。そして、これは自然が創発によって達成してきたとも言った。創発的な構造っていうのは、自然に難しい問題を解決するために情報を圧縮する物理的な抽象化のレベルなんだ。でも、自然はどのようにメタへ行って、物理的な抽象化を作り出しているんだろうか?
ディープラーニングモデルを考えてみて。ディープラーニングがうまくいくのは、明確なルールベースのエンジニアリングによるものではなくて、複雑なモデルの内部に、入力を出力にうまく変換する何かが現れるからなんだよね。これらはブラックボックスアプローチだから、内部に何が現れても、正確な分析方法で理解することはできない。でも、この変換を助ける異なるレベルの抽象化の創発があることはわかっている。
顔認識の場合、ディープラーニングは、入力データからより複雑で意味のある特徴を段階的に抽出するために、抽象化のレベルを上げていく。システムはまず、エッジ、角、テクスチャなど、入力画像から低レベルの特徴を抽出する。次に、これらの低レベルの特徴を組み合わせて、目、鼻、口など、画像内のより複雑なパターンを抽出する。抽象化のレベルはどんどん上がっていって、システムは前のレベルを、顔の表情やポーズなどのより全体的な顔の特徴に統合していく。最終的に、抽象化は顔の本質を捉えるんだ。
これはすべて、ディープラーニングの自己言及的な側面のおかげなんだよね。AIにおける自己言及っていうのは、ディープラーニングシステムが、ネットワークを通過するたびに、内部構成を更新する方法から生まれる。モデルが推測を行い、ある程度の誤差がある場合、その誤差情報を使って、次の推測を改善するんだ。ネットワークは何度も推測を行い、その推測が最終目標にどれだけ近いかに基づいて、構成を更新していく。優れたモデルを設計するっていうのは、モデルの内部構造を知ることではなくて、優れた自己言及のフレームワークを配置することなんだ。
だから、ディープラーニングはメタへ行くことの一つの形なんだよね。フィードバックループを使って、自分自身を見つめ直し、物事がうまくいっているかどうかを確認するシステムなんだ。メタへ行くっていうのは、パラメーターを明示的に設定したり、ルールを使ってシステムを設計したりするのとは全く違うんだ。最終的な解決策にどんなルールがあっても、それは意図的なプログラミングによるものではなくて、自動的に導き出されたものなんだ。だから、自己言及的なアプローチで物事を構築するっていうのは、根本的に異なるんだ。内部の詳細から一歩外に出て、変動、反復、選択に努力を重ね、正しい内部に収束させることで、認識論的な謙虚さを認めているんだ。それは設計の対極にあるものだよね。
AIモデルの内部パラメーター値は自動的に見つかるので、意図的なエンジニアリングは、外部でのみ行われる。ハイパーパラメーターっていうのは、人間がディープラーニングのトレーニングフェーズを可能な限り最適に設定するために行う選択なんだ。これは全く別の問題で、すべての可能なハイパーパラメーター値の可能性空間内で機能する。この次のレベルアップも、外部からのアクションのみという前提で動作する必要がある。最適なハイパーパラメーター値を意図的に設定する方法はわからない。これらを見つけるには、人間はメタへ行き、優れた値が見つかるまで多くの異なるハイパーパラメーター値を試さなければならない。より良い出力が得られるまで、さまざまな学習率、バッチサイズ、エポック数、およびネットワークアーキテクチャを実験する必要がある。メタへ行くとき、私たちは学習方法を学んでいるんだ。
AIバージョンのメタへ行くことは、ハイパーパラメーター最適化(HPO)、メタ学習、ニューラルアーキテクチャ検索(NAS)などの方法を使用する。これらの違いはこの議論には重要ではなく、問題空間から一歩外に出て、何がうまくいくかを見つけるために外部で動作するすべてのバージョンにすぎないということだけが重要だ。
メタ分析が異なる研究を統合して、一つの研究だけでは示すことができない何かをより深く学ぼうとするのと同じように、AIのメタ学習は、単一のモデルでは得られない何か、つまり、入力を非常に一般的で強力な方法で出力に変換する隠れた構造を見つけようとする。繰り返しますが、この取り組みでは、特定のこと何か一つを学ぶのではなく、学習方法を学ぶことに重点を置いているんだ。
ディープラーニングシステムがうまく機能するためには、モデルの内部に抽象化を顕在化する必要があり、それらの抽象化は、システムから継続的に一歩外に出る方法を見つけない限り実現できない。これはディープラーニングだけではない。これは、構築するあらゆる複雑なソリューションに当てはまる。入力を柔軟に決定論的な方法で出力に変換する抽象化につながるのは、メタへ行く行為なんだ。難しい問題は、メタへ行かなければ解決できないんだよね。
問題の構造。自然のパターンは反射として。
問題には構造があるんだ。この構造は、特定の問題を定義する抽象化のレベルから生まれる。自然界における究極の問題は、生存だよね。生命は、事故や試練の猛攻に対して、自らの存在を維持しようとしなければならない。でも、生存っていうのは、人生におけるすべての課題の最上位のバージョンにすぎない。生存よりも低い抽象化レベルには、食料、水、避難場所がある。さらに低い抽象化レベルには、高次のレベルを解決しようとする活動がある。食料を得るために、動物は狩り、採餌、漁り、ろ過、放牧、掘り、待ち伏せをし、道具を作るものもいる。水を見つけるために、動物は移動し、植生を認識し、降雨を利用し、一連の探索行動を行う。避難場所は見つけるか、作成する。アナホリフクロウは、リスなどの他の動物によって掘られた放棄された巣穴に住んでいる。避難場所を掘るという問題に対して、より低いレベルの抽象化を定義し続けることができる。放棄されたリスの巣穴が見つからない場合、アナホリフクロウはくちばしと爪を使って自分の穴を掘る。これは、新しくより低いレベルの具体的な課題を提示する。フクロウは、砂地やローム地などの十分に緩い土壌のある場所を選び、避難場所が安全であることを確認するために、数フィートの深さのトンネルを掘る方法を見つけなければならない。などなど。
生命に提示されるすべての課題には、構造があるんだ。一種の階層構造だよね。これは、いわゆるマズローの欲求階層を示唆しているようだけど、ここでは特に抽象化のレベルと自然の計算との関係について話しているんだ。問題は、常にネストされた抽象化のレベルに分解でき、下位レベルは課題の上位レベルのカテゴリーに包含される。
自然界のすべての解決策は、提示された問題を解決する物質の構成であるため、自然の解決策を問題構造の反映として考えることができるんだ。単に直感的な意味だけではなく、特定のパターンが形成されるという意味だ。シダ、ヒトデ、サンゴ礁に見られるパターンは、解決する問題のように見える必然的な構造を帯びている。フラクタル、螺旋、波、六角形のパッキング、テッセレーション、樹状の分岐など、自然界に見られるすべてのパターンは、問題構造の反映を見ているんだ。
もっと具体的に言えば、ロマネスコブロッコリーのネストされたフラクタルや、ヒマワリの頭の種の螺旋状の配置を見ている場合、その生物の一連の環境上の課題が抽象化によって配置されている方法を見ているんだ。環境は単にヒマワリに生き残ることを求めるのではなく、生存という究極の高レベルの目標が実現するように、より深いレベルの課題が解決されることを求めているんだ。
自然界に見られるオブジェクトは、物質の構成と問題構造の重複の結果なんだ。ロマネスコブロッコリーのさまざまなレベルと、この生物が解決する問題における抽象化のネストされたレベルの間に線が引かれているのを想像してみて。これは、生命と同様に無機物にも当てはまる。塩、金属、岩石、川、山はすべて、解決する問題に固有の構造に対応する構成なんだ。この意味で、自然の解決策は環境とはそれほど区別されず、問題と解決策の全体的な重複の一部なんだ。
以前に述べたように、このように問題を定義することは、精神的な認識の再構築ではない。精神的な構造を物理世界に投影する空想的な理論ではない。還元主義が有効であれば、そうかもしれない。しかし、複雑さの下ではそうではない。私は、物質が小さな断片から大きな断片に移動し、自然に見られるパターンを生成する物語を語る因果的な決定論的なステップのセットをレイアウトしているのではなく、自然が達成している必然的な問題解決の性質を主張しているんだ。それは、情報、計算、進化について私たちが知っていることと完全に一致している。自然に見られるパターンを問題構造の必然的な反映として見るのは、あまりにも理にかなっている。
これはすべて、情報的な抽象化と物理的な抽象化との間のつながりの証なんだ。問題の構造は、世界の定義と人生の動きのために私たちの心が利用する抽象化の一種である、情報的なバージョンの抽象化を私たちに提示する。自然に見られる物理的な構造は、これらの抽象化の物理的なバージョンを私たちに提示する。自然が岩、川、山、ヒトデ、フクロウ、ビーバーを作り出すためには、環境を構成する情報的な抽象化と重複する物理的な抽象化のレベルを表現する必要があるんだ。
自然はより高く到達できる。
自然は、人間が考案できるものよりもはるかに強力なコンピューティングエンジンなんだ。私たちのAIシステムには自己言及と抽象化の側面があるけど、自然はこれを極端に追求している。自然バージョンのメタへ行くことを考慮する前に、AIテクノロジーでこれを行う私たちの試みをもう一度考えてみよう。すでに述べたように、内部パラメーターを意図的に設定することはできないため、トレーニングに関連する値を設定することによって外部から操作する。学習率、バッチサイズ、エポック数、層数、層あたりのニューロン数などを選択する。これらはモデル内部のものを指示するのではなく、学習に使用されるプロセスを構造化するのに役立つだけだ。これらの値は、システムの内臓の外側に存在するため、メタへ行くことの最初のレベルと考えることができる。最適な値を取得すると、可能な限り最良の抽象化が内部で生成されるはずだ。
しかし、これらの値は何であるべきか?これはそれ自体の問題、メタ問題だ。ここでは、個々のモデルの最適なパラメーターを知ることにはあまり関心がなく、どのモデルの最適なパラメーターを学習する方法を学ぶことに関心がある。前述のように、このメタ問題は、ハイパーパラメーター最適化(HPO)、メタ学習、ニューラルアーキテクチャ検索(NAS)などの手法を使用してアプローチされる。これらのうちの1つだけが「メタ学習」というタイトルになっているけど、それらはすべて、可能な限り最良の外部値を見つけるというメタ問題を解決しようと試みているんだ(妥当な時間内に)。
1つのアプローチは、多くの異なるモデルを組み合わせて、メタ学習者と呼ばれる単一のより優れたモデルを学習および展開することだ。考え方は、単一のモデルは一般化された知性を示すには狭すぎるけど、多くのモデルはより潜在的な何かを学習し、より強力なエンティティを提供できるということだ。しかし、課題が手に負えなくなる前に、グループに組み合わせることができるモデルの数には限りがある。各モデルは個別にデータでトレーニングする必要があり、一連の実験と検証が必要になる。しかし、モデルのどの組み合わせが最適かを確認するために、メタ学習の高レベルの問題も実験と検証を行う必要がある。この上位の問題には、決定する必要がある独自のパラメーター値のセットがある。しかし、そこで止まる必要はあるのか?異なるメタ学習フレームワークを新しい組み合わせに組み合わせることができ、独自の外部パラメーターのセットを持ち、再び実験と検証を行うことができる。
物事をより大きくより大きなグループに組み合わせることに関連する可能性空間は、天文学的をはるかに超えるサイズに爆発する。これにより、複雑なものを設計するためにメタへ行くことの実現可能性に疑問が生じる。設計の根本的な制限を受け入れたとしても、構築努力を実現可能にする唯一のチャンスは設計ではないのか?確かに、何がうまくいくかを確認するためだけに、大規模な試行錯誤を受け入れたいかもしれないけど、非常に多くの実験を実行すると、このアプローチを最終的に不可能にするように思われる計算需要が発生する。
しかし、設計は可能性の極端な組み合わせ爆発を切り抜けることはできない。この本全体で議論したように、設計は複雑なものに関しては根本的に無効な前提に基づいている。設計は答えになり得ない。しかし、一見すると、メタレベルで動作しても、問題を内部的に解決するための計算需要を軽減することはできないように思われる。システムの外に出たからといって、下位レベルの問題を解決する必要がないわけではない。これは懸念を引き起こす。メタへ行くことはどのようにして物事を構築する方法になるのか?
いつものように、自然が答えを持っている。自然は非常に高いレベルのメタに到達して、生態系全体を形作ることができる。分類学的分類システムを使用すると、自然が生物を集めて種を形成し、種を集めて属を形成し、属を集めて科を形成し、科を集めて目を形成し、目を集めて綱を形成し、綱を集めて門を形成し、門を集めて界を形成し、界を集めてドメインを形成すると言うことができる。これらはすべて、特定の問題を解決するために連携して動作する物理的な抽象化の異なるレベル(生物のグループ)だ。これらのそれぞれは、自己言及と抽象化作成という自然のメカニズムによって自動的に形作られている。
自然は、人間のエンジニアリングよりもはるかに効果的にメタへ行くことができる。自然が持っている計算負荷は驚異的だ。自然は、特定のレベルから一歩外に出て、次のレベルを作成するのに有効なパラメーターを見つけ続けている。
もちろん、自然の計算リソースは、人間が利用できるものと比較して事実上無限大だ。自然は、グループ内で同時に動作する数十億のプロセッサのおかげで、分散並列処理の極端なバージョンを持っている。自然システム(細胞、ニューロンなど)の各部分は単純な計算しか実行しないけど、それらの集合的な動作は驚くほど複雑な機能を解決する。自然はまた、人間のイノベーションよりもはるかに壮大なタイムスケールで動作する。進化は、自然選択を通じて解決策を形作るのに何百万年もかかる。自然は、大規模な変動、反復、選択を使用して、非常に並列的な方法で、完全に巨大な可能性空間を探索できる。
エネルギー効率にも大きな違いがあり、生物学的システムは、人間が作成するものと比較して信じられないほどエネルギー効率が高い。人間の脳はわずか約20ワットの電力を消費するけど、最新のスーパーコンピューターとディープラーニングシステムのエネルギー消費量は数桁大きい。わずか20ワットしか消費しないにもかかわらず、人間の脳がAIと比較して視覚、運動制御、推論でどれほど効果的かを考えてみて。生物学的効率は独自のカテゴリーにあるんだ。
生物学はまた、物理世界と深く統合されている。抽象化のすべてのレベルは、環境と直接通信して動作する。入力を出力に変換する計算は、システム自体の物理プロセスとして行われており、行動のプロキシモデルとしてではない。したがって、自然が人間よりもはるかに効果的にメタへ行くことができるのはそれほど驚くべきことではない。自然は、並列性、時間、エネルギー効率、および深い物理的統合を利用して、特定のシステムの複数のレベルから一歩外に出て、ネストされた創発的抽象化を作成できるんだ。
それでは、人間は自然が持っている計算リソースに匹敵するものが何もないのに、どのように自然のように操作できるのだろうか?自然の計算需要を満たすことができない場合、自然が解決するように解決する真に複雑なオブジェクトをどのように作成できるのだろうか?
1つの明白な答えは、自然が立っている場所でハッキングすることだ。たとえば、合成生物学は、望ましい特性を持つように、ウイルスやバクテリアなどの生物の遺伝物質を操作しようとしている。これは、バイオレメディエーション、医薬品のバイオプロダクション、バイオ燃料などの分野で行われており、バクテリアを変化させてコンピューティング用の単純な論理演算を実行したり、小型機械内の生物学的アクチュエータとして機能させたりすることも行われている。合成生物学は、すでに進化した機能を活用しているため、創発を設計する必要がなくなる。
ここでのコア問題は誤用の問題だ。自然の既存のソリューションをハッキングすることに成功するだろうけど、現実には、自然は理由があって進化しているということだ。その理由は、単純な還元主義的な用語で定義することはできない。私たちが言えることは、自然の解決策がそうなったのは、それが生き残ったからだということだけだ。自然のオブジェクトの構成は、私たちが決して知らない方法でホストの問題を解決する驚くほど複雑なオブジェクトなんだ。自然の解決策の一部をハイジャックしようとすると、狭い利益をもたらす可能性があるけど、複雑さの下での設計のすべての問題が伴う。それらは、長い目で見ればソリューションの有効性を低下させる可能性のある予期しない副作用を生み出すことが保証されているんだ。
本書で主張したように、私たちは単に自然を解決するはずではなかった問題のために再利用するのではなく、私たち自身で創発を設計する必要がある。私たちの創造物は独自の複雑さを確立し、私たちが配置する環境に基づいて、独自の創発的な構造と行動に到達する必要がある。自然のソリューションが効果的に機能するようにするには、見ることができない深い内部依存関係がある。これらの内部構造は、自動自己言及によって構築された物理的な抽象化として具体化される必要があるんだ。
私たち自身で創発を設計するには、自然に見られる並列性、エネルギー効率、および深い物理的統合を最大化するように努める必要がある。設計の下では、これは不可能だ。設計により、特定で詳細な決定を下す必要があり、必要な並列性、エネルギー効率、および深い物理的統合の高度に制約された不自然なバージョンになる。
AIの研究者またはエンジニアが、これらのシステムがどのように機能し、実行し、環境と相互作用するかについて明示的な決定を下すことによって、システムを意図的に設計しようとしていることを考えてみて。トレーニングと評価のために関連するデータソースを特定して収集したいと考えている。特定の計算要件に基づいてアルゴリズムを選択および設計しようとしている。設計原則、ベストプラクティス、および数理理論に基づいて、層、アクティベーション関数、接続、および最適化手法に関する決定を下して、ニューラルネットワークアーキテクチャを設計することを目指している。
しかし、真実は、ディープラーニングの進歩における最大の進歩は、特定の設計上の選択からではなく、より多くのデータと計算能力を問題に投入することから生まれているということだ。実際、特定のアクテクチャは、現在のパラダイムが示唆するよりもはるかに重要ではない。特定の構造が重要ではないということではなく、研究論文で示唆されているように、それらは意図的な推論と設計から生まれないということだ。最終的にうまく機能する構造は、ほとんどの場合、より多くのデータとより多くの計算能力の副産物だ。
これは、複雑なものを構築するときに予想されることと正確に一致している。AIの研究は、ほとんどのAI研究者が理解していないと思われる理由で効果的だ。これは多くの人にとって奇妙な発言のように聞こえるだろうけど、このパターンを頻繁に見るんだ。設計上の選択が進歩の原因であると信じるのは簡単だけど、実際には、複雑さの下での進歩は、設計よりもランダム性と偶然性に大きく関係している。これは実際には厳密なステートメントであり、複雑なシステムがどのように進化するかという否定できないプロパティと完全に一致している。
複雑さの下での設計は、優れたソリューションの作成を妨げるものとして正しく理解されている。設計上の選択は、複雑なシステムから自然の複雑さと不透明な依存関係を奪う。それらは、うまく機能するものを具体化するために発生する必要のあるピース間の内部通信を妨げる。設計はまた、設計がソリューションに強制する柔軟性のために、広大な可能性空間を探索する能力を制限する。
もちろん、AIシステムの設計は、従来のエンジニアリングの設計とは異なる。繰り返しますが、AIは、システムから一歩外に出て、収束を可能にする最良の例だ。しかし、メタのレベルは、ソリューションの内臓に近すぎる。分類学的分類の下でドメインまですべてに到達する自然とは対照的に、私たちはまだ個々の生物のすぐ外で操作している。私たちが求めているのが、狭く定義されたものを予測する基本的なモデルだけなら、これでうまくいくかもしれない。しかし、一般的な知性に似たものを達成しようとする場合、これは機能しない。意図するソリューションが洗練され強力になればなるほど、より真の複雑さを生み出す必要がある。
必要な種類の並列性、エネルギー効率、および深い物理的統合を達成するには、私たちが求めるソリューションよりもはるかにメタなレベルで動作する必要がある。脳を構築したい場合、脳を設計しようとしても達成することはできない。人間の知性を個人の頭の中で発生するものとして定義するのは便利に見えるかもしれないけど、私たちは深くつながった社会的な種だ。単一の生物学的ニューラルネットワークをはるかに超える集約レベルがなければ知性はない。メタは最高の生物を作るために、生物をはるかに超えて到達しなければならない。設計では生物に近すぎるんだ。
設計のように、構築しているものに近づきすぎると、試行錯誤が手に負えなくなる。これは、実験中に混ぜ合わせようとするものが定義されすぎるためだ。しかし、焦点を表面にシフトし、最高レベルの最も一般的な問題ステートメントのみを使用すると、内部構造がそれ自体を理解する必要がある。これが複雑さがどのように機能するかだ。
問題が難しくなればなるほど、その可能性空間は大きくて複雑になり、その空間を検索する必要がある。第4章では、問題の難易度が高くなるにつれて、問題解決がよりソフトになり、検索方法について分析できなくなることを確認した。
ヒューリスティックとパターン認識は、多くの検索を行わずに巨大な可能性空間内で物事を見つけることができるツールとして考えることができる。しかし、これは複雑な状況が発する最高レベルの信号に適用した場合にのみ機能する。しかし、設計により、検索を過度に明示的な用語で定義する必要がある。それは自然がすでに与えてくれているものを活用していない。設計により、私たちが実際には意味を割り当てない低レベルの構造で試行錯誤を試みることになる。私たちが物事がどのように相互作用するかを知る必要はなく、システムをより多くのストレス要因に耐えさせる必要がある場合にのみ、相互作用が発生することを知る必要がある。メタの取り組みでより高く到達するということは、自然を自然に解決させるということだ。
では、計算上の制約に陥ることなく、どのように最高レベルのメタで動作できるのだろうか?答えは、1)問題ステートメントを可能な限り一般的にすること(表面で操作する)、2)特定の設計ではなく、高度に柔軟な内部構造を作成することだ。
私たちがやり遂げることができる最も高いレベルのターゲットを維持するだけで、問題解決を表面にとどめておく。AIの例としては、現実的で有用な会話を行うエンティティを構築するという問題を定義することが挙げられる。それだけだ。今日のパラダイムでは、問題の目的、対象読者、会話の範囲、意図、コンテキスト、あいまいさの処理、トーン、および個性に問題を分解することにより、はるかに深く掘り下げる必要があると教えている。しかし、問題のこの分解は還元主義的だ。そのような特定のことを知っているわけではなく、ソリューション全体が問題の最上位の定義を解決する必要があることだけを知っている。問題を特定に分解すると、複雑さの下では劣ったエンジニアリングが保証される。
2番目のポイントについては、特定を設計しないことにより、高度に柔軟な内部構造を作成する。ニューラルネットワークで使用されるアクティベーション関数を考えてみて。これらはモデルに非線形性を導入するためのものだ。選択できるオプションがいくつかあり、それぞれに独自の特徴、利点、および欠点がある。シグモイド、双曲線正接、整流線形ユニット(ReLU)、リーキーReLU、パラメトリックReLU(PReLU)、指数線形ユニット(ELU)、スケールされた指数線形ユニット(SELU)、ソフトマックス、スウィッシュ、ガウスなどを選択できる。これらの可能性を、ニューラルネットワークで変更できる他のすべての変数と組み合わせて混ぜ合わせようとすることは、ルービックキューブで1つのキュービーを移動し、以前の動きをスクランブルするのと似ている。このレベルでは試行錯誤を実現可能にするには、あまりにも多くの可能性のある選択肢がある。
しかし、最高の激活関数を孤立した事物として設計しようとする代わりに、定義の少ない柔軟性の高いものを作成すると想像してみて。現在最も近いアプローチは、学習可能な激活関数と呼ばれるものだ。これらの関数には、トレーニングプロセス中に調整されるパラメーターが含まれており、関数がその形状を動的に変更できるようになっている。このアプローチが機能するかどうかは問題ではない。重要なのは、柔軟性を設計しようとするのではなく、全体の一部として構成を変更するものを配置することだ。還元主義的な意味では、定義が少ないほど良い。ミトコンドリアが細胞の外で定義を失うように、激活関数はネットワークの外で適切に定義できない役割を持っている。それは、グループ内でのその存在が重要な全体的なソリューションの一部だ。激活関数がどのように見えるかを知る必要はない。構造と機能はそれ自体で自然に現れるはずであり、私たちは最高レベルのターゲットのみに関心を払い続ける必要があるんだ。
最高のアクティベーション関数、ネットワークアーキテクチャ、データ前処理パイプライン、損失関数、最適化アルゴリズムなどを取得する