論文の概要: CodeFlow: Program Behavior Prediction with Dynamic Dependencies Learning
- arxiv url: http://arxiv.org/abs/2408.02816v3
- Date: Sun, 09 Feb 2025 17:50:30 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-02-11 18:57:48.725386
- Title: CodeFlow: Program Behavior Prediction with Dynamic Dependencies Learning
- Title(参考訳): CodeFlow:動的依存学習によるプログラム動作予測
- Authors: Cuong Chi Le, Hoang Nhat Phan, Huy Nhat Phan, Tien N. Nguyen, Nghi D. Q. Bui,
- Abstract要約: CodeFlowは、コードカバレッジを予測し、実行時のエラーを検出する、新しい機械学習ベースのアプローチである。
CodeFlowは、実行可能なすべての実行パスと、異なるステートメント間の統計関係を効果的に表現します。
私たちの経験的評価は、CodeFlowがコードカバレッジ予測の精度を大幅に改善し、実行時のエラーを効果的にローカライズできることを示しています。
- 参考スコア(独自算出の注目度): 11.347234752942684
- License: http://creativecommons.org/publicdomain/zero/1.0/
- Abstract: Predicting program behavior without execution is a critical task in software engineering. Existing models often fall short in capturing the dynamic dependencies among program elements. To address this, we present CodeFlow, a novel machine learning-based approach that predicts code coverage and detects runtime errors by learning both static and dynamic dependencies within the code. By using control flow graphs (CFGs), CodeFlow effectively represents all possible execution paths and the statistic relations between different statements, providing a more comprehensive understanding of program behaviors. CodeFlow constructs CFGs to represent possible execution paths and learns vector representations (embeddings) for CFG nodes, capturing static control-flow dependencies. Additionally, it learns dynamic dependencies by leveraging execution traces, which reflect the impacts among statements during execution. This combination enables CodeFlow to accurately predict code coverage and identify runtime errors. Our empirical evaluation demonstrates that CodeFlow significantly improves code coverage prediction accuracy and effectively localizes runtime errors, outperforming state-of-the-art models.
- Abstract(参考訳): 実行せずにプログラムの振る舞いを予測することは、ソフトウェア工学において重要なタスクである。
既存のモデルは、しばしばプログラム要素間の動的依存関係をキャプチャするのに不足する。
これを解決するために、コードカバレッジを予測し、コード内の静的および動的依存関係を学習することでランタイムエラーを検出する、新しい機械学習ベースのアプローチであるCodeFlowを提案する。
制御フローグラフ(CFG)を使用することで、CodeFlowは実行可能なすべてのパスと異なるステートメント間の統計的関係を効果的に表現し、プログラムの振る舞いをより包括的な理解を提供する。
CodeFlowは実行可能な実行パスを表現するためにCFGを構築し、CFGノードのベクトル表現(埋め込み)を学び、静的な制御-フローの依存関係をキャプチャする。
さらに、実行中のステートメント間の影響を反映した実行トレースを活用することで、動的依存関係を学習する。
この組み合わせにより、CodeFlowはコードカバレッジを正確に予測し、実行時のエラーを識別できる。
私たちの経験的評価は、CodeFlowがコードカバレッジ予測の精度を大幅に改善し、実行時のエラーを効果的にローカライズし、最先端のモデルより優れていることを示している。
関連論文リスト
- 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) - Benchmarking Agentic Workflow Generation [80.74757493266057]
複数面シナリオと複雑なグラフワークフロー構造を備えた統合ワークフロー生成ベンチマークであるWorfBenchを紹介する。
また,サブシーケンスとサブグラフマッチングアルゴリズムを利用したシステム評価プロトコルWorfEvalを提案する。
我々は、生成されたタスクが下流のタスクを強化し、推論中により少ない時間で優れたパフォーマンスを達成することを観察する。
論文 参考訳(メタデータ) (2024-10-10T12:41:19Z) - 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) - CFlowNets: Continuous Control with Generative Flow Networks [23.093316128475564]
探索制御タスクの強化学習の代替として,ジェネレーティブフローネットワーク(GFlowNets)を用いることができる。
本稿では,連続制御タスクに適用可能な生成連続フローネットワーク(CFlowNets)を提案する。
論文 参考訳(メタデータ) (2023-03-04T14:37:47Z) - Distributional GFlowNets with Quantile Flows [73.73721901056662]
Generative Flow Networks(GFlowNets)は、エージェントが一連の意思決定ステップを通じて複雑な構造を生成するためのポリシーを学ぶ確率的サンプルの新たなファミリーである。
本研究では,GFlowNetの分散パラダイムを採用し,各フロー関数を分散化し,学習中により情報的な学習信号を提供する。
GFlowNet学習アルゴリズムは,リスク不確実性のあるシナリオを扱う上で不可欠な,リスクに敏感なポリシーを学習することができる。
論文 参考訳(メタデータ) (2023-02-11T22:06:17Z) - D$^3$FlowSLAM: Self-Supervised Dynamic SLAM with Flow Motion Decomposition and DINO Guidance [61.14088096348959]
本稿では,動的シーンにおいて動的コンポーネントを正確に識別しながら頑健に動作する自己教師型ディープSLAM法を提案する。
本稿では,この表現に基づく動的更新モジュールを提案し,動的シナリオに優れた高密度SLAMシステムの開発を行う。
論文 参考訳(メタデータ) (2022-07-18T17:47:39Z) - 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) - GraphCodeBERT: Pre-training Code Representations with Data Flow [97.00641522327699]
本稿では,コード固有の構造を考慮したプログラミング言語の事前学習モデルであるGraphCodeBERTを提案する。
これは変数間の"where-the-value-comes-from"の関係をエンコードするコードのセマンティックレベルの構造です。
コード検索,クローン検出,コード翻訳,コード改良の4つのタスクにおいて,本モデルを評価する。
論文 参考訳(メタデータ) (2020-09-17T15:25:56Z) - 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) - TF-Coder: Program Synthesis for Tensor Manipulations [29.46838583290554]
本稿では,プルーニングを例に,TF-Coderというプログラミングツールを提案する。
入力と出力のテンソルの特徴とタスクの自然言語記述から操作を予測するためにモデルを訓練する。
TF-Coderは、実世界のタスクのうち63を5分以内に解決する。
論文 参考訳(メタデータ) (2020-03-19T22:53:47Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。