当前位置: 首页 > news >正文

建设168网站合肥网站外包

建设168网站,合肥网站外包,办公平台,厦门做网站企业Comparing Code Explanations Created by Students and Large Language Models 写在最前面总结思考 背景介绍编程教育—代码理解和解释技能培养编程教育—解决方案研究问题研究结果 相关工作Code ComprehensionPedagogical Benifis of code explanationLarge Language Models i… Comparing Code Explanations Created by Students and Large Language Models 写在最前面总结思考 背景介绍编程教育—代码理解和解释技能培养编程教育—解决方案研究问题研究结果 相关工作Code ComprehensionPedagogical Benifis of code explanationLarge Language Models in CS EducationContribution of this paper 方法与分析数据集数据来源数据收集数据抽样数据分析 描述性统计学生和LLM生成的代码解释质量差异 讨论与总结来自 GPT-3 和学生的好坏解释示例1234 代码解释的特征学生和LLM创建的代码解释之间的差异GitHub Copilot工具缺点过度依赖LLM What Do Students Value in Code Explanations?LimitationsFuture work 写在最前面 本文为邹德清教授的《网络安全专题》课堂笔记系列的文章本次专题主题为AIGC。 李智佳同学分享了Comparing Code Explanations Created by Students and Large Language Models《学生和大型语言模型创建的代码解释比较》 https://doi.org/10.48550/arXiv.2304.03938 Submitted on 8 Apr 2023 Computer Science Computers and Society 感觉这篇有点偏gpt生成的代码解释分析以及和学生生成解释的对比用的统计问卷分析序数选项非参数 Mann-Whitney U 检验。 不是常规论文的那种思路——提升gpt生成性能 总结 本文通过让学生创建代码解释然后对比评估他们同伴的代码解释以及 GPT-3 创建的代码解释。实验发现 1、学生和 LLM 创建的代码解释在感知长度和实际长度上没有差异 2、但学生对 GPT-3 创建的代码解释的准确性和可理解性的评价都更高。 3、此外我们发现学生更喜欢详细的解释而不是简明扼要的高层次解释。 4、LLM 创建的代码解释对练习代码阅读和解释的学生很有益处。 思考 1、随着基于LLM的人工智能代码生成器如 GitHub Copilot的出现未来软件开发人员的角色将越来越多地是评估 LLM 生成的源代码而不是从头开始编写代码。 2、GPT在面对错误代码时将如何解释是否可以发现错误并改正 背景介绍 编程教育—代码理解和解释技能培养 理解和解释代码的能力是计算机科学专业学生需要培养的一项重要技能。学生解释代码的能力与编写、跟踪代码等其他技能之间的关系在计算教育领域已经有了广泛的研究。特别是在高度抽象的水平上描述代码如何在所有可能的输入中表现的能力与代码写作技巧密切相关。 然而学生很难解释自己的代码而且解释代码的能力也是一项难以培养的技能其并未明确列为学习目标。培养能够准确、简洁地理解和解释代码的专业技能对许多学生来说是一个挑战。 编程教育—解决方案 研究问题 问题 1 学生和LLM创建的代码解释在准确性、长度和可理解性方面有多大差异 问题 2 学生重视代码解释的哪些方面 研究结果 本文通过对比学生与LLMs创建的代码解释在准确性、可理解性和长度方面的优劣评估了LLMs在生成解释方面的潜力。实验结果表明LLM和学生生成的代码解释在理想长度上相当LLM创建的、可按需自动生成的解释更容易理解且更准确。这对将这些模型纳入入门编程教育具有重要意义。 相关工作 Code Comprehension 代码理解技能对于帮助编程学生理解代码片段背后的逻辑和功能非常重要,程序员可以采用各种代码理解策略从而灵活地理解编程概念。 Pedagogical Benifis of code explanation 代码解释可以帮助学生理解代码片段是如何执行的 从而帮助学生提高编写自己代码的推理能力 。它们还能通过分解复杂的概念来减轻压力。 Large Language Models in CS Education 基于人工智能的代码生成模型引发了计算教育研究领域的极大兴趣初步研究主要集中在评估这些模型在解决入门课程中常见的编程问题时的性能。 例如“The Robots are Coming”[13],它利用了 Codex 模型和一个从高分终结性评估中提取的私人编程问题库。研究结果表明Codex 生成的解决方案在评估中的得分率约为 80%。 此外还有一些辅助研究对基于人工智能的代码生成模型生成学习资源的潜力进行了调查。 例如Sarsa 等人[36]探索了使用 Codex 模型生成代码解释和编程练习的各种提示和方法发现它经常生成新颖和高质量的资源。 MacNeil 等人[24]使用 GPT-3 模型生成简短代码片段的解释然后将这些解释和相应的代码一起以在线电子书的形式呈现给学生。 问题这种参与度低于预期学生既没有参与代码示例的创建也没有参与附带的解释。 Contribution of this paper 本研究通过直接比较学生生成的代码解释与人工智能模型生成的代码解释做出了独特的贡献。 虽然之前的研究已经证明LLM 可以生成专家和新手都认为是高质量的代码解释但这是第一项调查学生如何评价同伴创建的代码解释与人工智能模型生成的代码解释的研究。 方法与分析 数据集 数据来源 本研究的数据是在奥克兰大学一年级编程课程中收集的。2022 年约有 1000 名学生选修了这门课程。 数据收集 数据是在两次A、B不同的实验课上收集的每次实验课为期一周。在第一次实验开始收集数据时课程已涵盖了 C 编程语言中的算术、类型、函数、循环和数组等概念。 在第一个实验Lab A中学生们看到了三个函数定义并被要求总结和解释每个函数的预期目的。第二个实验Lab B中学生们被要求对随机抽取的4份代码解释一部分来自学生一部分来自GPT-3的准确性、可理解性和长度进行评分。 最后学生回答以下问题你们认为好的代码解释最有用的特征是什么代码解释的哪些方面对你有用 数据抽样 代码解释的生成和抽样概述 在Lab A中3个函数分别提交了963份解释根据代码解释字长分为3类每类抽取3条共27条研究又增加了27条GPT-3创建的解释。 在Lab B中每个学生从54条解释中随机抽取4条并对其评分 5个选项非常不同意、不同意、中立、同意、非常同意 A该解释通俗易懂 B该解释准确概括了代码 C该解释长度理想 D该解释非常准确概括了代码 数据分析 量化学生创建的代码解释与 LLM 生成的代码解释之间的差异比较了两种代码解释来源的学生对Likert-scale问题的回答并探究学生看重代码解释的哪些方面。 为了回答问题 1 比较了两种代码解释来源的学生对Likert-scale问题的回答。由于Likert-scale表回答数据是序数本文使用了非参数 Mann-Whitney U 检验来检验学生和LLM代码解释之间的差异。检验了 ①在代码解释是否通俗易懂方面是否存在差异 ②在代码解释是否准确概括代码方面是否存在差异 ③在代码解释长度是否理想方面是否存在差异。 ④研究了代码解释的实际长度以形成学生和 GPT-3 之间代码解释长度是否存在差异的基线这有助于解释其他研究结果。 对于四次 Mann-Whitney U 检验使用 Bonferroni 校正 p 0.05/4 作为统计显著性的临界值。 为了回答问题 2即研究学生重视代码解释的哪些方面对随机抽取的 100 份学生对开放式问题 代码解释的哪些方面对你有用的回答进行了专题分析。 描述性统计 共有 954 名学生参与了评估代码解释质量的活动。表 1 显示了这些回答的平均值和中位数以及学生创建的代码解释和 LLM 生成的代码解释的平均长度。图 3 进一步概括了回答的分布情况对不同的回答分别用不同的颜色进行了标注并对不同的回答值进行了直观的比较。 学生和LLM生成的代码解释质量差异 本文进行了Mann-Whitney U 检验以研究学生和 LLM 生成的代码解释之间的差异。从表 2 中的共同语言效应大小CLES来看学生和LLM生成的代码解释对中学生生成的代码解释更容易理解的比例约为 40%而LLM的比例约为 60%。同样在学生生成的代码解释和LLM生成的代码解释中学生生成的代码解释是更准确的摘要的比例约为 44%而LLM生成的代码解释是更准确的摘要的比例约为 56%。根据 Bonferroni 修正学生对代码解释长度是否理想的看法在统计学上没有显著差异代码解释的实际长度在统计学上也没有显著差异。 讨论与总结 来自 GPT-3 和学生的好坏解释示例 为了说明 GPT-3 和学生创建的解释类型本文介绍了四个学生认为质量不同的解释示例–LLM 和学生创建的最大值函数的最高和最低解释。 学生们更喜欢以逐行的形式来说明函数是什么和如何操作的解释。 许多学生还认为好的解释应说明代码的输入和输出。糟糕的解释则是遗漏了代码的某些细节同时篇幅过长或过短。例如解释可能会在较高的层次上说明代码的目的但没有详细说明使用了哪些数据结构或函数的输入是什么。 此外论文发现所有 LLM 生成的解释都以 此代码片段 或 此代码片段的目的 开头而学生生成的解释则差异较大。这部分是由于 LLM 的提示它被要求解释 以下代码片段 的目的。不过学生和LLM的大多数解释一般都遵循类似的结构函数的目的、代码分析以及最后的返回输出。 1 2 3 4 代码解释的特征 在专题分析n100中发现学生们几乎各占一半分别侧重于代码的特定方面和一般方面有些学生的回答还包括这两方面。在关注代码的具体方面时学生描述了逐行解释的必要性21%。学生们还关注更低级别的细节如变量名、输入和输出参数36%以及术语定义8%。一些学生要求提供代码解释中很少包含的其他方面。例如学生要求提供示例、模板以及编写代码背后的思考过程。 学生们广泛地评论了好的解释应具备的品质。篇幅是一个重要方面40% 的学生明确评论了解释的篇幅。然而对于最理想的确切长度并没有达成明确的共识。相反评论往往侧重于效率用最少的字数传达最多的信息。学生似乎对简短的解释评价不高。部分原因可能是这些解释几乎或根本没有提供函数中不明显的额外信息例如函数名称。 学生作为新手可能更喜欢更详细的解释因为这有助于他们更好地学习和理解代码中实际发生的事情。 学生和LLM创建的代码解释之间的差异 GitHub Copilot工具 将重点从编写代码转移到理解代码的目的、评估生成的代码是否合适以及根据需要修改代码从而使代码理解成为一项更加重要的技能。而LLM 不仅可以帮助学生生成代码还可以通过创建代码解释可用作代码理解练习来帮助学生理解代码。 缺点过度依赖LLM 对抗过度依赖LLM创建的代码解释的方法之一是监控学生使用这类工具的使用(例如,给予学生有限数量的tokens ,这些tokens会在他们向LLM请求解释时使用)。例如学生可以通过要求解释来获得固定数量的代币开始和使用然后通过编写自己的手工代码解释来获得代币。 What Do Students Value in Code Explanations? 在专题分析中发现学生们表示更喜欢逐行解释。这也是LLM似乎最擅长的解释类型。 这表明教师和学生对什么是好的解释可能存在不一致的意见。甚至可能是一些先前的工作不公平地对学生的多结构解释进行了较低的评价因为学生可能能够产生更抽象的关系解释但他们认为更长、更详细的解释是更好的从而产生了这些类型的解释。 在专题分析中还观察到LLM 创建的解释密切遵循标准格式。向学生展示 LLM 创建的解释可能有助于他们在自己的解释中采用标准格式这可能有助于做出更好的解释。 Limitations 关于普适性我们研究中的学生都是新手。这可能会影响他们创建的解释类型以及他们如何评价同伴和 GPT-3 创建的解释。 有可能水平较高的学生或指导老师所创建的代码解释的评分会高于 GPT-3 创建的解释。 一旦学生积累了更多经验他们可能会开始重视更抽象、更简短的解释。 只考察了学生对解释质量的看法未考虑学习效果差异。 Future work 评估学生和 LLM 在解释和检测错误代码中的错误方面的表现 研究在使用学生和 LLM 创建的代码解释时学生的学习效果是否存在差异。
http://www.dnsts.com.cn/news/931.html

