首页 > 其他分享 >A Comparative Study of AI-Generated (GPT-4) and Human-crafted MCQs in Programming Education

A Comparative Study of AI-Generated (GPT-4) and Human-crafted MCQs in Programming Education

时间:2024-08-21 20:26:59浏览次数:8  
标签:MCQs LLM AI LO 生成 评估 crafted GPT MCQ

文章目录

题目

编程教育中人工智能生成的(GPT-4)和人类编写的 MCQ 的比较研究

在这里插入图片描述

论文地址:https://dl.acm.org/doi/10.1145/3636243.3636256

摘要

    教育工作者需要不断开发和维护有效的最新评估。虽然在计算机教育领域,越来越多的研究利用大型语言模型 (LLM) 来生成和参与编码练习,但使用 LLM 生成编程 MCQ 的方法尚未得到广泛探索。我们分析了 GPT-4 生成与高等教育 Python 编程课程中的特定学习目标 (LO) 相一致的多项选择题 (MCQ) 的能力。具体来说,我们开发了一个由 LLM 驱动的 (GPT-4) 系统,用于从高级课程环境和模块级 LO 生成 MCQ。我们评估了 651 个 LLM 生成的 MCQ 和 449 个人造 MCQ,与 6 门 Python 课程中的 246 个 LO 一致。我们发现 GPT-4 能够生成具有清晰语言、单一正确选择和高质量干扰项的 MCQ。我们还观察到,生成的 MCQ 似乎与 LO 很好地一致。我们的研究结果可供希望利用最先进的生成模型来支持 MCQ 创作工作的教育工作者利用。

CCS 概念 • 社会和专业主题 → 计算机科学教育;软件工程教育。

关键词 GPT-4、大型语言模型、法学硕士、多项选择题、MCQ、自动生成、评估、自动内容生成、学习目标、LO

引言

    多项选择题 (MCQ) 测试是教育领域最受欢迎的评估类型之一。然而,设计出能够准确达到预期学习目标 (LO) 的高质量 MCQ 需要宝贵的专业知识,而且耗时长,因此成本高昂。这在计算机教育等技术领域尤其如此,因为开发有效的 MCQ 面临着独特的挑战,例如与包含计算机代码片段相关的挑战。随着技术的变化、对编程教育的兴趣日益浓厚以及学生分享过去评估的门槛越来越低,对教师编写新颖高质量 MCQ 的需求从未如此高涨。大型测试领域的最新发展语言模型 (LLM),例如生成式预训练转换器 (GPT),在应对这一挑战方面显示出巨大的潜力。

    利用 LLM 的功能,教育工作者可以 (半) 自动化生成 MCQ 评估。我们开发了一种新颖的基于 LLM (GPT-4) 的管道,用于自动生成高等教育 Python 编程课程的 MCQ。我们方法的新颖之处在于利用高级课程背景和详细的模块级 LO 来生成格式良好的高质量 MCQ,这些 MCQ 使用清晰的语言,具有合理的干扰项,并且与 LO 保持一致。由于了解自动生成的 MCQ 的质量和有效性至关重要,我们对 651 个自动生成的问题和 449 个人工制作的问题进行了严格的评估。如果高质量的自动 MCQ 生成被证明是可行的,它可以大大减少教育工作者目前在开发评估上花费的时间和精力。

    为了研究 GPT-4 是否以及如何为高等教育编程课程生成高质量的 MCQ 评估,我们分析了以下研究问题:RQ1:生成的 MCQ 在多大程度上满足典型的质量要求?具体来说,它们是否:

  • 以清晰的语言提供足够的信息;
  • 有一个正确的答案,
  • 高质量的干扰项;
  • 包含语法和逻辑上正确的代码?

RQ2:生成的 MCQ 与指定的模块级 LO 的一致性如何?通过开展这项工作,我们为计算教育研究界提供了以下贡献。据我们所知,这是:

  • 首批使用和评估 LLM 自动生成编程课程 MCQ 的研究之一。
  • 首批不是从课程材料的短篇生成 MCQ 而是从 LO 生成 MCQ 的研究之一。
  • 对生成的 MCQ 进行的最广泛(1,100 个 MCQ)和最详细的评估之一,包括与 LO 的一致性。

