写点什么

ChatGPT 正确回答代码问题的几率比抛硬币还要差

  • 2024-01-24
    北京
  • 本文字数:2486 字

    阅读完需:约 8 分钟

大小:1.19M时长:06:54
ChatGPT 正确回答代码问题的几率比抛硬币还要差

普渡大学的一项研究显示,OpenAI 家神奇的聊天机器人 ChatGPT 在回答软件编程相关的问题时,有一半以上的概率会给出错误答案。尽管如此,这款机器人的说服力还是能骗过三分之一的研究参与者。

 

普渡大学的团队分析了 ChatGPT 对 517 个 Stack Overflow 问题的回答,从正确性、一致性、全面性和间接性四个方面进行了评估。美国的学者同样对这些答案进行了语言和情感的分析,并用模型生成的结果询问了几十位志愿者的意见。

 

“我们的分析表明,ChatGPT 的回答中有 52%的错误率,77%过于冗长,”该团队的论文总结,“尽管如此,ChatGPT 的回答全面且语言风格清晰明了,仍在 39.34%的情况下被视作首选。”在这组首选的 ChatGPT 回答中,有 77%都是错误的。

 

OpenAI 在 ChatGPT 的官网上承认其软件“可能会产生不准确的人物、地点或事实信息。”我们询问了实验室是否对普渡大学的研究发表任何评论。

 

只有在 ChatGPT 的回答中错误足够明显时,用户才能看出问题。

 

预印本标题为《谁的回答更好?对 ChatGPT 和 StackOverflow 在软件工程方面问题回答的深入分析》,由研究人员 Samia Kabir、David Udo-Imeh、Bonan Kou,及助理教授 Tianyi Zhang 合作编著。

 

“我们在研究中观察到,只有当 ChatGPT 回答中的错误非常明显时,人们才能发现,”论文中指出,“然而,当错误不易验证或需要外部 IDE 或文档时,人们往往无法发现错误或低估回答中的错误程度”。

 

论文称,即使在回答中有明显错误,12 名参与者中仍有两人将其标记为首选答案。论文将此归咎于 ChatGPT 轻松且权威的回答风格。

 

“通过半结构化的采访中可以看出,礼貌用语、自信有力和教科书式的答案,再加上全面性和答案中的因果关系,这些能让完全错误的答案显得正确,”论文中写道。

研究发现,大家更喜欢 ChatGPT 错误且冗长的答案


“与 Stack Overflow 的答案相比,参与者更喜欢 ChatGPT 错误且冗长的答案,原因有很多,”普渡大学的博士生,也是论文的作者之一,Samia Kabir 告诉《The Register》。

 

“主要原因是 ChatGPT 的答案非常详细,很多情况下,如果参与者能够从冗长但详细的答案中获得有用信息,他们并不介意答案的长度。此外,积极的语气和礼貌的回答则是另外两个原因。”


“当参与者认为 ChatGPT 的回答非常深刻时,便会忽视答案中的错误。ChatGPT 能够自信地传达颇有见地的信息(即使是错误信息),为它赢得了用户的信任,从而让人们更偏好不正确的答案。”Kabir 称,用户研究在对 ChatGPT 答案的深入人工分析和大规模语言分析方面有补充作用。“不管怎么说,更大规模的样本量总是没坏处,”她说,“我们也欢迎其他研究者复制我们的研究从而促进未来的研究发展,我们的数据集是公开的。”

 

作者观察到,ChatGPT 的答案包含更多“驱动性”,会在文字间暗示成就或成绩,但对风险的描述频率不如 Stack Overflow 帖子。“我们多次观察到 ChatGPT 使用了‘我当然能帮您’、‘这一定能解决问题’等短语”,论文中称。

 

除此之外,作者还发现 ChatGPT 更容易犯概念性错误而非事实性错误。“ChatGPT 回答出错多数是由于它无法理解问题基本背景的本质,”论文中发现。

 

作者对 ChatGPT 和 Stack Overflow 回答进行的语言分析表明,机器人的回答“更正式,也表达了更多的分析性思维,展示了更多其为实现目标所做的努力,也较少表现出负面的情绪”。研究团队的情绪分析认为,ChatGPT 比 Stack Overflow 的回答表现出了“更积极的情感”。

 

Kabir 称,“根据我们的研究结果和观察,我们建议 Stack Overflow 可以采用有效的方式检测评论及回答中的负面或攻击性情绪,改善情绪变得礼貌”。

 

“此外,Stack Overflow 可以提高其答案的可发现行,从而帮助用户找到有用的答案。Stack Overflow 也可以提供更为具体的指引,帮助回答者组织答案,比如用循序渐进、注重细节的方式回答”。

Stack Overflow 还是溢出的堆栈


对于 Stack Overflow 来说,还是有一些积极的消息。在 2018 年,Stack Overflow 是 130 万安卓应用程序中15%的错误代码片段来源。在研究中,60%的受访者认为(自认的)人工撰写的答案更正确、更简洁,也更有用。

 

尽管如此,Stack Overflow 的使用量似乎还是有所下降,但具体下降的幅度还有争议。SimilarWeb 在四月的一份报告称,自 2022 年 1 月以来,Stack Overflow 的网站流量似乎每月都有 6%的下降幅度,3 月中更是下降了 13.9%。

 

