論文の概要: Learning to Predict Program Execution by Modeling Dynamic Dependency on Code Graphs
- arxiv url: http://arxiv.org/abs/2408.02816v2
- Date: Fri, 9 Aug 2024 14:48:04 GMT
- ステータス: 処理完了
- システム内更新日: 2024-08-12 17:49:41.632664
- Title: Learning to Predict Program Execution by Modeling Dynamic Dependency on Code Graphs
- Title(参考訳): 動的依存をコードグラフでモデル化してプログラム実行を予測する学習
- Authors: Cuong Chi Le, Hoang Nhat Phan, Huy Nhat Phan, Tien N. Nguyen, Nghi D. Q. Bui,
- Abstract要約: 本稿では,コードカバレッジを予測し,実行時のエラーを検出するための,新しい機械学習ベースのフレームワークであるCodeFlowを紹介する。
CodeFlowは、可能なすべての実行パスと、異なるステートメント間の関係を表現します。
実行中のステートメント間の影響を反映した実行トレースを通じて動的依存関係を学習する。
- 参考スコア(独自算出の注目度): 11.347234752942684
- License: http://creativecommons.org/publicdomain/zero/1.0/
- Abstract: Predicting program behavior without execution is a crucial and challenging task in software engineering. Traditional models often struggle to capture the dynamic dependencies and interactions within code. This paper introduces a novel machine learning-based framework called CodeFlow, designed to predict code coverage and detect runtime errors through Dynamic Dependencies Learning. By utilizing control flow graphs (CFGs), CodeFlow represents all possible execution paths and the relationships between different statements, providing a comprehensive understanding of program behavior. CodeFlow constructs CFGs to depict execution paths and learns vector representations for CFG nodes, capturing static control-flow dependencies. Additionally, it learns dynamic dependencies through execution traces, which reflect the impacts among statements during execution. This approach enables accurate prediction of code coverage and effective identification of runtime errors. Empirical evaluations demonstrate significant improvements in code coverage prediction accuracy and effective localization of runtime errors, outperforming existing models.
- Abstract(参考訳): 実行せずにプログラムの振る舞いを予測することは、ソフトウェア工学において決定的かつ困難な課題である。
従来のモデルは、しばしばコード内の動的な依存関係と相互作用をキャプチャするのに苦労します。
本稿では,コードカバレッジの予測と動的依存性学習による実行時のエラー検出を目的とした,新しい機械学習ベースのフレームワークであるCodeFlowを紹介する。
制御フローグラフ(CFG)を利用することで、CodeFlowは実行可能な実行パスと異なるステートメント間の関係を表現し、プログラムの振る舞いを包括的に理解する。
CodeFlowは実行パスを記述するためにCFGを構築し、CFGノードのベクトル表現を学び、静的な制御-フローの依存関係をキャプチャする。
さらに、実行中のステートメント間の影響を反映した実行トレースを通じて動的依存関係を学習する。
このアプローチは、コードカバレッジの正確な予測と実行時のエラーの効果的な識別を可能にする。
実証的な評価は、コードカバレッジ予測の正確さと実行時のエラーの効果的なローカライゼーションにおいて、既存のモデルよりも優れたパフォーマンスを示している。
関連論文リスト
- VISUALCODER: Guiding Large Language Models in Code Execution with Fine-grained Multimodal Chain-of-Thought Reasoning [10.70881967278009]
視覚制御フローグラフ(CFG)を用いたマルチモーダル・チェーン・オブ・ソート(CoT)推論を統合することで,コード推論を強化する,シンプルかつ効果的なアプローチであるVisual Coderを導入する。
コードスニペットを対応するCFGと整合させることで、Visual Coderは実行フローに関する深い洞察を提供し、コードの振る舞いをより正確に予測できる。
実験により,視覚的CFGによるLLMの増大は,コード推論タスクにおいて,テキストベースのCFG記述を著しく上回ることを示した。
論文 参考訳(メタデータ) (2024-10-30T19:07:01Z) - Towards Safe Automated Refactoring of Imperative Deep Learning Programs
to Graph Execution [4.786072763033669]
より自然な、エラーの少ない命令型DLフレームワークは、実行時のパフォーマンスを犠牲にして、熱心な実行を奨励しています。
我々は、開発者が命令型DLコードをグラフとして確実に効率的に実行できるかどうかを規定する自動化アプローチについて、現在進行中の作業について紹介する。
このアプローチはPyDev Eclipseプラグインとして実装されており、WALA Ariadne分析フレームワークを使用している。
論文 参考訳(メタデータ) (2023-08-22T20:50:19Z) - TRACED: Execution-aware Pre-training for Source Code [24.101763959136058]
TRACEDは、ソースコードに対する実行対応事前学習戦略である。
私たちの目標は、事前トレーニング中に複雑な実行ロジックをコードモデルに教えることです。
TRACEDは静的に事前訓練されたコードモデルを、完全な実行パス予測では12.4%、実行時変数値予測では25.2%改善している。
論文 参考訳(メタデータ) (2023-06-13T01:30:14Z) - CONCORD: Clone-aware Contrastive Learning for Source Code [64.51161487524436]
セルフ教師付き事前トレーニングは、多くのダウンストリームSEタスクに価値のあるジェネリックコード表現を学ぶための牽引役になった。
汎用的な表現学習のために、開発者が日々どのようにコードをコーディングするかは、要因としても不可欠である、と私たちは主張する。
特に,表現空間に良性クローンを近づける自己教師型コントラスト学習戦略であるCONCORDを提案する。
論文 参考訳(メタデータ) (2023-06-05T20:39:08Z) - A Static Evaluation of Code Completion by Large Language Models [65.18008807383816]
単純なプログラミング問題に対するモデル生成コードの機能的正当性を評価するために,実行ベースベンチマークが提案されている。
プログラムを実行せずにエラーを検出するlinterのような静的解析ツールは、コード生成モデルを評価するために十分に研究されていない。
抽象構文木を利用して,Pythonのコード補完における静的エラーを定量化する静的評価フレームワークを提案する。
論文 参考訳(メタデータ) (2023-06-05T19:23:34Z) - A Unified Active Learning Framework for Annotating Graph Data with
Application to Software Source Code Performance Prediction [4.572330678291241]
ソフトウェアの性能予測を専門とする一貫したアクティブラーニングフレームワークを開発した。
能動的・受動的学習に異なるレベルの情報を用いることが与える影響について検討する。
我々のアプローチは、異なるソフトウェアパフォーマンス予測のためのAIモデルへの投資を改善することを目的としています。
論文 参考訳(メタデータ) (2023-04-06T14:00:48Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z) - Software Vulnerability Detection via Deep Learning over Disaggregated
Code Graph Representation [57.92972327649165]
この研究は、コードコーパスから安全でないパターンを自動的に学習するためのディープラーニングアプローチを探求する。
コードには解析を伴うグラフ構造が自然に認められるため,プログラムの意味的文脈と構造的規則性の両方を利用する新しいグラフニューラルネットワーク(GNN)を開発する。
論文 参考訳(メタデータ) (2021-09-07T21:24:36Z) - Learning to Extend Program Graphs to Work-in-Progress Code [31.235862838381966]
プログラムグラフの概念を、トークン間のエッジ関係を予測することを学ぶことによって、プログレッシブ・イン・プログレッシブ・コードに拡張する。
作業中のシナリオにおいて、コード補完のタスクと変数の不正使用のローカライズと修復について検討する。
我々は、細調整されたエッジを持つ関係認識モデルのトレーニングが、両タスクのパフォーマンスを継続的に向上させることを示した。
論文 参考訳(メタデータ) (2021-05-28T18:12:22Z) - Learning to Execute Programs with Instruction Pointer Attention Graph
Neural Networks [55.98291376393561]
グラフニューラルネットワーク(GNN)は、ソフトウェアエンジニアリングタスクを学習するための強力なツールとして登場した。
リカレントニューラルネットワーク(RNN)は、長いシーケンシャルな推論の連鎖に適しているが、プログラム構造を自然に組み込んでいるわけではない。
本稿では,新しいGNNアーキテクチャ,IPA-GNN(Instruction Pointer Attention Graph Neural Networks)を導入する。
論文 参考訳(メタデータ) (2020-10-23T19:12:30Z) - Online Reinforcement Learning Control by Direct Heuristic Dynamic
Programming: from Time-Driven to Event-Driven [80.94390916562179]
時間駆動学習は、新しいデータが到着すると予測モデルのパラメータを継続的に更新する機械学習手法を指す。
ノイズなどの重要なシステムイベントによる時間駆動型dHDPの更新を防止することが望ましい。
イベント駆動型dHDPアルゴリズムは,従来の時間駆動型dHDPと比較して動作することを示す。
論文 参考訳(メタデータ) (2020-06-16T05:51:25Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。