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

还能这么玩?清华给 ChatGPT 做逆向,发现了 ChatGPT 的进化轨迹!

作者 |小戏、Python

立足一个 ChatGPT,现在对大模型的研究简直是百花齐发百家争鸣,用 ChatGPT 做化学实验、给 ChatGPT 做心理测试、诱导 ChatGPT 越狱泄漏隐私、让几个 ChatGPT 形成一个小社会等等不胜枚举。

而最近,清华的研究团队又在大模型研究中另辟蹊径,不仅构建了一个数据集记录 ChatGPT 随时间的“版本迭代”,更是通过逆向分析探索得到了 OpenAI 对 ChatGPT 动的手脚做的改进,推演出了 ChatGPT 的进化轨迹!论文和项目地址如下:

论文题目:

ChatLog: Recording and Analyzing ChatGPT Across Time

论文链接:

https://arxiv.org/pdf/2304.14106.pdf

项目链接:

https://github.com/THU-KEG/ChatLog

各个大模型的研究测试传送门

阿里通义千问传送门:

https://tongyi.aliyun.com

百度文心一言传送门:

https://yiyan.baidu.com

ChatGPT传送门(免墙,可直接测试):

https://yeschat.cn

GPT-4传送门(免墙,可直接测试,遇到浏览器警告点高级/继续访问即可):

https://gpt4test.com

首先让我们来看一张图,其实毋庸置疑,OpenAI 在 ChatGPT 如此庞大的用户基数下,必然会借助这些海量的“优质数据”让 ChatGPT 不断的迭代进化。以 ELI5 数据集(包含很多 Explain Like I am 5 问题的数据集)为例,在 3 月 9 号的 ChatGPT 版本中,ChatGPT 只给出了一个相当简陋的回答,很显然 ChatGPT 在 3 月 9 号还没有完全理解什么是“Explain Like I am 5”,但是在 4 月 9 号时,ChatGPT 已经完成了进化,不仅表达更加生动,甚至还使用了比喻的修辞

显然,一个直觉的问题是“ChatGPT 是沿着什么方向变化的?”,如果可以搞清楚这个问题,不仅是可以满足一下我们的好奇心,更是给 ChatGPT 客观的评估工作带来了方便。但这个问题并不是 OpenAI 会写在文档里供我们即插即用的问题,因而,这篇工作应运而生,总的来说,论文完成了两件事,一是分别构建了一个按日还按月记录 ChatGPT 变化的数据集;二则是利用这个数据集对 ChatGPT 的进化轨迹进行了分析,得出了不少有意思的结论

ChatLog——ChatGPT 进化数据集

关于数据集,作者团队从两个角度出来,一个是构建一个以月份为时间维度的数据集,一个是构建一个以日期为时间维度的数据集。对于按月记录的数据集而言,作者团队从数据集 HC3(一个包含大约两万四千条问题及其对应的人类专家答案和 ChatGPT 答案的数据集) 、Jack of All Trades (一个用于评估 ChatGPT 在25个公共 NLP 数据集上的 25 个不同 NLP 任务性能的数据集)以及一系列其他数据集中抽取了涵盖计算机、数学、金融等不同领域的共 38730 个问题-答案对,每月询问一次 ChatGPT,构成 ChatLog-Monthly。

而为了监测 ChatGPT 每天的变化,论文从 HC3 数据集中随机抽取了1000个问题,从 2023 年 3 月 5 日到 4 月 9 日重复发送给ChatGPT。其中有些问题是开放性的,可能需要 ChatGPT 借助外部知识,而有部分问题是分析性的,主要考验 ChatGPT 的分析能力。总体大约 30% 是“What”类型的问题,30% 是“How”类型的问题,58% 是为“Why”类型的问题,其他类型的问题占 6%。通过在这些问题上 ChatGPT 的表现,可以评估它在多方面的表现,如多领域知识理解、推理、解释等

分析——ChatGPT 的进化轨迹

有了数据集,选取相应评价指标,便可以看出 ChatGPT 随时间的进化轨迹。如下表所示,对比 1 月份的 ChatGPT 在不同任务数据集上的结果,可以看出 New ChatGPT 有了几乎全线的提升

总结来看,对比 1 月,ChatGPT 主要完成了以下的升级:

  1. 在攻击性与垃圾文本分类任务中,New ChatGPT 有了显著的提升,几乎接近现有模型的 SOTA,这表明 ChatGPT 在识别攻击性与垃圾文本的能力方面有了巨大的提升,这种提升很有可能是开放用户的攻击带来的;
  2. 对于需要数学推理的任务,ChatGPT 有了显著的改进,在 MathQA 数据集上的准确率从 71.40% 提高到了 78.00%。

关注推理能力,从下面的图中可以看出,3 月 5 号的 ChatGPT 使用了错误的推理得出来了错误的答案,但是在 4 月份,ChatGPT 的推理能力便完成了升级,已经可以正确的理解问题并加以推导并得到正确的答案。显然,在 ChatGPT 这种进化速度下,如果没有固定 ChatGPT 的时间版本,那么非常有可能因为忽略 ChatGPT 升级这一关键因素而得出错误的评估结果

