要約
Modelizerを紹介します。これは、ブラックボックスプログラムを考慮して、ニューラルマシン翻訳アルゴリズムを使用して入出力の動作からモデルを学習する新しいフレームワークです。
結果のモデルは元のプログラムをmockします:入力が与えられた場合、モデルはプログラムによって生成された出力を予測します。
ただし、モデルも可逆的です。つまり、モデルは特定の出力を生成した入力を予測できます。
最後に、モデルは微分可能であり、プログラムの動作の特定の側面のみを予測するために効率的に制限される可能性があります。
Modelizerは、文法を使用して合成し、入力と監視なしトークンザーを使用して、結果の出力を分解し、トークンストリーム間のシーケンス間の関連性を学習できるようにします。
入力文法以外に、Modelizerにはプログラムを実行する機能が必要です。
結果のモデルは小さく、MarkdownやHTMLなどの言語には630万パラメーターが必要です。
そして、それらは正確で、最大95.4%の精度と、実世界のアプリケーションをモッキングする標準誤差0.04を備えたBLEUスコアが0.98を達成しています。
コードではなく実行から学習し、予測すると、ModelizerはLLM中心の研究傾向から逸脱し、個々のプログラムに完全に調整されたプログラム固有のモデルの新しい機会を開きます。
実際、特にプログラムの出力がプログラムの動作のあらゆる側面になる可能性があるため、これらのモデルのいくつかのアプリケーションを予測しています。
プログラムの動作をock笑および予測するだけでなく、モデルは、障害やカバレッジなどの特定の動作を生成する可能性のある入力を合成することもでき、プログラムの理解とメンテナンスを支援します。
要約(オリジナル)
We introduce Modelizer – a novel framework that, given a black-box program, learns a model from its input/output behavior using neural machine translation algorithms. The resulting model mocks the original program: Given an input, the model predicts the output that would have been produced by the program. However, the model is also reversible – that is, the model can predict the input that would have produced a given output. Finally, the model is differentiable and can be efficiently restricted to predict only a certain aspect of the program behavior. Modelizer uses grammars to synthesize and inputs and unsupervised tokenizers to decompose the resulting outputs, allowing it to learn sequence-to-sequence associations between token streams. Other than input grammars, Modelizer only requires the ability to execute the program. The resulting models are small, requiring fewer than 6.3 million parameters for languages such as Markdown or HTML; and they are accurate, achieving up to 95.4% accuracy and a BLEU score of 0.98 with standard error 0.04 in mocking real-world applications. As it learns from and predicts executions rather than code, Modelizer departs from the LLM-centric research trend, opening new opportunities for program-specific models that are fully tuned towards individual programs. Indeed, we foresee several applications of these models, especially as the output of the program can be any aspect of program behavior. Beyond mocking and predicting program behavior, the models can also synthesize inputs that are likely to produce a particular behavior, such as failures or coverage, thus assisting in program understanding and maintenance.
arxiv情報
著者 | Tural Mammadov,Dietrich Klakow,Alexander Koller,Andreas Zeller |
発行日 | 2025-03-17 15:04:06+00:00 |
arxivサイト | arxiv_id(pdf) |
提供元, 利用サービス
arxiv.jp, Google