相关工作

    由于手动构建 MCQ 需要付出巨大努力,研究人员将重点放在自动问题生成任务上。该领域的大多数工作都集中在特定的 MCQ 元素上,即词干(问题)、关键(正确答案)和干扰项(错误选项)。研究最广泛的任务是问答 (QA);这相当于生成关键答案,尽管问答中的大多数工作并不属于这个背景。词干的自动生成与生成自由形式问题 (QG) 有关。最初,这些工作集中在阅读理解任务上,依靠传统的 NLP 方法和神经网络来产生有意义的问题。较新的系统依赖于序列模型或基于注意力的方法,如 LLM(GPT-2 、BERT)。此外,也有人尝试联合解决问答和问答生成任务。Kurdi 等人对用于教育目的的自动自由回答和 MCQ 生成进行了全面概述。

    与生成词干的工作相比,当前关于自动干扰项生成 (DG) 的工作侧重于完形填空测试和阅读理解,以及计算领域以外的 MCQ,例如生物学。这些系统使用词干和/或关键来生成合理的(即相似的)干扰项。通常,系统会生成比必要更多的干扰项,并通过排名系统选择最佳干扰项。鉴于技术领域的 DG 带来了独特的挑战,研究认识到领域特定本体等额外资源的潜在重要性。最近,诸如 BERT或 GPT-2之类的 LLM 已在 DG 中使用。目前已有关于完整端到端 MCQ 生成的研究。

    Rodriguez-Torrealba 等人提出了一种端到端流程,使用 Google 的 T5 Transformer 模型生成 MCQ 的所有三个元素,包括 QG、QA 和 DG。他们指出,评估很困难,只能评估 10 个问题。Leaf 是另一个由 T5 驱动的端到端 MCQ 生成流程,但没有评估。与这些分别关注每个任务的系统不同,我们的工作通过 GPT-4 在单个生成步骤中生成词干、干扰项和关键。此外,虽然现有系统依赖文本上下文来生成类似阅读理解的问题,但我们专注于生成与提供的 LO 高度一致的问题,以便更容易进行大规模评估。Cheung 等人采用 ChatGPT2 的单次生成方法来生成 MCQ。他们依靠医学教科书来提供背景,并指出大约 40% 的问题无需及时工程设计即可按原样使用。最后,Nasution 使用相同的方法来生成高等教育生物学 MCQ,而无需依赖参考文本,尽管他们的分析侧重于学生使用情况而不是教师可用性,而我们关注的是后者。我们的工作与的区别在于,我们进行了严格的提示工程,专注于问题质量和一致性,同时进行了严格的评估(第 4 节)。

    虽然上述方法侧重于其他教育领域,但 MCQ 在计算机教育中也发挥着重要作用。因此,人们也尝试过在这个领域高效地生成 MCQ。我们找不到扩展 Traynor 和 Gibson 早期尝试自动生成 CS1 MCQ 的论文,因为看起来重点转向了基于学习者来源的方法。除了 Tran 等人最近的工作,他们使用 GPT-3 和 GPT-4 生成了现有 MCQ 的同构变体。我们的工作很可能是首次尝试使用 LLM 为高等教育编程课程生成新颖的 MCQ 评估。然而,在计算机教育中,已经有使用 GPT-3 和 GPT-4 回答 MCQ 的工作。

    我们的工作受到了许多其他案例的启发,这些案例中 LLM 已经证明了在生成新颖语言工件方面具有显著的有效性。这些包括课程阅读材料、代码解释、模型解决方案、反馈或对帮助请求的响应。上述示例证明了最先进的 LLM 在生成语法正确、听起来专业的语言方面的能力,这使得工件似乎与人类专家生成的材料没有区别。然而,这样的自动生成的学习资源可能经常缺乏一些有效所必需的深层品质。 因此,在我们的工作中,我们对生成的 MCQ 进行了严格的评估。

