「MIT研究者がLILOを導入:プログラム合成のための解釈可能なライブラリを学ぶための神経シンボリックフレームワーク」

「美とファッションのエキスパートが、神経シンボリックフレームワークを学ぶためのプログラム合成に関する解釈可能なライブラリ、LILOを導入する」

ビッグ言語モデル(LLM)は、プログラムのさまざまな文脈でプログラムする能力がますます高度になっており、部分的に書かれたコードを完成させる、人間のプログラマーとの対話、さらには競技レベルの難しいプログラミングの謎を解くことさえも可能です。しかし、ソフトウェア開発者は、現在の作業を終えるよりも、問題の領域全体を解決するために使用できるライブラリを作成することに関心があります。そのために、リファクタリングのスキルは、ソフトウェア開発の重要な要素です。リファクタリングは、コードベースをより読みやすく(ほかのプログラマーにとって直感的)、再利用可能(新しいタスクに一般化可能)、コンパクト(共有構造を統合)にする抽象化を見つけ出す能力です。この多目的最適化の問題を解決するために、現在数百万人のプログラマーが利用している現在のコード補完ツールの機能を拡張する必要があります。

この研究では、言語モデルをプログラミング言語(PL)の文献の自動リファクタリングと現在のアルゴリズム開発と統合することで、再利用可能な関数抽象化のライブラリを学習します。MIT CSAIL、MIT Brain and Cognitive Sciences、Harvey Mudd Collegeの研究者は、言語観察からのライブラリ導入のための3つの相互関連モジュール(図1)で構成される神経シンボリックフレームワークであるLILO(Library Induction from Language Observations)を提案しています。

・デュアルシステム合成モジュール:プログラミングの問題に対する答えを探すために、2つの異なるアプローチが使用されます。LLMによって誘導される強力なドメイン一般事前知識はシステムに導入され、列挙的な探索によってドメイン固有の式が見つかることがあります。

・圧縮モジュール:高性能なシンボリック圧縮システムであるSTITCHを使用して、現在の解決セットから関連する抽象化を見つけます。

・自動ドキュメンテーション(AutoDoc)モジュール:人間が理解できるドックストリングと関数名を生成し、解釈性を向上させ、後でLLMによる誘導検索を容易にします。

彼らの設計は、反復的なWake-SleepアルゴリズムDREAMCODERに基づいており、プログラミングの課題の解決(Wakeフェーズ)と共通の抽象化をライブラリに書き直す(Sleepフェーズ)を交互に行うことによって、探索を導く役割を果たしています。DreamCoderは、従来の深層学習技術とは異なり、少数のサンプルから重要な一般化を引き出すことができ、学習されたライブラリはモデルの概念的な知識を象徴的に表現しています。ただし、DreamCoderの検索プロセスは計算量が非常に多く、単一のドメインの学習にCPUの使用量が2か月以上かかります。

図1:LILO学習ループの概要。 (Al) プレーン言語で記述されたタスクの説明からプログラムを作成するため、LILOはデュアルシステムの検索手法を使用します。 LLMで生成された自動文書化(C)をSTITCH(B)と呼ばれる圧縮方法と組み合わせることで、プログラムソリューションの集合を再構成し、λ-抽象の解釈可能なライブラリを作成します。この検索-圧縮-文書化サイクルにより、プログラムソリューションの構造(A vs. D)がシンプルになり、後続の段階でより困難なタスクの解決が容易になります。

この検索にかかる時間のかなりの部分は、「出発する」ということに費やされます。プログラマーが既によく知っているか、前のドメイン固有の問題解決の経験により迅速に理解できる抽象化の基本セットを見つける必要があります。さらに、DreamCoderのライブラリは常に解釈できるわけではありません。解読するためには、ドメインの知識とラムダ計算の理解が必要です。これらの問題に取り組むために、LILOはLLMを2つの革新的な方法で使用します:(1)検索中にプログラムソリューションをより迅速に見つけるため、(2)学習されたライブラリのドキュメンテーションを向上させ、理解しやすくします。文字列編集と正規表現、CLEVRデータセットでのシーン推論、2Dロゴタートルグラフィックス言語でのグラフィックスコンポジションという3つの難しいプログラム合成ドメインで、LILOを言語ガイドのDreamCoderと比較します。

DreamCoderに比べて、LILOはすべての3つのドメインでより多くのタスクを完了し、現在の技術では見つけることのできない抽象化を含む経験的に豊かなライブラリを学習します。例えば、文字列編集フィールドでは、265以上の潜在的なキャラクタープリミティブの論理和を調べる必要がなくなるため、母音の概念を獲得します。LILOは、これらの情報をシンボリックな抽象化に圧縮し、従来の検索手法とLLMによる合成の両方に役立つが、LLMのみで行われるベースラインと同等のタスクを達成することができます。AutoDocモジュールは、この神経シンボリック統合に不可欠であり、解釈可能性を向上させ、LLMシンセサイザーがライブラリをより効果的に利用することを可能にします。 LILOは、帰納的なプログラム合成の長い歴史の中で新しい発展ですが、PLコミュニティからの概念とリソースが現在の言語モデリングの進歩と組み合わされる方法を示しています。

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

人工知能

2023年のマーケティングにおけるChatGPTの10のユースケース

2022年11月のリリース以来、ChatGPTはAIモデルの対話や利用方法を完全に変えました。その使用例は、バイオテクノロジーや薬物...

機械学習

「3D-GPT(3D-指示駆動型モデリングのための人工知能フレームワーク)に会ってください 大規模な言語モデル(LLM)を利用した指示駆動型3Dモデリングのための人工知能フレームワーク」

細心緻密的模型在元宇宙時代的3D內容製作中,重新定義了遊戲、虛擬現實和電影行業中的多媒體體驗。然而,設計師們在耗時的3D...

人工知能

「2023年のトップAI画像アップスケーラーと拡大器」

優れた方法で画像を強化およびリサイズするには、AI画像およびアップスケーラーサービスを使用します。研究者は、毎年1兆枚以...

データサイエンス

グループ化および空間計量データの混合効果機械学習におけるGPBoost

GPBoostを用いたグループ化されたおよび地域空間計量データの混合効果機械学習 - ヨーロッパのGDPデータを用いたデモ