[論文レビュー] Can ChatGPT Pass An Introductory Level Functional Language Programming Course?
本論文はOCamlベースの導入関数型プログラミングコースにおける学生としてChatGPTを評価し、総合成績67%(B−)と成績順位が220位から155位へ、prompt-engineeringを用いたプロンプトによって改善されたことを示す。
The recent introduction of ChatGPT has drawn significant attention from both industry and academia due to its impressive capabilities in solving a diverse range of tasks, including language translation, text summarization, and computer programming. Its capability for writing, modifying, and even correcting code together with its ease of use and access is already dramatically impacting computer science education. This paper aims to explore how well ChatGPT can perform in an introductory-level functional language programming course. In our systematic evaluation, we treated ChatGPT as one of our students and demonstrated that it can achieve a grade B- and its rank in the class is 155 out of 314 students overall. Our comprehensive evaluation provides valuable insights into ChatGPT's impact from both student and instructor perspectives. Additionally, we identify several potential benefits that ChatGPT can offer to both groups. Overall, we believe that this study significantly clarifies and advances our understanding of ChatGPT's capabilities and potential impact on computer science education.
研究の動機と目的
- OCamlベースの導入関数型プログラミングコースにおける実際のコース問題をChatGPTが解けるか評価する。
- 2022年秋のコースデータの実際の学生の成果とChatGPTの性能を比較する。
- ChatGPTの問題解決品質を向上させるプロンプトエンジニアリング技術の効果を検討する。
- ChatGPTがよく扱えるトピックと苦手な分野を調査する(例:型推論)。
- ChatGPTを学習支援または教育支援として使用する際の潜在的な利点と限界を評価する。
提案手法
- ChatGPTをコースの学生として扱い、Fall 2022の全10問の宿題と関連する試験問題を解かせる(OCamlベースのコース)。
- 未支援と支援付き(プロンプトエンジニアリング)モードを用いて性能を評価する。
- 失敗を構文、コンパイル、論理のカテゴリに分類して分析する。
- 4つのプロンプトエンジニアリング技法(言い換え、自然言語のヒント、例を用いた教え、テストケースの提供)を適用して性能向上を評価する。
- 人間の学生と同じ評価基準でChatGPTの解答を採点し、順位を比較する。
- 概念、コード完成、帰納証明の試験構成を分析して、コード生成を超えた理解を評価する。
実験結果
リサーチクエスチョン
- RQ1ChatGPTは導入関数型プログラミングコースの実在の学生と同程度の成績を達成できるか。
- RQ2OCaml知識、再帰、高階関数、型システムを要する宿題と試験でChatGPTはどうパフォーマンスを発揮するか。
- RQ3プロンプトエンジニアリングはChatGPTの問題解決品質とコース順位をどの程度改善できるか。
- RQ4この教育設定でChatGPTの強み(例:コーディング課題)と弱み(例:型推論)は何か。
主な発見
- 未支援モードでの総合成績67%(B−)を獲得し、支援付きプロンプト後に314名中155位にランクインした。
- 未支援モードで31問中16問を解くことに成功し、高次関数、末尾再帰、遅延プログラミング、継続を含む分野で高い性能を示す一方、型推論やインタプリタなどの大規模タスクには苦戦した。
- 支援付きプロンプト(言い換え、ヒント、例、テストケース)の適用により試験と宿題の成績が向上し、二つの実験で総合試験の点が64.4から81.0へ、前期試験が74.5から79.5へと改善した。
- 支援モードの最終試験の総得点は81.0で未支援の64.4に対して顕著な改善を示し、概念、コード完成、帰納証明の構成要素で顕著な向上があった。
- 支援モードではランキングが改善(最終試験:未支援170位 vs 支援済121位、総合:未支援220位 vs 支援済155位)。
- 総じて、ChatGPTは多くのOCaml問題で正しく elegant な解法を生成する能力を示す一方、型チェックや大規模タスクは依然として難しい。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。