“中文版ChatGPT”之我见

新闻 2023-04-12
4310

目录

大模型重要的是基础能力,训练一开始把中文能力作为目标意义不大。

很多人在体验ChatGPT时都遗憾它似乎对中文世界的知识没有那么熟悉,不太会背古诗,对中国名人张冠李戴,甚至对很多中国广为人知的历史、名著强行胡说八道,而相应的对欧美世界的历史、社会常识就好的多。所以大家都在呼吁中文版ChatGPT在哪里,我自然也有这种期盼,但我个人认为只有做出一个英文能力也超过ChatGPT的模型才可能同时实现中文能力也更好。因为模型的基础能力强吊打一切,语种只是上层表达,如果英文不能超越或持平ChatGPT,单单提升了中文能力的概率极小。

有证据表明大模型学习到的基础能力是超越语言跨越语种的“高级知识”,很多研究论文都有阐述,我这里仅说一些我的直观感受:1、RLHF论文中的训练数据英文占比99%+,西、法、德语还占了剩下的大部分,中文估计就是0.0x%这个级别,效果大家都体验到了,中文和其他小语种能力的提升同样也非常显著,这很强的证明这种训练方法是让模型学到了跨越语种的隐含信息;2、ChatGPT对话模型做了很多防止有害信息、承认自己不知道、尽量公正客观等限制,其中一个方法是预先的prompt提示语,我认为且也有一些蛛丝马迹表明这个prompt提示语只是用英语写的,但很明显它对所有语种都有效了。3、很多人都发现ChatGPT中文回复时偶尔有翻译腔的情况,这固然可能是训练中翻译数据的直接结果,但从宏观上也能看作是“高级知识”跨语种适配的体现。

再回到开始的“中文能力”,其实熟背古诗、对中国历史文化倒背如流只能算是“中文能力”的细枝末节,技术上也不特别困难,国内很多中文训练足够的模型都能做到。但是大家想一想这次ChatGPT火爆的原因可不是能熟背知识,而是能理解提问者意图,然后流畅的生成新得相关文字内容、虽然内容可能是错的,但很少自身矛盾。这对于之前的NLP模型来说可太难了。

举个例子,我曾用ChatGPT改写顾城的现代诗为古诗,当然生成的古诗并不怎么样,但是却能牢牢的扣住原诗内容,绝不跑题,还能明确的告诉它“第三句太现代化,再增加些古风,请重写”,这种交互对于以往所有的计算机程序都是不可想象的。所以真正的中文能力是指:对语言的理解和应用。而不仅是熟知中文知识。

中文的语言数据集需要艰苦卓绝的整理工作

垃圾信息问题,很多人不知道自动生成文本信息的技术在中文互联网早就泛滥成灾,当然只管生成数量完全不在乎质量,比如SEO搜索垃圾生成、水军机器人、电商评论机器人、各文库/知道自动改写、论文防查重“技术”等等,你只需用中文搜索稍不常见的词就能体会到垃圾信息的体量和威力,这些中文信息是完全不能出现在训练数据中的。很不幸我在测试一些国产大模型时都或多或少发现了互联网垃圾体的影子。英文互联网当然也有垃圾问题,但仅从搜索信息来看似乎要好很多。

移动互联网发达的意外之害,中国移动互联网的繁荣成功不可否认,但现在意外的发现这对于中文信息的开放共享是个灾难,各位是不是对“下载App继续阅读”深有体会?还有微信王国的海量各种号,从10几年前就开始各个领域优质用户产生的优质中文数据只有通过移动渠道/登录账号才能访问,还会把原有开放互联网上的信息删除或者加上层层限制。我甚至怀疑目前在互联网上能公开扒取到的语言数据已经不能完整反映中文世界的客观信息。并且对于微信、百度、知乎、小红书、各电商、教育平台等各相对优质数据的所有者,它们能联合起来共享么?

中文标注数据集匮乏,相信很多NLP的长期从业者深有体会。海量数据的自监督训练阶段结束后,那些之前积累的各种人工标注语言数据的监督训练才是画龙点睛那一笔,ChatGPT除了自己请人标注也用了已有的共享数据集。但可惜的是中文里这种数据集太少了。标注工作枯燥乏味而且很难出亮眼成绩,不过是为他人做嫁衣。我们经常羡慕别人重大突破时天才的灵光一闪,但是勤勤恳恳做基础整理工作的老黄牛们同样重要,我们也很缺。

训练中文版ChatGPT的可能正确方式

训练仍然要以英文为主。不得不承认,作为世界语言以及相对开放的互联网环境,英文信息尤其是高质量信息是统治地位,2022年某统计显示互联网上开放信息中文占比仅1.3%,而英文占比63%,其中高质量部分优势更大,比如论文,包括中国人在内的各非英语国家,一旦做出较大科研成果几乎肯定先发英文论文,后续也未必有中文翻译,维基百科、 StackOverflow、Reddit等资源也是中文只能羡慕的存在。而我们获取英文数据可能还更加容易。另外英文本身是和代码及大多外语是同源,而象形单音节的中文略显孤独,这可能也是个问题。总之既然已经证明了英文为主的道路畅通,最理智的做法是先走着。

其次以程序代码为辅,英语为主汉语为辅?不不,第二重要的应该是程序代码,有一些研究者认为ChatGPT展现出了初级推理能力要归功于其使用代码作为语言数据训练,进化出的初级逻辑思维链在中文上也有体现,说实话我并不确信这个推论,但很值得想象。即使此结论不正确,大模型拥有写代码的能力也极其重要,比如使用外部工具,为无限能力扩展提供了接口。 代码数据的重要性对我们不是个好消息,ChatGPT应该用了github汇聚的全世界代码库,包括私有库,我们如何获取高质量的代码数据是个大问题。

顶住诱惑激进清洗数据,中文数据贵精不贵多,GPT3收集训练数据45TB,清洗后570GB仅保留1.2%,中文数据清洗保留比例可能还要少个数量级,很考验数据工程师的心里承受能力,辛辛苦苦收集的数据,你只让用0.0x%?我拍脑袋认为训练集中有3~5%的中文数据就足以改进ChatGPT缺乏中文知识的情况了,甚至在上述推论下,中文也没必要追求体量上超过西班牙语、法语、德语。后续监督、对齐、联网阶段还可以针对中文做优化。

最后声明,我不能算是NLP的实际从业者,因此以上是不负责任没有顾忌的纸上谈兵。

版权声明: 发表于 2023-04-12。
转载请注明:“中文版ChatGPT”之我见 | 非常AI

相关文章