見出し画像

モノリシックAI vs モジュラーAI

8,277 文字

みなさん、こんにちは。新しいアイデアをお話しします。私たちが意図的に構築したモデルシステムについてです。みなさんがおっしゃりたいことはわかっています。「私はOpenAIのo1のような独自のAIシステムを持っていて満足している。月々200ドルか2,000ドルを支払えば全てうまくいく」と。
でも、AIについて理解を深め、自分でAIをコーディングし、特定のタスクに特化したAIアプリケーションを大学や研究室、企業で構築することに興味を持ってみてください。このビデオではモジュラー型のオープンソースAIシステムの構築方法について説明します。
これを話題にする特別な理由があります。有機太陽電池の開発において、様々な分子構造の組み合わせをテストする必要があります。UC Berkeley、Stanford University、Microsoft Researchによる2024年12月10日の新しい論文では、LLMシステムの開発をエンジニアリング分野にする上で欠けていたリンクについて言及しています。
彼らは数十年に渡るソフトウェアエンジニアリングの歴史を振り返り、AIと比較しました。そして信頼できるモジュラーAIシステムを構築する鍵は仕様にあると発見しました。つまり、構築の前にAIの期待される振る舞い、入力、そしてモジュラー方式で構築する場合の各コンポーネントの出力について正確な記述が必要だということです。
特定のジョブのために設計されたAIシステム、これこそが重要なのです。OpenAIのo1のように40億人の全てのタスクをこなす1つのシステムではなく、特定のタスクに特化した小規模でローカルな高性能エキスパートシステムを構築する必要があります。そして、有機太陽電池の新しい分子クラスターの開発において、機械学習による特性予測に大きな期待が寄せられています。
私たちが使用しているツールは分子特性予測のためのグラフニューラルネットワーク(GNN)です。しかし、従来のGNNや市販のGNNでは、有機太陽電池開発で遭遇する芳香環などの高次構造の扱いに苦労しています。そこで、あるチームが有機太陽電池分子の開発に特化した新しい専用AIシステムを開発しました。論文については後ほど紹介します。
彼らは標的分子内の原子レベルとリングレベルの両方で、可能な構造パターンを分析することだけを目的とした、高度に特化したグラフトランスフォーマーネットワークを構築しました。驚くべきことに、彼らの最初の試みで既にクラス最高の競合製品を22%上回る性能を達成したのです。
専用の特化型AIシステムを構築すると、小規模でオープンソース、ローカルなコンピュータインフラで動作可能であり、1つのタスクしかできませんが、そのタスクにおいてはほぼ無敵の性能を発揮することができます。これはUC BerkeleyとStanfordの主張とも一致します。
信頼できるモジュラーAIシステムを構築するには、システムに期待される振る舞いについて明確なビジョンを持つ必要があり、全ての人の全てのことをこなすことはできません。残念ながら今日では、モノリシックなシステムによってAIモデルの開発が OpenAI、Microsoft、Google、Anthropicなど、数十億ドルを投資できる一部の企業に限定されています。
このモノリシックな性質により、モデルが不正確な出力を生成した際の問題対処も難しくなっています。私たちコミュニティは何もできず、次のモデルの支払いを待つしかありません。これは適切ではありません。そのため、私たち自身のシステムを構築できるようにしたいのです。
Berkeleyは、複雑なシステムをより単純なものに分解し、既存のコンポーネントを再利用するという新しい方法論を用いれば簡単だと教えてくれます。これにより複雑なAIシステム構築への参入障壁が下がり、ずっと簡単になります。動作することがわかっているビルディングブロックがあり、それらを特定の方法で組み合わせるだけで最適化を実行できるからです。
モジュラーシステムの構築は、より信頼性の高いAIシステム全体の構築にも密接に関連しています。なぜなら、それらは多くの場合、既にテストされ検証された信頼性の高いAIコンポーネントを組み合わせてモジュラーシステムとして構築されるからです。テストされていないブラックボックス環境から始めるのではありません。
有機太陽電池分子の性能を最適化するための仕様を見てみましょう。私は有機化学の専門家ではなく理論物理学者ですが、知識を共有させていただきます。有機太陽電池の主要な特性には、電力変換効率、最高被占分子軌道(古典的なモデルで考えると)、バンドギャップ、エネルギー差、太陽電池の最大電圧、電流密度などの6つの特性があります。
そして、データセットがあります。これが素晴らしい点です。例えば、Harvardのクリーンエネルギープロジェクトデータベースには230万の有機半導体分子の詳細な記述があります。2016年のHard有機光起電力データセットには350の小分子とポリマーが含まれています。他にもドナーポリマー分子のデータセットなど、計算に必要なパラメータを含む様々なデータセットがあります。
これらをどのように組み合わせ、何を達成したいのか、どのような仕事をする必要があるのかを考え、そして私たち自身のAIシステムを構築します。AIを始めたばかりの方には少しハードルが高いかもしれません。グラフニューラルネットワークについて理解する必要があるからです。
初めての方には2019年2月のMITの論文をお勧めします。この論文ではグラフ同型ネットワーク(GINネットワーク)について説明されています。私もグラフ同型問題とWLテスト(Weisfeiler-Lehmanテスト)に関するビデオを持っています。
数学が得意な方には、フィルトレーションと永続的ホモロジーを用いたグラフニューラルネットワークの新しいトポロジカル層に関する2番目のビデオもあります。2020年2月には、Stanford大学とHarvard大学による論文で、グラフニューラルネットワークの事前学習戦略が発表され、GNNアーキテクチャを分子特性予測に適用しています。
このアイデアが材料科学、化学、有機化学に直接応用され、分子予測を構築するまでに数ヶ月しかかかりませんでした。入力グラフがあり、中心ノードとコンテキストアンカーノードがあり、グラフニューラルネットワークがあり、1ホップ、2ホップ、3ホップの特定の近傍を定義し、BERTのような古典的なシステムと同様にマスキングプロセスもあります。
そして、トレーニングデータセットの理解とコンテンツに基づいて、特定の分子特性を予測するというタスクがあります。GINネットワークだけでなく、メッセージパッシングでエッジ属性を考慮する表現力のあるメッセージパッシンググラフニューラルネットワークフレームワークを統合した拡張ネットワークもあり、より良い結果が得られています。
2年前のビデオでは、Deep Graph Libraryの実装におけるメッセージパッシングを紹介しました。また、テンソル構造を持つグラフ構造データがある場合に、グラフ機械学習表現や計算グラフをどのように構築するかについても説明しています。数時間で100%理解できるリソースが用意されています。
メインタスクに戻りましょう。有機太陽電池の特性予測のための新しいモジュラーAIシステムを構築したいと考えています。BerkeleyとStanford大学によるモジュラー性に関する新しいアイデアを尊重します。これまでのモデルが失敗した理由は、分子化合物における複雑な芳香環の存在にあります。
シミュレーションや予測で遭遇するこの複雑さに特に注意を払うモデルを構築したいと考えています。まず理解する必要があります。理論物理学者として単純に考えると、分子化合物には様々なリング構造があります。芳香環があり、硫黄、窒素、酸素を含むヘテロ芳香環もあります。また、複数のリングが原子を共有して大きな共役系を形成する融合環系もあります。
これまでの平面的な原子レベルのグラフニューラルネットワークモジュールは、官能基のような局所的な化学構造を捉えています。今回は特別なフォーカスを設定し、トランスフォーマーモジュールを使用してリングレベルのクロスアテンションを構築します。これは既知のコードです。これにより、リングシステム内のグローバルな関係のモデリングに焦点を当てます。
もはやイプシロンの immediate local neighborhoodに制限されることなく、分子レベルでグローバルに展開できます。もちろん、両方のシステムを持っているので、それらを統合する必要があります。これは原子とリング表現の間の相互作用を反復するインターレベルグラフニューラルネットワークモジュールで行います。
そして層を構築するために、各層の最後ですべての完全な情報を融合します。GNNからトランスフォーマー、そしてインターレベルGNNモジュール、そして全てを統合する融合層があります。この層アーキテクチャにより、計算ハードウェアに応じて複数の層を積み重ねることができます。
アイデアが見えてきました。太陽電池分子の分子特性がリング構造によって決定されることを理解したので、AIシステムの特定の部分を構築し、このリング構造とシミュレーション内の他の要素との相互作用に焦点を当てます。PyTorch Geometricという別のソフトウェアパッケージもあります。
GPT-4 Omniがこれをコーディングできるか確認しました。特定の要件を伝えてコーディングを依頼したところ、初回の実行でかなり良い結果が得られました。標準的なGNN GGを使用して局所的な原子構造とその相互依存性をエンコードする原子レベルのGNNプロセスから始まります。
各ノード(原子)は近傍からメッセージを受け取り、特定の埋め込みを更新します。torch.geometricからGINConvolutionをインポートし、シンプルなforward passを定義します。コードエディタを使えば、これらのライブラリがGitHubで利用可能なため、コーディングの複雑さは問題ではありません。
システムをどのように設計したいかを記述できれば、コード実装はコードエディタが行います。リングレベルのクロスアテンションについては、先ほど説明したように、リング間の関係をエンコードするためにトランスフォーマーのクロスアテンションメカニズムを使用します。
より良い表現のために、ノード埋め込みとエッジ属性の両方を持っています。理論的または仮想ノードを追加することもできます。これについては後ほど説明します。RingLevelCrossAttentionクラスが美しくできています。
o1やo1 Pro、Sonnetなどのコードシステムを使用する必要はなく、古いGPT-4 Omniでもこれを実行できます。そして、インターレベルメッセージパッシングで全てを統合します。原子とリング構造間で情報を交換し、二部グラフ構造を使用します。
各原子は対応するリングにメッセージを送ることができ、その逆も可能です。リング自体も通信でき、異なるリングや異なるクラスのリング間の相互接続も可能で、非常に複雑にすることができます。しかし、最も単純なコードは指示に示した通りで、クラスを定義し、階層的な融合操作を行います。
この特別に設計されたAIシステムの層を設計します。研究者たちはこれをRingformerと呼んでいますが、既に複数のリングフォーマーが存在するため、これは本当にユニークなラベルやユニークな用語ではありません。しかし、それは問題ではありません。
原子レベル、リングレベル、インターレベルのモジュールを単一の層に組み合わせ、複数の層を積み重ねることができます。GPT-4Omniがこれを実行してくれますが、もちろんこれは完璧なコード実装ではなくスケルトンコードに過ぎません。しかし、アイデアは理解できると思います。
予測に話を移しましょう。なぜなら、これらのシステムを構築するのは、実験をする必要なくAIに正確な予測をしてもらうためです。特定の分子グラフ、平面グラフが与えられた場合、目的は目標特性値Yを予測する特性予測モデルを学習することです。Yは先ほど説明した6つの特性、つまり電力変換効率や分子軌道などです。
リングシステムの重要性については既に説明しました。それは異なるタイプのリングとそれらの相互作用によって特徴付けられます。
制限について、理論物理学者の視点から確認させてください。なぜリングシステムに注目し、太陽電池の効率にとってそれらが重要なのかと疑問に思うかもしれません。有機太陽電池分子の電子的および構造的特性は、リングシステムに大きく依存しています。
芳香環やヘテロ芳香環における交互の単結合と二重結合は、古典的な描像では非局在化したπ電子系を生成します。共役が拡張されたリングは光をより効果的に吸収し、より広いスペクトルの太陽光を有機化合物システムで捕捉することを可能にします。
電荷輸送を改善するように修正することもでき、さらに素晴らしいことに、芳香環は多くの場合、分子全体に化学的安定性と熱安定性を付与し、実世界でのテストにおいて有機太陽電池材料をより耐久性のあるものにします。
全てを理解し、実装方法を知り、コードも見ました。最終的なアイデアとして、原子レベルのグラフから始め、その上にリングレベルのグラフを構築し、ローカルレベルとグローバルレベルの完全な接続性を記述するための明示的なインターレベルグラフを構築します。
階層的なグラフシステムを構築し、トランスフォーマーアーキテクチャとグラフニューラルネットワーク、特に同型形式の扱い方を知っています。これらの特定の層の構築は今や簡単です。
公式の論文を紹介したいと思います。私たちが行ったのと同じように、原子レベルのグラフとGNNからメッセージパッシングで始まり、リング接続を構築し、トランスフォーマーのクロスアテンションメカニズムを持つリングレベルグラフを構築し、そしてGNNを使用してインターレベルメッセージパッシングを構築します。
説明した通り、複数の層を持つことができ、オリジナルの論文では第2層があり、全てをプールし、これが有機太陽電池の特性を定義する出力となります。
メインの文書は「Ringformer: A Ring-Enhanced Graph Transformer for Organic Solar Cell Property Prediction」で、香港理工大学によるものです。素晴らしいアイデアです。GitHubでコードが利用可能です。
有機化学の専門家で有機太陽電池開発に取り組んでいる方には、特に興味深い研究だと思います。特にリングレベルの分子特性とデバイスレベルの性能の関係について、複雑なデバイス構築を最適化する方法を検討している場合はなおさらです。
これは別のビデオのトピックになるでしょう。かなりの量のコンピュータシミュレーションがありますが、デバイス開発においてAI設計特性をどの程度統合できるかはわかりません。しかし、このトピックにおいてAIが性能に潜在的な影響を与えない領域はほとんどないことがわかります。
GPT-4がコーディングした場合のスケルトンコード、この単純化について理解していることを確認したいと思います。Ringformerレイヤーのクラスを構築する際、原子レベルのGNNから始め、局所的な原子近傍特徴を捉えるために原子レベルグラフを処理するメッセージパッシングアルゴリズムを持ちます。
次に、トランスフォーマーのクロスアテンションメカニズムを使用して、異なる形態と私たちのリングのコンポーネント間のグローバルな関係をモデル化するリングレベルのクロスアテンションを構築します。そして、原子-リング相互作用のためのインターレベルグラフニューラルネットワークで統合し、融合層を持ちます。
説明と単純化された説明、そしてコード構造が完全に一致していることを確認したかったのです。このクロスアテンションが重要である理由に注意してください。分子化合物内のリング間のグローバルな構造関係を捉え、アテンション計算において原子とボンドタイプ間で共有されるエッジ属性を組み込みます。
特に仮想ノードを構築する場合、リング間の長距離依存性をより計算効率良くモデル化できます。GPT-4 Omniから提供された完全なコードがここにあります。原子レベルのGNNメッセージパッシング、リングレベルのクロスアテンション、インターレベルの階層的融合、初期化、そしてforwardです。
クロスアテンションの仕組みがわからない場合は思い出してください。グローバルコンテキストのために仮想ノードを追加することについても既に言及しました。密な計算でグローバルな相互作用を捉えるために、全てのリングノードに接続する仮想ノードを追加するというトリックです。
これにより、完全なアテンションメカニズムを計算するオーバーヘッドなしに、エレガントにグローバル情報を集約できます。クイック&ダーティーですが、機能します。
利点は何でしょうか?エッジを意識したアテンションコンポーネント、仮想ノードによるグローバルコンテキスト、そして即時の近傍に焦点を当てた柔軟な近傍アテンションメカニズムがあり、この仮想ノードを介してグローバルな洞察も組み込んでいます。つまり、両方の世界の利点を得ることができます。
通常のビデオの途中で割り込んでしまいましたが、これは素晴らしいと思ったからです。独自のAIシステムの構築方法を知っていれば、エレガントに労力をかけずにこれを行うことができます。なぜなら、コーディングは多かれ少なかれ、有料か無料かに関わらず、美しいコードエディタで行われているからです。
例えば有機化合物において、特定のタスクにとって重要な要素を特定する必要があるだけです。有機太陽電池分子化合物ではリング構造が重要でした。そして、どのようなAIニューラルネットワークを適用したいのかを理解する必要があります。
グラフニューラルネットワーク、トランスフォーマー、LLM構造など、可能なすべてのものと可能なすべてのモデルの大きなツールセットから選択する必要があります。モデルがどのように機能し、異なるモデルやAIモデルの部分間の相互接続をどのように構築し、これら全てをどのように統合するかを理解する必要があります。
正直なところ、お見せしたように、GPT-4モデルからコーディングを始め、利用可能な公開データセットで最初の近似を実行できます。オープンソースであり、実行しているのは自分のコードなので、何か問題が発生した場合すぐにわかります。
コードが透明なシステムであり、ブラックボックスシステムではないため、ミスを分析し、コードを最適化できます。これがAIの専用エキスパートシステムの進むべき道だと思います。
私の主なメッセージは、特定のタスクのためにAIシステムを設計すべきだということです。再利用可能なコンポーネント、既にテストされたコンポーネント、解釈方法を知っているコンポーネント、他のコンポーネントと組み合わせる方法を知っているコンポーネントを使用するモジュラーAIのアプローチを使用した有機太陽電池の例を示しました。
これによりAIがより興味深く、より速く、エレガントで強力になります。オープンソースであれば、ローカルマシンで実行でき、研究室や大学、商業企業で作業している場合、実験データを社内に保持できます。
クラウドに送信する必要はありませんが、データを共有するクローズドなパラメータを持ち、モジュラーAIシステムでローカルに独自のモデルを構築できます。少し興奮していただけたでしょうか?新しいアイデアを見つけていただけたなら素晴らしいです。次のビデオでお会いできることを願っています。

いいなと思ったら応援しよう!