論文の概要: Guess & Sketch: Language Model Guided Transpilation
- arxiv url: http://arxiv.org/abs/2309.14396v1
- Date: Mon, 25 Sep 2023 15:42:18 GMT
- ステータス: 処理完了
- システム内更新日: 2023-09-27 16:36:56.391565
- Title: Guess & Sketch: Language Model Guided Transpilation
- Title(参考訳): guess & sketch: 言語モデルによるトランスパイル
- Authors: Celine Lee, Abdulrahman Mahmoud, Michal Kurek, Simone Campanoni, David
Brooks, Stephen Chong, Gu-Yeon Wei, Alexander M. Rush
- Abstract要約: 学習されたトランスパイレーションは、手作業による書き直しやエンジニアリングの取り組みに代わるものだ。
確率的ニューラルネットワークモデル(LM)は、入力毎に可塑性出力を生成するが、正確性を保証するコストがかかる。
Guess & Sketch は LM の特徴からアライメントと信頼性情報を抽出し、意味的等価性を解決するためにシンボリック・ソルバに渡す。
- 参考スコア(独自算出の注目度): 61.24102712913847
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Maintaining legacy software requires many software and systems engineering
hours. Assembly code programs, which demand low-level control over the computer
machine state and have no variable names, are particularly difficult for humans
to analyze. Existing conventional program translators guarantee correctness,
but are hand-engineered for the source and target programming languages in
question. Learned transpilation, i.e. automatic translation of code, offers an
alternative to manual re-writing and engineering efforts. Automated symbolic
program translation approaches guarantee correctness but struggle to scale to
longer programs due to the exponentially large search space. Their rigid
rule-based systems also limit their expressivity, so they can only reason about
a reduced space of programs. Probabilistic neural language models (LMs) produce
plausible outputs for every input, but do so at the cost of guaranteed
correctness. In this work, we leverage the strengths of LMs and symbolic
solvers in a neurosymbolic approach to learned transpilation for assembly code.
Assembly code is an appropriate setting for a neurosymbolic approach, since
assembly code can be divided into shorter non-branching basic blocks amenable
to the use of symbolic methods. Guess & Sketch extracts alignment and
confidence information from features of the LM then passes it to a symbolic
solver to resolve semantic equivalence of the transpilation input and output.
We test Guess & Sketch on three different test sets of assembly transpilation
tasks, varying in difficulty, and show that it successfully transpiles 57.6%
more examples than GPT-4 and 39.6% more examples than an engineered transpiler.
We also share a training and evaluation dataset for this task.
- Abstract(参考訳): レガシーソフトウェアを維持するには、多くのソフトウェアとシステムエンジニアリングが必要となる。
コンピュータマシンの状態の低レベルな制御を要求され、変数名を持たないアセンブリコードプログラムは、人間にとって特に分析が難しい。
既存のプログラムトランスレータは正確性を保証するが、対象とするプログラミング言語とソースのために手作業で設計されている。
learn transpilation(コードの自動翻訳)は、手作業による書き直しとエンジニアリング作業の代替手段を提供する。
自動シンボリックプログラム翻訳のアプローチは正確性を保証するが、指数関数的に大きい検索空間のため、長いプログラムにスケールするのに苦労する。
彼らの厳格なルールベースのシステムは表現性も制限するので、プログラムのスペースが減っただけである。
確率的ニューラルネットワークモデル(LM)は、入力毎に可塑性出力を生成するが、正確性を保証するコストがかかる。
本研究は,組立符号に対する学習的トランスパイル化のためのニューロシンボリックアプローチにおいて,LMとシンボリックソルバの強みを利用する。
アセンブリコードは、シンボリックメソッドの使用に適応可能な短い非分岐基本ブロックに分割することができるため、ニューロシンボリックアプローチに適した設定である。
Guess & SketchはLMの特徴からアライメントと信頼性情報を抽出し、それをシンボルソルバに渡して、トランスパイレーション入力と出力の意味的等価性を解決する。
我々は、Gues & Sketchを3つの異なる組立トランスパイラの試験セットでテストし、GPT-4よりも57.6%、エンジニアリングされたトランスパイラよりも39.6%のサンプルをトランスパイラにトランスパイラさせることに成功した。
このタスクのトレーニングと評価のデータセットも共有しています。
関連論文リスト
- LILO: Learning Interpretable Libraries by Compressing and Documenting Code [72.90003911433905]
LILOは、反復的に合成、圧縮、文書化を行う、ニューロシンボリックなフレームワークである。
LILOは、LLM誘導プログラム合成と、Stitchから自動化された最近のアルゴリズムの進歩を組み合わせたものである。
LILOのシンセサイザーが学習した抽象化を解釈し、デプロイするのを手助けすることで、AutoDocがパフォーマンスを向上させることが分かりました。
論文 参考訳(メタデータ) (2023-10-30T17:55:02Z) - Program Translation via Code Distillation [20.668229308907495]
伝統的な機械翻訳は、教師あり翻訳に並列コーパスに依存している。
最近の教師なしニューラルネットワーク翻訳技術は、データ制限を克服している。
コード蒸留(CoDist)と呼ばれる新しいモデルを提案する。
論文 参考訳(メタデータ) (2023-10-17T04:59:15Z) - The Consensus Game: Language Model Generation via Equilibrium Search [73.51411916625032]
言語モデル復号のための学習不要なゲーム理論を新たに導入する。
本手法では,正規化不完全情報シーケンシャルシグナリングゲームとして,言語モデルの復号化を行う。
EQUILIBRium-RANKINGをLLaMA-7Bに適用すると、より大型のLLaMA-65BとPaLM-540Bより優れた性能を発揮する。
論文 参考訳(メタデータ) (2023-10-13T14:27:21Z) - SLaDe: A Portable Small Language Model Decompiler for Optimized Assembly [6.080751346188323]
本稿では,実世界のコード上で訓練されたシーケンス・ツー・シーケンス・トランスフォーマをベースとした小型言語モデルデコンパイラであるSLaDeを提案する。
型推論を利用して、標準的な分析や最近のニューラルアプローチよりも読みやすく正確なプログラムを生成する。
論文 参考訳(メタデータ) (2023-05-21T17:31:39Z) - ProgSG: Cross-Modality Representation Learning for Programs in
Electronic Design Automation [38.023395256208055]
高レベル合成(HLS)により、開発者はCとC++のソフトウェアコード形式で高レベルな記述をコンパイルできる。
HLSツールは相変わらず、プラグマで表されるマイクロアーキテクチャの決定を必要とする。
本稿では,ソースコードシーケンスのモダリティとグラフのモダリティを深く,きめ細かな方法で相互に相互作用させることができるProgSGを提案する。
論文 参考訳(メタデータ) (2023-05-18T09:44:18Z) - On ML-Based Program Translation: Perils and Promises [17.818482089078028]
この研究は、教師なしのプログラム翻訳者とその失敗の理由を調査する。
入力が特定のパターンに従う場合、入力コードを前処理し、出力が特定のパターンに従う場合、出力を後処理するルールベースのプログラム突然変異エンジンを開発する。
将来的には、プログラムドメイン知識をMLベースの翻訳パイプラインに組み込むことができるエンドツーエンドのプログラム翻訳ツールを構想する。
論文 参考訳(メタデータ) (2023-02-21T16:42:20Z) - LEVER: Learning to Verify Language-to-Code Generation with Execution [64.36459105535]
本稿では,プログラムの実行結果の検証を学習することで,言語からコードへの生成を改善するシンプルな手法であるLEVERを提案する。
具体的には、LLMからサンプリングされたプログラムが、自然言語入力、プログラム自体とその実行結果に基づいて正しいか否かを判定するために、検証者を訓練する。
LEVER はベースコード LLMs (4.6% から 10.9% まで) を継続的に改善し、それらすべてに対して新しい最先端の結果を得る。
論文 参考訳(メタデータ) (2023-02-16T18:23:22Z) - PAL: Program-aided Language Models [112.94785609781503]
自然言語問題を理解するために,プログラム支援言語モデル(PaL)を提案する。
PaLはソリューションステップをPythonインタプリタのようなプログラムランタイムにオフロードする。
私たちは12のベンチマークで新しい最先端の結果を設定しました。
論文 参考訳(メタデータ) (2022-11-18T18:56:13Z) - Code Translation with Compiler Representations [21.702473137941006]
従来のトランスパイラは構文情報と手作りのルールに依存しており、適用性が制限され、不自然なコードを生成する。
コードへのニューラルマシン翻訳(NMT)アプローチの適用は、自然な翻訳を得られる一連のプログラムをうまく拡張した。
ここでは、C++、Java、Rust、Go言語に関する結果とともに、IR、特にLLVM IRによるコード翻訳を強化することを提案する。
論文 参考訳(メタデータ) (2022-06-30T14:21:57Z) - Zero-Shot Cross-lingual Semantic Parsing [56.95036511882921]
7つのテスト言語に対する並列データを持たないゼロショット問題として,言語間セマンティックパーシングについて検討した。
英文論理形式ペアデータのみを用いて解析知識を付加言語に転送するマルチタスクエンコーダデコーダモデルを提案する。
このシステムは、ゼロショット解析を潜時空間アライメント問題としてフレーム化し、事前訓練されたモデルを改善し、最小のクロスリンガル転送ペナルティで論理形式を生成することができる。
論文 参考訳(メタデータ) (2021-04-15T16:08:43Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。