Learn more about Search Results Harvey AI - Page 2

「MIT研究者が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と比較します。…

Find the right Blockchain Investment for you

Web 3.0 is coming, whether buy Coins, NFTs or just Coding, everyone can participate.

Advertising with us