值得注意的是,在一些依赖先验知识的任务中,ChatGPT 的性能发生了下降,如在 WNLI 数据集上,ChatGPT的准确率从 1 月份的 81.69% 下降到 71.83%。换言之,大量语料的涌入对 ChatGPT 而言有可能并不全然是一件好事,与人类的互动也会增加 ChatGPT 的机器幻觉

而对 ChatLog-Daily 而言,这种变化可以被更加细致的可视化如下(后缀 p,r,f 分别表示精确度,召回率和 F1 分数):

可以看到,ChatGPT 生成的答案正在变得更加简洁,在追求精度与广度的平衡,以获得更高的可读性。但是,单纯分析这种准确率召回率,其实没法真正透视 OpenAI 到底做了什么,这些指标也无法分析出为什么时隔一个月,ChatGPT 便学会用比喻来解释问题了。因此,作者在这个基础上更进一步做了全面的特征提取,具体而言,作者团队将 n n n 个 query 在 k k k 天内持续丢给 ChatGPT,得到了 n ∗ k n*k nk 维的回复矩阵 R R R,再对 R R R 中每天的回复提取 m m m 个特征(情感特征、知识特征、语言特征),构成集合 F F F 。如下图所示,作者利用对应不同的工具,提取出了知识、语言、情感等总计 265 个的丰富特征。

根据这些特征,作者探索了特征与对应得分之间的关系,可以看到,语义特征与召回率正相关与准确率负相关,结合前面 ChatLog-Daily 的分析结果,可以看出 OpenAI 在语义丰富度方面加强了 ChatGPT。

那么什么在快速迭代中,ChatGPT 的什么特征是稳定的呢?论文定义了一个特征稳定的评估指标——变异系数,公式如下:

μ h = ∑ i = 1 n ∑ j = 1 k s i j n ∗ k σ h = ∑ i = 1 n ∑ j = 1 k ( s i j − ∑ l = 1 k s i l k ) 2 n ∗ k c h = σ h μ h \begin{gathered} \mu_h=\frac{\sum_{i=1}^n \sum_{j=1}^k s_{i j}}{n * k} \\ \sigma_h=\frac{\sum_{i=1}^n \sum_{j=1}^k\left(s_{i j}-\frac{\sum_{l=1}^k s_{i l}}{k}\right)^2}{n * k} \\ c_h=\frac{\sigma_h}{\mu_h} \end{gathered} μh=nki=1nj=1ksijσh=nki=1nj=1k(sijkl=1ksil)2ch=μhσh

其中, h ∈ { 1 , . . . , m } h \in \{1,...,m\} h{1,...,m} 为特征的索引。通过在 ChatLog-Daily 上进行测试,可以看到最稳定的指标是可读性与语义清晰度 。也就是说,这几个指标是 ChatGPT 做的最好的核心竞争力。

总结与讨论

总的来说,这篇论文从 ChatGPT 时间变化性这个角度切入去深入的了解了 ChatGPT 所关注的特征,并且也关注到了 ChatGPT 特征的动态变化,这为许多基于 ChatGPT 的探索性研究铺了一条方便的道路,也或多或少规避了一些因为 ChatGPT 的进化而不应该得出的错误结论。

或许,这样对 ChatGPT 进化数据集的记录与开源,也可以为我们谱写大模型的史书留下了殷实的资料库吧

本文由mdnice多平台发布


http://www.kler.cn/a/17793.html

相关文章:

  • 如何使用ffmpeg命令行进行录屏
  • 【OceanBase 诊断调优】—— ocp上针对OB租户CPU消耗计算逻辑
  • Spark:不能创建Managed表,External表已存在...
  • 【C++】一种针对代码的连续条件检查方案,累计布尔结果
  • Pycharm PyQt5 环境搭建创建第一个Hello程序
  • 94个属于一区且接受医工交叉领域投稿的期刊汇总|个人观点·24-11-13
  • 记一次产线打印json导致的redis连接超时
  • 【算法】Check If Word Is Valid After Substitutions 检查替换后的词是否有效
  • MySQL高频面试题
  • 多通道振弦传感器无线采集仪通过短信和FTP文件修改参数
  • 设计原则之【接口隔离原则】
  • 22.Java多线程
  • SpreadJS 16.1 EN + SpreadJS 16.1 CN Crack
  • 【Linux】linux进程间通信netlink socket(用户与内核通信)
  • PBDB Data Service:Special parameters(特殊参数)
  • 公司新来的00后真是卷王,工作没2年,跳槽到我们公司起薪18K都快接近我了
  • JAVA原生语言开发多学校Saas模式校园管理系统
  • LT8471IFE#PBF-ASEMI代理亚德诺LT8471IFE#PBF原厂芯片
  • 文件操作和IO
  • 机器视觉工程师,听我一句劝,别去外包,干了三年,废了....对女人没了兴趣
  • 【Unity编辑器】拓展Project视图
  • 复兴号列车司机室
  • Midjourney之logo设计(建议收藏)
  • 杂乱之Android的字体相关类Typeface
  • 一道2023年数学分析真题
  • 【Linux】Linux安装Nexus(图文解说详细版)