在这里插入图片描述

表 1:手动创建的 MCQ 数据集。前三列列出了课程名称、每门课程的模块数量以及 MCQ 数量。其余列报告了布鲁姆分类法不同级别的 LO 数量(RMB – 记忆、UND – 理解、APP – 应用、ANL – 分析、EVL – 评估、CRT – 创建、N/A – 未分配)。

数据集

    对于本文中的实验(第 5 节),我们收集了来自四门 Python 编程3 和两门入门数据科学4 课程的 246 个模块级 LO 的数据集。其中三门课程还包含我们收集的 MCQ(共 529 个),以便将它们与自动生成的 MCQ 进行比较(第 5 节)。我们假设这些 MCQ 是手动创建的。两位作者将每个 MCQ 与相应课程模块中最佳匹配的 LO 相关联。我们从实验中排除了 51 个 MCQ,因为我们无法合理地将它们分配给单个相应的 LO。另外 29 个 MCQ 被排除在我们的研究之外,因为它们需要多个正确选择,而我们只关注单选键的 MCQ。因此,生成的数据集包含 449 道人工编写的 MCQ。使用经过微调的 BERT 分类器(第 4 节有详细信息),每个 LO 被归类到修订后的布鲁姆分类法的六个级别之一。表 1 显示了 LO 在课程和布鲁姆分类法各个级别中的分布情况,以及从每门课程收集的 MCQ 数量。请注意,从课程中提取的一些 LO 定义不明确(例如没有动作动词),因此无法根据布鲁姆分类法对它们进行分类。

MCQ 生成

    图 1 显示了 MCQ 生成流程的整体架构。为了生成 MCQ,我们仅提供有关课程、课程单元(模块)和目标。然后,我们将内部 MCQ 设计资源与用户的输入结合起来,提交给 GPT-4。以下各节将更详细地阐述 MCQ 生成流程中涉及的每个步骤。所提出的 MCQ 生成流程的显着特点是,用户只需提供有关课程和模块的高级信息。这与第 2 节中描述的绝大多数其他 MCQ 生成系统形成鲜明对比。虽然那些系统使用一段文本(例如,教科书中的一段)来生成 MCQ,但我们的系统使用特定的模块级 LO 来生成与该 LO 高度一致的 MCQ。这使我们能够更仔细地将 MCQ 生成与对学生预期 LO 成绩的评估结合起来。除了特定的模块级 LO 及其所属模块外,用户还需要提供课程标题(本研究中使用的课程标题见表 1)、简短的课程描述(包括课程级 LO 列表)和课程模块列表。使用这个特定的上下文以及遵循提示 LLM 生成 MCQ 的最佳实践是所呈现的流程的突出特点。

在这里插入图片描述

