2022 Fiscal Year Research-status Report
プログラミング初学者の支援に向けたバグ自動修正・生成技術の創出
Project/Area Number |
22K18630
|
Research Institution | Kyushu University |
Principal Investigator |
亀井 靖高 九州大学, システム情報科学研究院, 准教授 (10610222)
|
Project Period (FY) |
2022-06-30 – 2025-03-31
|
Keywords | プログラミング教育 / 自動デバッグ / デバッグ支援 / バグ埋め込み / コンパイルエラー |
Outline of Annual Research Achievements |
今年度は主にコンパイルエラーの自動バグ修正技術について研究を行った.本研究課題の目的である「プログラミング初学者のつまずきを減らし」の部分に該当する.今年度は,学習者の実行ログに対して,深層学習モデルや大規模言語モデルを適用し,コンパイルエラーを自動修正する技術の性能評価を行った. 1.大規模言語モデルに対する修正性能の調査: GPT-3.5は,大規模で一般化された言語モデルであり,プログラム生成の一部も実現している.GPT-3.5を用いることでコンパイルエラーを含むプログラムも修正できるのではないかと考えた.今年度は,初学者支援ツールへのGPT-3.5の適用に向けた初期評価として,九州大学の学生のデータを用いて調査を行った.その結果,GPT-3.5は先行研究である自動プログラム修正技術よりも10%以上高い精度での修正を行うことがわかった. 2.大規模言語モデルのロバスト性の調査:GitHub Copilotに対して,プログラミングコンテストのAtCoderの問題を入力データとして用い,調査を行った.まず,Copilotが同じ入力データから生成するコードの類似性を確かめたのち,問題の文をランダムに並び替えた場合と,順序をそのままにした場合とで,生成されるコードがどちらにおいても同じであるかどうかを確かめた. 3.型プレビュー機能の実装:Pythonは動的型付け言語であるため,型を意識しなくてもプログラムを記述できる.しかしながら,初学者がデバッグを実施したりプログラムの学習時において,型について理解することは重要である.そこで,型への理解を助けることを目的とし,コードエディタ上に変数の型を表示するプレピュー機能を実装した.
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
「プログラミング初学者のつまずきの減らし」のコア部分であるコンパイルエラーの自動修正に対して初期実験を行って修正の性能を確認できた.また,その内容を研究会において発表できた.現在,研究会の成果を発展させ,英文論文誌への投稿準備を進めている(一部は既に投稿済み).研究の進捗として順調に進展していると考える.
|
Strategy for Future Research Activity |
現在までの進捗状況は,おおむね順調に進展している.ただし,大規模言語モデルの著しい進歩に関する動向を把握し,適宜,研究の推進方策を見直す.また,今年度でも行ったように,今後も国内外の研究会に積極的に参加し(オンライン開催を含む),多面的に意見を取り入れることで問題の早期解決を目指す.
|
Causes of Carryover |
新型コロナウイルスの影響により,出張の一部を次年度に持ち越すことを決めたため,旅費を繰り越した.それに伴って,計算機の購入を先延ばししたため,物品費を一部繰り越しした.次年度は,国内外の打ち合わせ,及び,成果発表,また,計算機の購入に用いる予定である.
|
Research Products
(10 results)