論文の概要: Learning Code-Edit Embedding to Model Student Debugging Behavior
- arxiv url: http://arxiv.org/abs/2502.19407v1
- Date: Wed, 26 Feb 2025 18:54:39 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-02-27 14:59:40.944144
- Title: Learning Code-Edit Embedding to Model Student Debugging Behavior
- Title(参考訳): モデル学生のデバッグ行動に埋め込まれたコード編集の学習
- Authors: Hasnain Heickal, Andrew Lan,
- Abstract要約: 本稿では,学生の連続的なコード入力間で有意義なコード編集を学習するエンコーダ-デコーダモデルを提案する。
テストケースの正確性を改善しながら、生徒のコーディングスタイルを維持するための、パーソナライズされた次のステップのコード提案を可能にする。
- 参考スコア(独自算出の注目度): 2.1485350418225244
- License:
- Abstract: Providing effective feedback for programming assignments in computer science education can be challenging: students solve problems by iteratively submitting code, executing it, and using limited feedback from the compiler or the auto-grader to debug. Analyzing student debugging behavior in this process may reveal important insights into their knowledge and inform better personalized support tools. In this work, we propose an encoder-decoder-based model that learns meaningful code-edit embeddings between consecutive student code submissions, to capture their debugging behavior. Our model leverages information on whether a student code submission passes each test case to fine-tune large language models (LLMs) to learn code editing representations. It enables personalized next-step code suggestions that maintain the student's coding style while improving test case correctness. Our model also enables us to analyze student code-editing patterns to uncover common student errors and debugging behaviors, using clustering techniques. Experimental results on a real-world student code submission dataset demonstrate that our model excels at code reconstruction and personalized code suggestion while revealing interesting patterns in student debugging behavior.
- Abstract(参考訳): 学生はコードを反復的に送って実行し、コンパイラやオートグレーダーからの限られたフィードバックを使ってデバッグすることで問題を解決する。
このプロセスで学生のデバッグ行動を分析することは、彼らの知識に対する重要な洞察を明らかにし、パーソナライズされたサポートツールに報いるかもしれない。
本研究では, 学生の連続的なコード入力間で有意義なコード編集を学習し, デバッグ動作を捉えるエンコーダ-デコーダモデルを提案する。
本モデルは,学生が各テストケースをLLMに渡してコード編集表現を学習するかどうかの情報を活用する。
テストケースの正確性を改善しながら、生徒のコーディングスタイルを維持するための、パーソナライズされた次のステップのコード提案を可能にする。
また、クラスタリング手法を用いて、学生のコード編集パターンを分析し、一般的な学生のエラーやデバッグ行動を明らかにすることができる。
実世界の学生コード提出データセットの実験結果から,学生のデバッグ行動の興味深いパターンを明らかにしつつ,コード再構成とパーソナライズされたコード提案において,我々のモデルが優れていることが示された。
関連論文リスト
- BugSpotter: Automated Generation of Code Debugging Exercises [22.204802715829615]
本稿では,問題記述からバグコードを生成するツールであるBugSpotterを紹介する。
学生は失敗するテストケースを設計することでBugSpotterと対話する。
論文 参考訳(メタデータ) (2024-11-21T16:56:33Z) - Test Case-Informed Knowledge Tracing for Open-ended Coding Tasks [42.22663501257155]
オープンエンドコーディングタスクは、コンピュータサイエンス教育で一般的である。
応答の正しさのみを分析する伝統的な知識追跡(KT)モデルは、学生のコードから学生の知識のニュアンスを完全に捉えることはできない。
テストケース・インフォームド・ナレッジ・トレーシング・フォー・オープンエンド・コーディング(TIKTOC)は,オープンエンドの学生コードとテストケースを同時に分析・予測するフレームワークである。
論文 参考訳(メタデータ) (2024-09-28T03:13:40Z) - A Proposal for a Debugging Learning Support Environment for Undergraduate Students Majoring in Computer Science [0.0]
生徒はデバッガの使い方を知らないし、使ったこともない。
我々は,正しいブレークポイント配置の自己学習を可能にする機能をScratchに実装した。
論文 参考訳(メタデータ) (2024-07-25T03:34:19Z) - Leveraging Print Debugging to Improve Code Generation in Large Language
Models [63.63160583432348]
大規模言語モデル(LLM)はコード生成タスクにおいて大きな進歩を遂げた。
しかし、複雑なデータ構造やアルゴリズムによるプログラミング問題に対処する彼らのパフォーマンスは、依然として準最適である。
そこで本稿では,LLM のデバッグを "print debugging" 手法でガイドする,コンテキスト内学習手法を提案する。
論文 参考訳(メタデータ) (2024-01-10T18:37:59Z) - NuzzleBug: Debugging Block-Based Programs in Scratch [11.182625995483862]
NuzzleBugは、人気のあるブロックベースのプログラミング環境であるScratchの拡張である。
これは、実行について質問し、回答を提供することができる尋問デバッガである。
教師はNuzzleBugが有用であると考えており、子どもたちはプログラムの欠陥を効果的にデバッグすることができる。
論文 参考訳(メタデータ) (2023-09-25T18:56:26Z) - A Static Evaluation of Code Completion by Large Language Models [65.18008807383816]
単純なプログラミング問題に対するモデル生成コードの機能的正当性を評価するために,実行ベースベンチマークが提案されている。
プログラムを実行せずにエラーを検出するlinterのような静的解析ツールは、コード生成モデルを評価するために十分に研究されていない。
抽象構文木を利用して,Pythonのコード補完における静的エラーを定量化する静的評価フレームワークを提案する。
論文 参考訳(メタデータ) (2023-06-05T19:23:34Z) - Code Execution with Pre-trained Language Models [88.04688617516827]
コードインテリジェンスのトレーニング済みモデルのほとんどは実行トレースを無視しており、ソースコードと構文構造のみに依存している。
我々は,大規模かつ現実的なPythonデータセットとコード実行タスクを作成するために,突然変異に基づくデータ拡張手法を開発した。
次に、コード実行事前学習とカリキュラム学習を活用して意味理解を強化するトランスフォーマーモデルであるCodeExecutorを提案する。
論文 参考訳(メタデータ) (2023-05-08T10:00:05Z) - Enriching Source Code with Contextual Data for Code Completion Models:
An Empirical Study [4.438873396405334]
コンテクストデータを用いてコードを理解しやすくすることで、コード補完作業のための事前学習された言語モデルの性能が向上するかどうかを問う。
コメントについては、マルチラインコメントの存在下でモデルの性能が向上していることが分かる。
論文 参考訳(メタデータ) (2023-04-24T17:09:14Z) - Teaching Large Language Models to Self-Debug [62.424077000154945]
大規模言語モデル(LLM)は、コード生成において素晴らしいパフォーマンスを達成した。
本稿では,大規模言語モデルで予測プログラムを数発のデモでデバッグする自己デバッグを提案する。
論文 参考訳(メタデータ) (2023-04-11T10:43:43Z) - ProtoTransformer: A Meta-Learning Approach to Providing Student Feedback [54.142719510638614]
本稿では,フィードバックを数発の分類として提供するという課題について考察する。
メタラーナーは、インストラクターによるいくつかの例から、新しいプログラミング質問に関する学生のコードにフィードバックを与えるように適応します。
本手法は,第1段階の大学が提供したプログラムコースにおいて,16,000名の学生試験ソリューションに対するフィードバックの提供に成功している。
論文 参考訳(メタデータ) (2021-07-23T22:41:28Z) - GraphCodeBERT: Pre-training Code Representations with Data Flow [97.00641522327699]
本稿では,コード固有の構造を考慮したプログラミング言語の事前学習モデルであるGraphCodeBERTを提案する。
これは変数間の"where-the-value-comes-from"の関係をエンコードするコードのセマンティックレベルの構造です。
コード検索,クローン検出,コード翻訳,コード改良の4つのタスクにおいて,本モデルを評価する。
論文 参考訳(メタデータ) (2020-09-17T15:25:56Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。