論文の概要: Learning Type Inference for Enhanced Dataflow Analysis
- arxiv url: http://arxiv.org/abs/2310.00673v2
- Date: Wed, 4 Oct 2023 15:15:00 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-05 10:29:30.560982
- Title: Learning Type Inference for Enhanced Dataflow Analysis
- Title(参考訳): 強化データフロー解析のための学習型推論
- Authors: Lukas Seidel, Sedick David Baker Effendi, Xavier Pinho, Konrad Rieck,
Brink van der Merwe, Fabian Yamaguchi
- Abstract要約: 我々は、型アノテーションを確実に予測するように訓練されたTransformerベースのモデルであるCodeTIDAL5を提案する。
私たちのモデルは、MaryTypes4TypeScriptベンチマークで現在の最先端を7.85%上回っています。
JoernTIは、オープンソースの静的解析ツールであるJoernへの私たちのアプローチの統合です。
- 参考スコア(独自算出の注目度): 6.999203506253375
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Statically analyzing dynamically-typed code is a challenging endeavor, as
even seemingly trivial tasks such as determining the targets of procedure calls
are non-trivial without knowing the types of objects at compile time.
Addressing this challenge, gradual typing is increasingly added to
dynamically-typed languages, a prominent example being TypeScript that
introduces static typing to JavaScript. Gradual typing improves the developer's
ability to verify program behavior, contributing to robust, secure and
debuggable programs. In practice, however, users only sparsely annotate types
directly. At the same time, conventional type inference faces
performance-related challenges as program size grows. Statistical techniques
based on machine learning offer faster inference, but although recent
approaches demonstrate overall improved accuracy, they still perform
significantly worse on user-defined types than on the most common built-in
types. Limiting their real-world usefulness even more, they rarely integrate
with user-facing applications. We propose CodeTIDAL5, a Transformer-based model
trained to reliably predict type annotations. For effective result retrieval
and re-integration, we extract usage slices from a program's code property
graph. Comparing our approach against recent neural type inference systems, our
model outperforms the current state-of-the-art by 7.85% on the
ManyTypes4TypeScript benchmark, achieving 71.27% accuracy overall. Furthermore,
we present JoernTI, an integration of our approach into Joern, an open source
static analysis tool, and demonstrate that the analysis benefits from the
additional type information. As our model allows for fast inference times even
on commodity CPUs, making our system available through Joern leads to high
accessibility and facilitates security research.
- Abstract(参考訳): 動的型付けされたコードの静的解析は、コンパイル時にオブジェクトの型を知ることなく、プロシージャ呼び出しのターゲットを決定するといった、一見自明なタスクでさえ、難しい作業である。
この課題に対処するため、動的型付け言語に段階的な型付けが追加されている。
グラデーショナル型付けは、プログラムの動作を検証する開発者の能力を改善し、堅牢でセキュアでデバッグ可能なプログラムに寄与する。
しかし実際には、ユーザは直接型にアノテートするだけです。
同時に、従来の型推論は、プログラムのサイズが大きくなるにつれてパフォーマンス関連の課題に直面する。
機械学習に基づく統計的手法は推論を高速化するが、最近の手法では全体的な精度が向上しているが、最も一般的な組込み型よりもユーザ定義型の方が大幅に低下している。
現実世界の利便性をさらに制限するため、ユーザ向けアプリケーションと統合されることはめったにない。
型アノテーションを確実に予測するようにトレーニングされたトランスフォーマティブベースのモデルであるcodetidal5を提案する。
有効な結果検索と再統合のために,プログラムのコードプロパティグラフから使用率スライスを抽出する。
最近のニューラルタイプ推論システムに対するアプローチを比較すると、このモデルは manytypes4typescriptベンチマークで現在の最先端の7.85%を上回り、全体の71.27%の精度を達成している。
さらに、オープンソースの静的解析ツールであるJoernへの我々のアプローチの統合であるJoernTIを紹介し、分析が追加の型情報から恩恵を受けることを実証する。
当社のモデルでは,コモディティCPUでも高速な推論が可能であるため,Joernによるシステム利用はアクセシビリティの向上とセキュリティ研究の促進につながる。
関連論文リスト
- Likelihood as a Performance Gauge for Retrieval-Augmented Generation [78.28197013467157]
言語モデルの性能の効果的な指標としての可能性を示す。
提案手法は,より優れた性能をもたらすプロンプトの選択と構築のための尺度として,疑似可能性を利用する2つの手法を提案する。
論文 参考訳(メタデータ) (2024-11-12T13:14:09Z) - Inferring Pluggable Types with Machine Learning [0.3867363075280544]
本稿では,機械学習を用いて型付き修飾子を自動的に推論する方法について検討する。
本稿では,最小限のデータフローヒントを符号化した新しい表現NaP-ASTを提案する。
論文 参考訳(メタデータ) (2024-06-21T22:32:42Z) - Generative Input: Towards Next-Generation Input Methods Paradigm [49.98958865125018]
我々はGeneInputという新しい生成入力パラダイムを提案する。
すべての入力シナリオと他のインテリジェントな補助入力関数を処理するためにプロンプトを使用し、ユーザーフィードバックでモデルを最適化し、パーソナライズされた結果を提供する。
その結果,FK2C(Full-mode Key-sequence to Characters)タスクにおいて,最先端のパフォーマンスを初めて達成したことを示す。
論文 参考訳(メタデータ) (2023-11-02T12:01:29Z) - Generative Type Inference for Python [62.01560866916557]
本稿では静的解析から静的ドメイン知識を取り入れた数ショットの生成型推論手法であるTypeGenを紹介する。
TypeGenは、静的解析の型推論ステップを、型依存グラフ(TDG)に基づいたプロンプトに変換することで、COTプロンプトを生成する。
実験の結果、TypeGenは引数型予測では10.0%、Top-1 Exact Matchでは22.5%で最高のベースラインであるType4Pyを上回っている。
論文 参考訳(メタデータ) (2023-07-18T11:40:31Z) - TypeT5: Seq2seq Type Inference using Static Analysis [51.153089609654174]
本稿では,型予測をコード入力タスクとして扱う新しい型推論手法を提案する。
本手法では静的解析を用いて,型シグネチャがモデルによって予測されるコード要素毎に動的コンテキストを構築する。
また,モデルの入力コンテキストに事前の型予測を組み込んだ反復復号方式を提案する。
論文 参考訳(メタデータ) (2023-03-16T23:48:00Z) - Adversarial GLUE: A Multi-Task Benchmark for Robustness Evaluation of
Language Models [86.02610674750345]
AdvGLUE(Adversarial GLUE)は、様々な種類の敵攻撃の下で、現代の大規模言語モデルの脆弱性を調査し評価するための新しいマルチタスクベンチマークである。
GLUEタスクに14の逆攻撃手法を適用してAdvGLUEを構築する。
テストしたすべての言語モデルとロバストなトレーニングメソッドは、AdvGLUEではパフォーマンスが悪く、スコアは明確な精度よりもはるかに遅れています。
論文 参考訳(メタデータ) (2021-11-04T12:59:55Z) - Comparative Code Structure Analysis using Deep Learning for Performance
Prediction [18.226950022938954]
本稿では,アプリケーションの静的情報(抽象構文木やASTなど)を用いてコード構造の変化に基づいて性能変化を予測することの実現可能性を評価することを目的とする。
組込み学習手法の評価により,木系長短メモリ(LSTM)モデルでは,ソースコードの階層構造を利用して遅延表現を発見し,最大84%(個人的問題)と73%(複数の問題を含む組み合わせデータセット)の精度で性能変化を予測できることが示された。
論文 参考訳(メタデータ) (2021-02-12T16:59:12Z) - Advanced Graph-Based Deep Learning for Probabilistic Type Inference [0.8508198765617194]
本稿では,新しい型フローグラフ(TFG)表現で動作するグラフニューラルネットワーク(GNN)モデルについて紹介する。
我々のGNNモデルは、所定の入力プログラムに対してTFGの型ラベルを予測するために訓練されている。
我々の2つのGNN構成の精度は、それぞれ87.76%と86.89%である。
論文 参考訳(メタデータ) (2020-09-13T08:13:01Z) - LambdaNet: Probabilistic Type Inference using Graph Neural Networks [46.66093127573704]
本稿では,グラフニューラルネットワークに基づくTypeScriptの確率型推論手法を提案する。
弊社のアプローチでは、数値や文字列などの標準型と、トレーニング中に遭遇していないユーザ定義型の両方を予測できる。
論文 参考訳(メタデータ) (2020-04-29T17:48:40Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。