图 1:MCQ 生成管道。该图描述了从左到右的自动 MCQ 生成过程。处理用户提供的输入——预测所提供 LO 的布鲁姆分类法级别,从而确定适当的问题类型和相应的 MCQ 示例。这些与原始用户输入和 MCQ 设计资源相结合,形成作为提示提交给 GPT-4 模型的系统和用户消息,输出生成的 MCQ(词干、关键、干扰项)。

    设计资源我们策划了一组静态资源来支持有效 MCQ 生成的各个阶段。我们专注于以下要素:

  • MCQ 原则——一组经过研究验证且普遍接受的原则,指导高质量 MCQ 的创作。例如,这包括干扰项应该是合理的并且数量有限(通常只有两个)。我们在这里只提供了简洁的描述,但图 2 的 MCQ 原则部分显示了广泛的摘录。
  • 布卢姆分类法——修订版布卢姆分类法的六个层次的定义,即记忆、理解、应用、分析、评估和创造。该分类法帮助教育工作者阐明关注具体行动和行为的学习目标,并针对不同层次的认知过程。要让学习目标指导评估的选择,它们必须是可衡量的,也就是说,应该能够评估学习者是否达到了预期的学习目标。我们还提供了有关布卢姆分类法的目的和用途的信息分类法。图 2 中的布鲁姆分类法部分显示了广泛的摘录。
  • 问题类型系统——通过对收集到的人工 MCQ 数据集进行非正式分析(第 3 节),我们定义了五种类型的编程 MCQ:回忆、填空、识别正确输出、分析(跟踪)代码和场景(参见下面管道的 LO 映射到问题类型步骤)。我们将这些类型的定义包含在资源中。图 2 中的 QType 示例部分提供了回忆类型的示例。
  • 问题类型示例——针对每种定义的类型提供一小组高质量的 MCQ 示例(图 2 中的 QType 示例部分中的示例)。
  • 输出格式——输出格式(JSON)的规范。图 2 显示了更多详细信息(输出格式部分)。

    为 LLM 提供此类信息以创建有效的 MCQ 是这项工作的核心贡献之一。与 Leaf 不同,我们的方法允许无需训练即可生成问题和干扰项,从而确保有效生成,而不必担心领域外的泛化。可以合理地假设这适用于主流领域,例如编程入门,其中用于 LLM 预训练的数据集中包含大量相关材料。但是,这种方法可能不适用于内容不太丰富的高度专业化的领域。

在这里插入图片描述

图 3:提示的用户消息部分。该图显示了提示的示例用户消息部分及其主要组成部分:问题类型、课程名称、模块(单元)名称、学习目标和布鲁姆分类法级别。左侧的彩色条纹和彩色徽章与图 1 中的管道组成部分的颜色相匹配。
紫色文本是动态的(依赖于数据)。

     LO 布鲁姆分类法级别分类器我们对来自 5,558 门大学课程的 21,380 个 LO 针对每个布鲁姆分类法类别微调了一个二元 BERT 分类器。BERT(来自 Transformer 的双向编码器表示)是一种流行的 LLM,以其对下游任务的微调能力而著称。我们使用这些模型来预测生成的 LO 的布鲁姆分类法级别(即记忆、理解、应用、分析、评估或创建)。然后,预测结果将用于管道的 LO 映射到问题类型步骤(见下文),并且还嵌入到提示的用户消息部分,如图 3 所示。

    LO 映射到问题类型我们使用自动预测的所提供 LO 的布鲁姆分类级别(见上文)来确定适合该 LO 的 MCQ 类型(见表 2)。我们将每个分类级别映射到一个或多个问题类型,并为每种类型生成一个问题:

  • 回忆 - 给定极少或没有代码,向学生询问基本的编程概念或技术细节。
  • 填空 - 给定一个删除了一些部分的代码片段,要求学生选择一个成功替换空白的选项,以创建语法和语义正确的代码。
  • 基于场景 - 给定一个场景或情况,要求学生确定最适合完成规定任务的适当工具、方法或包。
  • 正确的输出——给定一个代码片段,要求学生跟踪程序执行以确定中间或最终输出。
  • 码分析——给定一个代码片段,要求学生发现错误或以新的方式构建或使用代码。

在这里插入图片描述在这里插入图片描述

表 2:自动生成的 MCQ。该表显示了每个问题类型(行)和布鲁姆分类法级别(列)的自动生成的 MCQ 的分布情况。
表 3:评分者间一致性。该表显示了 Gwet 对六个评分标准项目的 AC1 和 Fleiss

标签:MCQs,LLM,AI,LO,生成,评估,crafted,GPT,MCQ
From: https://blog.csdn.net/weixin_43961909/article/details/141401246

