通过真实的大学考试题目评估Chat-GPT在Swift语言上的编程能力

论文标题:Evaluate Chat-GPT's programming capability in Swift through real university exam questions 中文标题:通过真实的大学考试题目评估Chat-GPT在Swift语言上的编程能力

作者信息:

  • Zizhuo Zhang, Information and Network Management Office, Chang'an University, Xi'an, China
  • Lian Wen, School of ICT, Griffith University, Brisbane, Australia
  • Yanfei Jiang, Technology Centre, Xian Rail Transit Group Co. Ltd., Xi'an, China
  • Yongli Liu, School of Information Engineering, Chang'an University, Xi'an, China 通讯作者:Yongli Liu, School of Information Engineering, Chang'an University, Xi'an, China. Email: liuyongli@chd.edu.cn

论文出处:Softw: Pract Exper. 2024;54:2129--2143. wileyonlinelibrary.com/journal/spe

摘要: 本研究评估了OpenAI的GPT-3.5和GPT-4模型使用Swift语言的大学考试题目的编程能力。结果显示,两种GPT模型普遍表现优于平均学生分数,但并未始终超越顶尖学生的表现。这一比较突出了GPT模型在哪些领域表现出色,在哪些领域存在不足,提供了对它们当前编程熟练度的细致看法。研究还揭示了GPT-3.5在某些情况下表现优于GPT-4的惊人实例,表明AI模型能力中存在复杂的变化。通过提供GPT在学术环境中编程技能的明确基准,我们的研究为AI编程教育的未来进步提供了宝贵的见解,并强调了继续发展以充分发挥AI在教育环境中潜力的必要性。

1. 引言: 介绍了人工智能(AI)在高等教育中的显著影响,特别是OpenAI开发的GPT系列模型。讨论了GPT在编程能力方面的多项研究,包括数值方法、错误检测、重构和测试用例生成以及识别代码漏洞等。尽管有证据表明GPT可能在回答多项选择代码问题时面临挑战,但在HackerRank上的Python问题测试中表现出了令人鼓舞的问题解决准确性。然而,关于Codex可能生成记忆代码作为解决方案的担忧仍然存在。研究还表明,GPT在不同编程语言中的能力存在差异。

2. 背景: 讨论了AI回答编程问题时面临的挑战,包括问题的歧义性、领域理解、创造性问题解决和解决方案验证。介绍了ChatGPT如何通过各种方式解决编程挑战,包括理解编程语言和概念、代码验证和调试、创造性问题解决以及处理含糊的问题陈述。同时提供了Swift和SwiftUI的概述。

3. 测试方法: 详细介绍了在移动应用开发(MAD)课程中使用的实验框架和测试方法。包括课程介绍和学生背景、考试结构、评分标准和过程。

4. 结果: 本节揭示了研究的核心发现,包括GPT模型在移动应用开发考试的各种问题类别中的表现,并与学生队列的成就进行了详细比较。使用了方差分析(ANOVA)来确定受访者类型(学生、GPT-3.5、GPT-4)和问题类型(简单、中等、具有挑战性)对考试表现的影响。

5. GPT模型的误差分析: 本节记录了GPT-3.5和GPT-4在考试期间犯下的错误,并试图阐明这些错误背后的原因。

6. 讨论: 探讨了GPT-3.5和GPT-4模型在特定情况下表现出色的意外优势,反思了AI在教育中的角色,以及通过误差分析作为增强AI训练的门户。

7. 结论和未来工作: 总结了研究的主要发现,指出GPT模型尽管具有先进能力,但并未始终超越顶尖学生的表现。讨论了研究的局限性,并提出了未来的研究方向,包括扩大编程语言和更复杂问题类型的范围,以及调查GPT-3.5和GPT-4性能变化背后的原因。最后,强调了在教育环境中负责任和有益地整合AI的重要性。

相关推荐
Lizhihao_3 分钟前
JAVA-队列
java·开发语言
远望清一色21 分钟前
基于MATLAB边缘检测博文
开发语言·算法·matlab
何曾参静谧29 分钟前
「Py」Python基础篇 之 Python都可以做哪些自动化?
开发语言·python·自动化
m0_5236742130 分钟前
技术前沿:从强化学习到Prompt Engineering,业务流程管理的创新之路
人工智能·深度学习·目标检测·机器学习·语言模型·自然语言处理·数据挖掘
Prejudices33 分钟前
C++如何调用Python脚本
开发语言·c++·python
我狠狠地刷刷刷刷刷1 小时前
中文分词模拟器
开发语言·python·算法
wyh要好好学习1 小时前
C# WPF 记录DataGrid的表头顺序,下次打开界面时应用到表格中
开发语言·c#·wpf
AitTech1 小时前
C#实现:电脑系统信息的全面获取与监控
开发语言·c#
qing_0406031 小时前
C++——多态
开发语言·c++·多态
孙同学_1 小时前
【C++】—掌握STL vector 类:“Vector简介:动态数组的高效应用”
开发语言·c++