論文の概要: Graph-based, Self-Supervised Program Repair from Diagnostic Feedback
- arxiv url: http://arxiv.org/abs/2005.10636v2
- Date: Tue, 30 Jun 2020 05:30:33 GMT
- ステータス: 処理完了
- システム内更新日: 2022-12-01 04:39:25.632242
- Title: Graph-based, Self-Supervised Program Repair from Diagnostic Feedback
- Title(参考訳): 診断フィードバックを用いたグラフベース自己監督型プログラム修復
- Authors: Michihiro Yasunaga, Percy Liang
- Abstract要約: 本稿では,ソースコードの修復や診断フィードバックに関連するシンボルを結合するプログラムフィードバックグラフを提案する。
次に、推論プロセスのモデル化にグラフニューラルネットワークを適用します。
オンラインで利用可能なラベルのないプログラムを活用するプログラム修復のための自己指導型学習パラダイムを提案する。
- 参考スコア(独自算出の注目度): 108.48853808418725
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: We consider the problem of learning to repair programs from diagnostic
feedback (e.g., compiler error messages). Program repair is challenging for two
reasons: First, it requires reasoning and tracking symbols across source code
and diagnostic feedback. Second, labeled datasets available for program repair
are relatively small. In this work, we propose novel solutions to these two
challenges. First, we introduce a program-feedback graph, which connects
symbols relevant to program repair in source code and diagnostic feedback, and
then apply a graph neural network on top to model the reasoning process.
Second, we present a self-supervised learning paradigm for program repair that
leverages unlabeled programs available online to create a large amount of extra
program repair examples, which we use to pre-train our models. We evaluate our
proposed approach on two applications: correcting introductory programming
assignments (DeepFix dataset) and correcting the outputs of program synthesis
(SPoC dataset). Our final system, DrRepair, significantly outperforms prior
work, achieving 68.2% full repair rate on DeepFix (+22.9% over the prior best),
and 48.4% synthesis success rate on SPoC (+3.7% over the prior best).
- Abstract(参考訳): 診断フィードバック(例えば、コンパイラエラーメッセージ)からプログラムを修復する際の問題を考察する。
プログラムの修復は2つの理由から難しい。まず、ソースコードをまたいだ推論と追跡と診断フィードバックが必要である。
第二に、プログラムの修復に利用可能なラベル付きデータセットは比較的小さい。
本稿では,この2つの課題に対する新しい解決策を提案する。
まず、ソースコードと診断フィードバックのプログラム修復に関連するシンボルを結合するプログラムフィードバックグラフを導入し、その上にグラフニューラルネットワークを適用して推論プロセスをモデル化する。
第二に、オンラインで利用可能なラベルのないプログラムを活用して、多数の追加のプログラム修復例を作成するプログラム修復のための自己教師型学習パラダイムを提案する。
提案手法を2つのアプリケーションに対して評価する: 導入プログラミング代入(DeepFix データセット)の補正とプログラム合成(SPoC データセット)の出力の補正である。
最終システムであるDrRepairは、DeepFixで68.2%、SPoCで48.4%、SPoCで48.4%の完全修復成功率(+3.7%)を達成した。
関連論文リスト
- Multi-Task Program Error Repair and Explanatory Diagnosis [28.711745671275477]
マルチタスクプログラムエラー修復・説明診断(mPRED)のための新しい機械学習手法を提案する。
ソースコードのエンコードには事前訓練された言語モデルが使用され、ダウンストリームモデルはエラーを特定して修復するために特別に設計されている。
プログラム構造を可視化・解析するために,プログラム構造の可視化にグラフニューラルネットワークを用いる。
論文 参考訳(メタデータ) (2024-10-09T05:09:24Z) - VDebugger: Harnessing Execution Feedback for Debugging Visual Programs [103.61860743476933]
V Debuggerは、視覚プログラムのローカライズとデバッギングのために、段階的に実行を追跡することで訓練された、批評家とリファインダーのフレームワークである。
Vデバッガは、詳細な実行フィードバックを活用してプログラムエラーを特定し、修正する。
6つのデータセットの評価は、Vデバッガの有効性を示し、ダウンストリームタスクの精度が最大3.2%向上したことを示している。
論文 参考訳(メタデータ) (2024-06-19T11:09:16Z) - Peer-aided Repairer: Empowering Large Language Models to Repair Advanced Student Assignments [26.236420215606238]
我々は,大規模言語モデルを利用したPaRというフレームワークを開発した。
PaRは、ピアソリューション選択、マルチソースプロンプト生成、プログラム修復の3段階で動作する。
Defects4DSと他のよく検証されたTHEPデータセットの評価は、PaRが新しい最先端のパフォーマンスを達成することを明らかにしている。
論文 参考訳(メタデータ) (2024-04-02T09:12:21Z) - Flexible Control Flow Graph Alignment for Delivering Data-Driven
Feedback to Novice Programming Learners [0.847136673632881]
我々は,オープンソースのデータ駆動型自動修復手法であるCLARAに,いくつかの改良を加えて提案する。
我々はCLARAの抽象構文木プロセッサを拡張し、一般的な入門プログラミング構造を扱う。
CLARAの修復プロセスを適用するために,不正プログラムの制御フローグラフを修正した。
論文 参考訳(メタデータ) (2024-01-02T19:56:50Z) - Graph Neural Networks For Mapping Variables Between Programs -- Extended
Version [0.0]
両プログラムの抽象構文木(AST)に基づく2つのプログラム間の変数の集合をグラフニューラルネットワーク(GNN)を用いてマッピングする。
変数写像の強みを示すために,プログラム修復作業におけるこれらの写像のユースケースを3つ提示する。
論文 参考訳(メタデータ) (2023-07-24T16:14:32Z) - Giving Feedback on Interactive Student Programs with Meta-Exploration [74.5597783609281]
ウェブサイトやゲームのようなインタラクティブなソフトウェアを開発することは、特にコンピュータ科学を学ぶための魅力的な方法である。
標準的アプローチでは、インストラクターは、学生が実装した対話型プログラムを手動で評価する必要がある。
Code.orgのような何百万ものオンラインプラットフォームは、インタラクティブなプログラムを実装するための代入に関するフィードバックを提供することができない。
論文 参考訳(メタデータ) (2022-11-16T10:00:23Z) - Learning from Self-Sampled Correct and Partially-Correct Programs [96.66452896657991]
そこで本研究では,モデルが学習中にサンプリングを行い,自己サンプリングされた完全正当プログラムと部分正当プログラムの両方から学習することを提案する。
自己サンプリング型プログラムと部分修正型プログラムを併用することで,学習とサンプリングプロセスのガイドに役立てることができることを示す。
提案手法は,MLEを用いた単一の参照プログラムからの学習と比較して,パス@kの性能を3.1%から12.3%向上させる。
論文 参考訳(メタデータ) (2022-05-28T03:31:07Z) - Leveraging Causal Inference for Explainable Automatic Program Repair [24.146216081282798]
本稿では,因果推論を用いたシーケンス・ツー・シーケンスモデルに基づくプログラム修復のための解釈可能なアプローチを提案する。
我々の手法はCPRと呼ばれ、因果プログラムの修復に短い。
4つのプログラミング言語の実験では、CPRが合理的な解釈のために因果グラフを生成できることが示されている。
論文 参考訳(メタデータ) (2022-05-26T13:25:33Z) - ProtoTransformer: A Meta-Learning Approach to Providing Student Feedback [54.142719510638614]
本稿では,フィードバックを数発の分類として提供するという課題について考察する。
メタラーナーは、インストラクターによるいくつかの例から、新しいプログラミング質問に関する学生のコードにフィードバックを与えるように適応します。
本手法は,第1段階の大学が提供したプログラムコースにおいて,16,000名の学生試験ソリューションに対するフィードバックの提供に成功している。
論文 参考訳(メタデータ) (2021-07-23T22:41:28Z) - Break-It-Fix-It: Unsupervised Learning for Program Repair [90.55497679266442]
我々は2つの重要なアイデアを持つ新しいトレーニング手法であるBreak-It-Fix-It (BIFI)を提案する。
批判者は、実際の悪い入力でフィクスダーの出力をチェックし、トレーニングデータに良い(固定された)出力を追加する。
これらのアイデアに基づいて、よりペア化されたデータを生成するために、ブレーカとフィクスチャを同時に使用しながら、繰り返し更新する。
BIFIは既存のメソッドより優れており、GitHub-Pythonで90.5%、DeepFixで71.7%の修正精度がある。
論文 参考訳(メタデータ) (2021-06-11T20:31:04Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。