相关文章

  • Selenium + Python 自动化测试21(PO+HTML+Mail)
            我们的目标是:按照这一套资料学习下来,大家可以独立完成自动化测试的任务。上一篇我们讨论了PO模式并举例说明了基本的思路,今天我们继续学习。        本篇文章我们综合一下之前学习的内容,如先将PO模式和我们生成HTML报告融合起来,综合的灵活的使用之......
  • Summarization with Langchain
    教程链接—https://youtu.be/w6wOhSThnoo摘要是自然语言处理(NLP)的一个关键方面,它能够将大量文本浓缩成简洁的摘要。LangChain,作为NLP领域中的一个强大工具,提供了三种不同的摘要技术:stuff、map_reduce和refine。每种方法都有其独特的优点和局限性,使它们适用于不同的情况。本文深......
  • 谷歌Phone的AI全家桶上线了,给所有安卓手机打了个样
    Google的Pixel9系列正式发布,亮点依然在AI功能!为了让自家的手机能跑起来AI功能,Pixel在硬件方面进行了升级。Google为所有新手机增加了RAM,以满足对设备内存需求高的AI应用。Pixel9配备了12GBRAM,其余型号(Pixel9Pro、Pixel9ProXL、Pixel9ProFold)则拥有16GB内存。Pixe......
  • 「每周只上一天班」谷歌散漫制度遭前CEO怒斥:输给OpenAI,再下去要输创业公司了
    「谷歌决定拥抱生活与工作平衡:更早下班、远程工作,胜过在竞争中取胜。」施密特说道。「而说到初创公司,他们之所以能成功,是因为人们在拼命地工作。」在本周三公布的一份斯坦福大学公开课视频中,谷歌前CEO埃里克・施密特(EricSchmidt)在被问到谷歌为什么落后于OpenAI时,终于开炮......
  • 《给所有人的生成式 AI 课》学习笔记(一)
    前言本文是吴恩达(AndrewNg)的视频课程《GenerativeAIforEveryone》(给所有人的生成式AI课)的学习笔记。由于原课程为全英文视频课程(时长约3个小时),且国内访问较慢,阅读本文可快速学习课程内容。课程介绍本课程帮助大家了解生成式人工智能的工作原理,以及如何在生活和工......
  • Java笔试面试题AI答之集合(1)
    文章目录1.Java集合类框架的基本接口有哪些?2.为什么Java集合类没有实现Cloneable和Serializable接口?关于Cloneable接口关于Serializable接口为什么不默认实现这些接口?3.Java中的HashMap的工作原理是什么?1.数据结构2.哈希函数3.处理哈希冲突4.动态扩容5.Java8......
  • C# asnyc和await
    asnyc和await是什么?异步编程是一种编程范式,C#中的异步编程可以通过Thread,TheadPool,Task,async/await等来实现。await能等待什么?不能等待同步代码,只能等待Task或异步方法,且异步方法必须有返回值,async/await的出现:C#5(.NET4.5)引入的语法糖C#7.1,Main入口也可以C#8.0,可......
  • iLogtail 开源两周年:感恩遇见,畅想未来
    早在上世纪60年代,早期的计算机(例如ENIAC和IBM的大型机)在操作过程中会输出一些基本的状态信息和错误报告,这些记录通常通过打印机输出到纸带或纸卡上,用于跟踪操作流程和调试,最早期的日志系统借此诞生。纵观IT发展几十年历程,以日志为代表的可观测以及监控技术在IT技术演变......
  • 短视频生成与AI的结合应用,Web/App RPA 智能化应用
    在这个日新月异的时代,人工智能(AI)与自动化技术的融合正以前所未有的速度重塑着各行各业。你是否梦想过,在信息的海洋中自动筛选出精华,用创意点亮每一篇内容,同时让繁琐的工作流程变得轻松高效?我们诚邀您参加即将开启的“AI自动化应用开发”公开课第3期,一同探索如何用好AI与自动化,让您......
  • 大模型入门书籍推荐:动手做AI Agent(PDF版免费下载)
    动手做AIAgent人工智能时代一种全新的技术Agent正在崛起。这是一种能够理解自然语言并生成对应回复以及执行具体行动的人工智能体。它不仅是内容生成工具,而且是连接复杂任务的关键纽带。本书将探索Agent的奥秘,内容包括从技术框架到开发工具,从实操项目到前沿进展,通过带着......