王树义,张庆薇
2022年11月30日,OpenAI发布名为ChatGPT的模型研究预览版,它可以用对话的方式与用户进行交互。ChatGPT模型使用人类反馈的强化学习(Reinforcement Learning from Human Feedback,RLHF)进行训练[1]。训练方法与OpenAI早前发布的InstructGPT类似,但数据收集设置略有不同,OpenAI使用有监督的微调方法,基于GPT-3.5系列的模型训练了一个初始模型,并且用人工AI训练师对话形式,混合InstructGPT数据集撰写对话格式的回应。对于备选答案,由人工AI训练师排名提供增强学习的奖励[2]。ChatGPT自发布以来,非常受欢迎,仅5天就吸引超过100万用户[3],上市第一个月就拥有5,700万活跃用户[4],估计发布后两个月内的月活跃用户达到1亿[5]。ChatGPT的广泛普及使得OpenAI的价值增长到了290亿美元[6]。
ChatGPT的火爆伴随着一系列对它的讨论。人们津津乐道于它通过图灵测试[7],在明尼苏达大学通过法律考试,并在加州大学伯克利分校的另一场考试中获得优异成绩[8]。人们尝试用它写简历和求职信,解释复杂的话题,提供恋爱建议[9]。在广泛的使用中,用户们逐渐发现ChatGPT的许多问题,如对话容量限制、成为抄袭和作弊利器、存在偏见、歧视以及准确性等问题[10]。尽管大众对ChatGPT的讨论非常激烈和丰富多彩,但作为科研人员,更应该严肃审视:ChatGPT以及相似模型和服务的出现会给学界带来什么样的变化?在变化出现的时候,该如何抓住机遇并避免负面影响,从而获得科研竞争优势?本文通过例证来尝试初步回答上述问题。
NLG(Neural Language Generation,自然语言生成)是指从非语言表示生成人类可以理解的文本的技术,应用广泛,包括机器翻译、对话系统、文本摘要等[11]。目前主要的NLG模型包括Transformer、GPT-1/2/3、BERT、XLM、BART、Codex等。其中,Transformer模型基于Attention机制,在质量和用时上都比之前的模型有所提升[12];GPT模型是使用大量数据训练好的基于Transformer结构的生成型预训练变换器模型,能在常识推理、问题回答、语义蕴含的语言场景中取得改进[13];BERT引入MLM和NSP训练方法,能融合上下文[14];XLM模型通过训练跨语言信息,可以用在训练语料少的语言上学习到的信息[15]。2020年OpenAI发布的GPT-3模型参数达到1,750亿个,通过与模型的文本互动来指定任务,性能强大[16]。2021年OpenAI发布基于GPT-3的Codex模型,能从自然语言文件串中产生功能正确的代码[17]。2022年OpenAI发布基于GPT-3的InstructGPT模型,加入了人类评价及反馈数据,能遵循人类指令,并可以泛化到没有见过的任务[1]。ChatGPT是InstructGPT模型的兄弟模型,可以遵循提示中的指令并提供详细的响应,回答遵循人类价值观[2]。
AIGC(AI Generated Content)是指利用人工智能技术来生成内容的技术,包括文本到文本的语言模型、文本到图像的生成模型、从图像生成文本等。其中,谷歌发布的LaMDA是基于Transformer的用于对话的语言模型,利用外部知识源进行对话,达到接近人类水平的对话质量[18];MetaAI推出的PEER是可以模拟人类写作过程的文本生成模型[19];OpenAI发布的Codex和Deep Mind的AlphaCode是用于从文本生成代码的生成模型[17,20]。在图像生成方面,GauGAN2和DALL·E 2分别是可以生成风景图像和从自然语言的描述生成现实图像的生成模型,基于GAN和CLIP模型,使用对比学习训练[21-22];Midjourney和Stable Diffusion是从文本到图像的AI生成模型,而谷歌的Muse则实现了最先进的文本转换为图像的生成性能[23]。另外,Flamingo是一个视觉语言模型,能将图像、视频和文本作为提示输出相关语言[24];VisualGPT是OpenAI推出的从图像到文本的生成模型[25]。
人工智能内容产生过程,难以避免遇到各种问题,如偏见和歧视。由于训练数据集可能存在偏见和歧视,ChatGPT可能会学习到这些偏见或歧视,因此需要采用多种方法对数据进行筛选和清洗,或使用公平性算法来纠正模型偏差。总体而言,ChatGPT的公平性取决于它的训练数据集以及使用它时的上下文和提问方式[16]。另外,还有算力挑战,ChatGPT依赖大量算力来训练海量文本数据,以此学习语言模式和知识。算力需求日益增长,致使这一领域存在着技术垄断,会对算力持续提升、大数据的训练等进一步行动产生影响。OpenAI为了应对ChatGPT的高需求,采取排队系统和流量整形等措施[26]。
笔者梳理相关成果,尚未发现详细分析与论述ChatGPT对科研工作者影响的研究论文。因此,本文从ChatGPT给科研工作者带来的机遇与挑战两个方面作为切入点,展开论述。
ChatGPT是一种AI工程化的成功实践。AI工程化专注于开发工具、系统和流程,使得人工智能能够应用于现实世界的领域[27]。它使得普通人可以应用最新的自然语言生成与对话技术,完成很多曾经需要技术门槛才能完成的工作。
数据科学研究范式已经深刻影响了许多学科。许多研究需要通过不同形式来掌握足够的数据支持。通常研究数据获取的途径主要有3种:开放数据集、API调用和爬虫(Web Scrapper)。Python语言是信息管理学科中进行数据分析最常用的编程语言。以前用户必须掌握Python语言的基础语法,了解Python环境的使用,才能编写程序进行API调用或利用爬虫搜集数据。而有了ChatGPT,用户可以通过自然语言对话形式,给出要求,人工智能会直接给出源代码,并复制到实验环境,从而获取所需数据。图1演示了研究者打算爬取某个网页上的信息,于是可以通过浏览器的Inspector功能查找对应的区域,此处找到的是类别sdyw_ul。
图1 通过浏览器定位爬取范围
有了对应的爬取位置,用户就可以在ChatGPT里直接提出要求:“我想获得sdyw_ul类下的链接和标题。”(I want to get the links and titles under the class“sdyw_ul”)。然后ChatGPT自动编写程序,结果如图2所示。
图2 ChatGPT自动编程爬虫
如果用户对程序运行结果不满意,可以通过进一步对话交流,让ChatGPT对程序源代码进行修改。例如,可以通过对话让ChatGPT把数据输出的方式改成CSV文件。ChatGPT更新代码,返回结果如图3所示。
图3 ChatGPT爬虫编程修改输出格式
因为ChatGPT拥有对多轮对话的记忆力,所以每次只需要提出进一步的要求,就能不断让ChatGPT编写符合用户目标的程序,从而完成预期目标。最终,用户可以仅通过自然语言交互和拷贝ChatGPT生成结果代码并运行的方式,把该网站上全部感兴趣的内容,存入Excel文件,如图4所示。
图4 ChatGPT生成爬虫的最终运行结果
ChatGPT辅助编程不只体现在数据采集环节。ChatGPT的基础模型是“GPT-3.5”,底层基础模型是在大量代码上训练的结果,称为“code-davinci-002”[28]。因此,ChatGPT见识过大量产生于2021年第四季度之前的代码段,且对代码上下文补全有较强的能力。在此之前的数据分析甚至是机器学习模型训练工作,都可以通过自然语言对话方式交给ChatGPT来进行。例如,在下面的例子里,用户尝试让ChatGPT采用LDA对一系列英文新闻文本做出主题挖掘,提出的自然语言指令和ChatGPT的应答如图5所示。用户只需将ChatGPT给出的代码复制运行,对应生成的LDA主题聚类可视化结果如图6所示。如图可见,原本需要一定的编程基础才能完成的机器学习乃至数据可视化任务,都可以通过和ChatGPT自然语言对话方式来完成。如果用户觉得结果有不满意的地方,可以随时跟ChatGPT交互,从而做出订正。例如,原本的代码中,ChatGPT默认为笔者采用中文停用词,并且还使用jieba软件包进行分词,可以要求ChatGPT改用英语停用词进行处理,ChatGPT会立即根据新的要求变动,给出更新后的代码,如图7所示。
图5 ChatGPT编写LDA主题挖掘代码
图6 ChatGPT辅助编程生成LDA主题聚类可视化结果
图7 要求ChatGPT改用英文停用词表
在这个例子中,ChatGPT改用nltk软件包,使用内置的英文停用词表,可以做出更加符合要求的结果。不仅如此,在大部分ChatGPT生成的代码中,不仅会有详细的注释,代码完成后,ChatGPT还会给出相应的解释。例如,在这个更新的代码中,笔者使用NLTK包中的“stopwords”语料库来获得“stopwords.w ords(‘english’)”方法,还使用‘word_tokenize’方法来对文本进行标记(原文为:in this updated code,we use the‘stopwords’corpus from the NLTK package to get the‘stopw ords.words(‘english’)’method.we also use the‘word_tokenize’method to tokenize the text.)。这对于了解代码实际的功用,并且在其上进行修改迭代甚至是查找错误,都非常有帮助。对于想学习编程的入门级研究人员,也会起到显著的帮助作用。
做研究需要阅读文献。在信息资源管理学科,期刊数量众多,而且外文期刊所占比例很大,每年都涌现出很多新文章需要阅读。及时对文章重点进行把握,有利于在科研进度上保持领先。但是,众多的文献阅读、消化、理解,尤其是外文文献阅读,也对本领域的研究者构成了较大的挑战。有了ChatGPT,研究者可以将外文论文中的内容直接输入进来,然后利用提问形式,要求ChatGPT自动提炼重点内容。以描述ChatGPT同类模型InstrctGPT的论文Training language models to follow instructions with human feedback[1]中的3.5节“Models”为例,输入其中主体部分到ChatGPT,给出的提示词是“请用中文从下面资料中提炼出至少三个重点”,输入内容如图8所示,图9是ChatGPT给出的答案。可见ChatGPT可以正确理解用户的要求,并且对内容进行了正确的自动总结。
图8 ChatGPT自动提炼重点输入部分
图9 ChatGPT自动提炼重点输出部分
在模型学习训练集材料中,ChatGPT已经接触过不少专有名词,所以甚至可以不进行任何输入,直接让ChatGPT帮助解释一些专有名词。例如,图10里答案中出现“深度强化学习”,可以让ChatGPT尝试讲解其含义,输入的提示词为“什么是‘深度强化学习’,在上述文稿里面的作用是什么?”,图10是ChatGPT给出的回答。
可以对图10中出现的新专有名词继续提问。例如,“赌徒困境”是什么?ChatGPT的回答如图11所示。如果对ChatGPT总结的内容不放心,还可以让ChatGPT找到与专有名词对应的原文文本。图12为ChatGPT自动找出的“赌徒困境”原始文本。通过ChatGPT展示原文的文本,研究者可以加以印证,证明ChatGPT总结没有偏离原文的叙述。
图10 解释深度强化学习
图11 ChatGPT解释赌徒困境
图12 查找专有名词对应的原始文本
另外,用户还可以对文本提出问题,ChatGPT会尽全力尝试解答。例如,示例论文这样的讲述模型训练方法的作品,研究者可能更感兴趣一种模型获取反馈与提升改进的流程,并且用它和其他同类模型进行比对,所以可以问出一个非常综合性的问题:“模型是如何获得反馈和改进,达到训练目标的?”图13是ChatGPT的回答。可以看到,ChatGPT对文本语义理解非常准确,而且还用中文进行了流畅自然的翻译。特别地,对于文中出现的专有名词,如“SFT”,都用英文全称和缩写加以注明。
图13 ChatGPT对阅读材料的综合性问题解答
因为ChatGPT具有多轮对话的记忆功能,用户甚至可以将多篇论文的主体部分分别输入,然后加以比对。这样一来,读论文的工作就从“读一篇”变成“读一片”,ChatGPT的汇总可以快速提示研究者某一领域多篇重要文献的特点与异同,有助于研究者快速了解领域的发展与演化过程。在从前,一个研究团队用若干天才能做出的文献梳理工作,ChatGPT可以在很短时间内高效率完成。
写作是沟通科研工作成果的过程,必不可少。但以往在写作环节,科研工作者往往需要花费很大的心力。因为不仅要详细描述和展示科研成果,也要充分考量行文的风格、措辞、举例等。特别是多人合作写文章,往往还要第一作者最终统合稿件的不同部分,重新用统一的风格撰写全文。ChatGPT的基础就是大语言模型,最善于学习语言风格。研究者可以在草稿里摆出主要的事实而不需要考虑语序、语法等因素,由ChatGPT来帮助写作、润色。用户可以将自己之前写作的文章输入ChatGPT中,然后如图14要求ChatGPT提取文章的风格,之后对新的文本,可以调用存储的文章风格(本例中为“paper style”)进行风格转化与改写。例如,图15中演示的例子是本文第一作者对第二作者提供材料的风格改写,ChatGPT对文本的语义加以保留,但是在表现形式上进行了调整变化。统一的风格样式可以提升读者阅读的流畅性。
图14 ChatGPT学习文本风格并存储
图15 ChatGPT以存储的风格改写文本示例
在写作过程中,ChatGPT也能帮助作者扩展思路,联想到合适的例子。例如,当写作过程中发现当前使用的例子作为证据并不足够充分和贴切,需要找到更好的例证,在过去,如果用户需要找到相关信息,那就必须进入搜索引擎输入关键词,然后在海量的结果中筛选适合的内容;然而现在用户只需告诉ChatGPT“补充例子,论证上面的论断”,就可以得到相关的信息,如图16所示。虽然图16 ChatGPT提供的例子可能无法直接原文使用,但它至少对作者会有启发。例如,人脸识别已成为“日用品”,用户几乎每天都要使用这种方式验证付款,但作者或许没有第一时间想到将其作为“AI工程化”的例子。如果用户认为图16提供的例子不够好,可以接着要求ChatGPT提供其他例子,ChatGPT返回的结果如图17所示。这样一来,原本在写作中常见而琐碎的技术性问题就被ChatGPT的人工智能功能解决,显著提升写作效率。
图16 ChatGPT补充例子证明论断
图17 要求ChatGPT继续补充例证
上文讨论了ChatGPT给研究者带来的机遇。通过辅助编程、辅助阅读与辅助写作,为研究者赋能,大幅提升研究工作效率,缩短研究产生成果的时间周期。但是,ChatGPT的出现也给研究者带来挑战和困扰,如果使用不当,甚至会给研究过程带来灾难性的后果。下文从回答的真实性、数据污染,以及隐私和数据安全角度分别论述。
ChatGPT的基础是一个生成式语言模型,它根据概率分布关系生成最符合要求的语言,但无法保证生成内容的真实性和准确性。
一些研究者在使用ChatGPT时没有意识到这一点,他们惊讶于ChatGPT回答问题的精准性,并直接采纳其答案。对于前文列举的编程功能,这个问题并不严重,因为程序编码是否准确有客观的评价标准;但对于阅读和写作辅助功能,则可能会因缺乏足够的检验依据而导致研究者采纳错误的答案。以前文展示过的ChatGPT举例功能来说,作者曾要求ChatGPT对“人工智能工程化”举出例证,结果收到的是图18这样的回答,回答中的疏漏非常明显:DALLE究竟是由Facebook还是OpenAI推出?ChatGPT给出的两个例子自相矛盾。不难发现,即便对答案的真实性缺乏把握,ChatGPT回答时语气却非常自信。如果研究者在使用ChatGPT生成答案时不进行取舍,将其作为内容的组成部分,发表论文或者出版书籍后,难免遇到尴尬情况。因此在选用ChatGPT的答案时,研究者应该保持审慎的态度。
图18 ChatGPT的错误回答
ChatGPT的广泛使用使得很多未经思考或验证的内容大量产生。据Intelligent.com报道,被调查的大学生中,至少有三分之一采用ChatGPT来撰写作业的答案[29]。ChatGPT更是被广泛应用于问答网站的答案生产,且大量充斥于社交媒体。虚假信息除直接影响受众之外,这些海量产生的低质量信息也会造成互联网数据的污染。这就意味着未来的人工智能模型,在从互联网获取大规模公开语料时,会吸纳大量ChatGPT生成内容。如果不能加以甄别,这些数据将深刻影响未来模型训练数据的质量。人工智能需要从人类产生的文本学习语言的规律。如此多的人工生成数据涌入训练集,不仅不会对模型能力带来提升,还可能混入更多噪声,导致回答问题的准确度降低。这会反过来影响人类的信息获取与知识传承。OpenAI指出,ChatGPT的不正当使用会对教育者、家长、记者、虚假信息研究人员和其他群体产生影响。为此,OpenAI官方在2023年1月推出ChatGPT生成文本的检测分类器[30]。使用的演示效果(采用官网自带的人工输入文本)如图19所示。
图19 OpenAI官方推出的ChatGPT检测分类器
然而这种分类器还存在着非常多的问题。OpenAI官方建议不要将其作为主要决策工具,而应作为确定文本来源的辅助手段。对短文本(少于1,000个字符),OpenAI提供的ChatGPT分类器不可靠。即使是较长文本,有时也会被分类器错误标记。甚至人工编写的文本也时常会被分类器错误地标记为由AI编写,而且检测器对于错误的检测结果非常自信。OpenAI建议仅将分类器用于英文文本,在其他语言上分类器表现要差得多。对于代码,该分类器也不可靠。另外,它无法可靠地识别有规律的可预测的文本。官方给出的例子是“包含前1000个质数列表是由AI还是人类编写的,因为正确答案总是相同的”。AI编写的文本通过编辑可以规避分类器识别。OpenAI提供的分类器能够应对一定程度的改写,但对于改写较多的情况则不能准确识别。
ChatGPT带来的另外一个挑战,就是隐私与数据安全问题。
当用户第一次注册并开启ChatGPT时,会看到有关数据收集和隐私保护的提示:“对话可能会被人工智能培训师审查,以改善系统。请不要在对话中分享任何敏感信息。”在用户注册前提示用户不要输入隐私信息。
许多人将ChatGPT视为成熟的产品来使用,并认为它保护用户隐私是理所当然的事情。然而事实并非如此。ChatGPT模型建立在GPT3.5版本之上,使用了人工参与的增强学习。每个“研究预览版”的ChatGPT用户都是OpenAI的免费测试员。
如果用户输入的内容包含敏感信息,如银行卡号,则可能会对用户的财务和金融安全造成影响。而如果输入手机号、住址等信息,则可能会带来人身安全的隐患。
对研究者来说,在输入原创性想法时也要三思而行。尽管ChatGPT并没有主动剽窃用户想法的意图,但用户输入的内容都会对模型造成影响。如果恰巧有其他用户对同一研究方向感兴趣,前面研究者输入的想法可能会作为答案的一部分启发后者。另外,根据OpenAI官方提示,ChatGPT人工训练员(AI trainers)也有可能查看对话信息,以改进模型。
从学术整体进步的角度来看,这种信息加速传播共享有利于研究进展速度。但对研究者个体来说,其利益可能会受到潜在的威胁。
综上所述,ChatGPT的挑战主要分为回答真实性、数据污染与隐私和安全等方面。面对ChatGPT带来的挑战,研究者可以通过以下对策尽量避免潜在的损失。
第一,针对回答的真实性问题,建议研究者时刻警醒,不要轻易相信ChatGPT提供的答案。即便对看似合理的答案内容,在正式采纳和使用前,也需要找到源头信息进行验证。
第二,针对数据污染问题,建议研究者采用OpenAI官方提供的ChatGPT生成文本检测工具对重要来源数据进行抽样检测。在构建大规模研究数据集时,尽量避免采用开放式问答社区2022年12月之后的回答,以避免噪声混入。
第三,对于隐私和安全问题,建议研究者与ChatGPT对话过程中,避免暴露个人隐私与所在机构的敏感信息。对于研究意图和想法,如果无法绕开,尽量分散在不同对话中进行任务处理,避免被人工训练员在同一对话中大量获取相关信息。
OpenAI的对话机器人模型ChatGPT对科研工作者的外部环境造成了显著变化,为提高编程、阅读和写作效率带来了机遇,但也带来了回答真实性、数据污染和隐私安全等挑战。为了敏感地抓住ChatGPT的特点,创造竞争优势,科研工作者需要认真思考并采取行动。通过本文的讨论,读者可以看到ChatGPT对科研工作的赋能意义十分明显,合理利用能够大幅提升工作效率。而针对ChatGPT给科研工作者带来的挑战,本文提出了对策,如在使用ChatGPT生成的答案时需要进行谨慎评估,同时需要利用技术和方法来应对数据污染和隐私安全问题。总之,科研工作者也需要不断学习和更新自己的技能,以更好地适应这个新的科研环境。
ChatGPT出现时间不久且快速迭代,也有许多竞品宣布会相继在近期推出。本文受到当前写作时间点的客观局限,无法对近期和远期即将出现的产品或服务趋势做出准确预测。本文写作时,尚未发现与ChatGPT实力相当的真正竞品,因此研究对象比较单一,只涉及ChatGPT自身。团队后续会在新的同类产品出现后加以深入对比研究,为科研工作者提供更加符合本土化需求的分析结果与建议。