相关文章:

  • 网站排版代码专业的推广公司
  • 济南专业做网站公司百度广告公司联系方式
  • 网站开发人员岗位职责重庆森林讲的什么内容
  • seo 怎么建设网站外链友链申请
  • 讨论致同国际网站建设情况永州网站seo
  • 济南房产信息网seo全网营销公司
  • 做跨境电商网站报价网络营销形式
  • 张家口网站建设深圳整合营销
  • 自己如何制作一个软件重庆seo黄智
  • 网页设计尺寸规范psseo营销培训
  • 公司资质查询官方网站怎么免费制作网页
  • 网站代码怎么改国内网站建设公司
  • 广州哪里做公司网站号网络推广外包要多少钱
  • 做优化网站多少钱东莞做网站seo
  • 昆山品牌设计公司营销型网站建设优化建站
  • 电脑上如何做网站宣传什么是seo优化推广
  • 碑林区营销型网站建设软文营销的技巧
  • 网站标签优化怎么做移动端排名优化软件
  • 学校网站建设目的是什么意思网络营销工具的特点
  • wordpress博客空间百度快照优化seo
  • 吉林大学建设工程学院官方网站竞价推广套户渠道商
  • 有没有什么做h5的网站营销网站类型
  • 沈阳企业网站2023年最新时政热点
  • 电子商务网站建设规划书四大营销策略
  • ps设计网站步骤舆情报告
  • 网站建设的违约责任制作网站平台
  • 郑州企业网站制作公司河南网络推广那家好
  • 苏州哪家做网站好些建站为应用技术
  • kali做钓鱼网站搜索引擎营销的实现方法有
  • 麟游做网站腾讯企业邮箱登录入口