Stack Overflow 的问答网络站点,Stack Exchange 中的社区成员显然也得出了类似的结论,他们是基于新的问题活动、网站上发布的新回答,以及新用户注册数量的下降中得出的。

 

所有权于2021年更新后,Stack Overflow 公司在发送给《The Register》的一封电子邮件中表达了对 SimilarWeb 评估的异议。

 

一位发言人称,Stack Overflow 在 2022 年 5 月将其分析 cookie 从“严格必要”重新归类为“性能”cookie,并于 2022 年 9 月改用第 4 版谷歌 Analytics,这两项策略都会影响流量的报告和长期的对比。

 

“尽管我们看到流量略有下降,但事实绝不是图表上显示的那样”,公司发言人告诉《The Register》,“与 2022 年相比,2023 年的总体流量平均下降了 5%”。

 

“尽管如此,Stack Overflow 及其他许多网站的流量都受过去几月内 ChatGPT 关注度激增的影响。2023 年 4 月,我们的流量降幅超过了平均水平(约 14%),这很可能是由于开发者在 3 月 ChatGPT 发布后进行了试用。我们的流量也会受搜索算法影响变化,这对我们的内容发现形式有很大的影响”。

 

在被问及这篇论文中的研究结果时,Stack Overflow 的发言人表示公司目前没人有时间研究这篇报告。


“大家都知道开发者在利用人工智能方式方面并不缺乏选择,但根据我们自己的调查结果,人工智能的采用有一个核心的障碍,那就是对人工智能生成内容的准确性的信任”,该发言人称。


“Stack Overflow 近期对 9 万名程序员进行的年度开发者调查发现,77%的开发者对人工智能工具持支持态度,但只有 42%的开发者选择相信这些工具的准确性。OverflowAI 的开发是以社区为核心,注重数据和人工智能生成内容的准确性”。

 

“有了 OverflowAI,我们就能在 Stack Overflow 的社区和其中 5800 多万的问题和答案中进行筛查、验证、归因,并确认准确性和可信度”。

2024-01-24 17:446754

评论

发布
暂无评论
发现更多内容

第七周课后总结

饭桶

第六周学习技术选型2总结

三板斧

华为云FusionInsight MRS:助力企业构建“一企一湖,一城一湖”

华为云开发者联盟

数据库 云原生 数据

熟悉又陌生的 k8s 字段:SecurityContext

郭旭东

Kubernetes Kubernetes源码

如何快速构建Spring Boot基础项目?

田维常

spring Boot Starter

架构师训练营 1 期 - 第六周 - 技术选型2

三板斧

极客大学架构师训练营

日常工作参数分析

hasWhere

架构训练营-week7-学习总结-性能测试,操作系统,锁

于成龙

架构训练营

如何降低young gc时间

AI乔治

Java 架构 GC GC算法

4年Java经验,去面试居然10分钟就结束了,现在面试为什么这么难?

Java架构之路

Java 程序员 架构 面试 编程语言

运筹帷幄之后,决胜千里之外!GitHub上标星75k+的《Java面试突击手册》助你拿到满意的offer。

Java架构之路

Java 程序员 架构 面试 编程语言

轻松使用TensorFlow进行数据增强

计算机与AI

tensorflow 学习 数据增强

【原创】SpringBoot 这几种配置文件方式,你都用过吗?

田维常

springboot

JUC之 FutureTask 源码与工作原理分析

AI乔治

Java 编程 架构 jdk 线程

第七周课后练习

饭桶

JUC 之ThreadPoolExecutor实现原理分析

AI乔治

Java 架构 jdk 线程

鬼知道我经历了什么!全靠这份999页Java面试宝典,我刚拿到美团offer!

Java架构追梦

Java 程序员 架构 面试 美团

Github标星35K+超火的Spring Boot实战项目,附超全教程文档

Java架构之路

Java 程序员 架构 面试 编程语言

快速掌握并发编程---ArrayBlockingQueue 底层原理和实战 java

田维常

并发编程 LinkedBlockingQueue

全国区块链信息服务备案超千个

CECBC

区块链 金融

登陆!Let's Start Coding

蚂蚁集团移动开发平台 mPaaS

移动开发 mPaaS

饱受毕设摧残计算机系师兄,怒而分享纯净版SSM框架(附源码)

小Q

Java 学习 面试 开发 SSM框架

华为云专家私房课:视频传输技术选型的三大法宝

华为云开发者联盟

音视频 视频 传输

量化交易系统开发、自动对冲策略搭建

薇電13242772558

区块链

快速掌握并发编程---关于乐观锁、悲观锁、可重入锁

田维常

并发编程

电子劳动合同来了 足不出户也能签约

CECBC

社会保险 电子合同

偷师Kubernetes源码,学会怎么用Go实现调度队列

网管

Kubernetes 并发编程 并发控制 Go 语言

【API进阶之路】API带来的微创新,打动投资人鼓励我创业

华为云开发者联盟

学习 视频 API

谈谈项目中主动full gc的一些问题

AI乔治

Java 编程 架构 JVM GC

中国程序员超5000万?一线城市IT岗位已开始饱和过剩?

Java架构师迁哥

美国大选观战感受:用区块链投票吧,少操点心

CECBC

区块链 投票机制

ChatGPT 正确回答代码问题的几率比抛硬币还要差_生成式 AI_Thomas Claburn_InfoQ精选文章