吴恩达ChatGPT课爆火:AI放弃了倒写单词,但理解了整个世界

推荐使用ChatGPT4.0中文网,国内可直接访问:www.chatgp4.com

没想到时至今日,ChatGPT竟然还会犯如此低级的错误?

吴恩达大神在最近的一节课上就指出了这一问题:ChatGPT无法正确反转单词!例如,当要求它反转“lollipop”这个词时,输出却是“pilollol”,完全混乱不堪。

这一现象让人感到意外,网友们在Reddit上对此热议不已,帖子迅速获得了6k的热度。

而且,这并不是个别现象,很多网友发现ChatGPT确实无法完成这个任务,我们的亲测结果也同样如此。

此外,包括Bard、Bing和文心一言等其他产品也表现不佳。

有人随即吐槽,ChatGPT在处理这类简单单词任务时的表现简直糟糕,甚至玩之前火爆的文字游戏Wordle也从未答对过。

那么,这到底是为什么呢?

关键在于Token

造成这一现象的原因在于token。Token是文本中最常见的字符序列,而大型模型都是利用token来处理文本。Token可以是一个完整的单词,也可以是单词的一个片段。大型模型了解这些token之间的统计关系,并擅长生成下一个token。

因此,在处理单词反转这个简单任务时,它可能仅仅是将每个token翻转,而不是对应的字母。

在中文语境中,这一点更为明显:一个词可能是一个token,也可能是一个字。

为了更直观地理解,有人尝试分析ChatGPT的推理过程。OpenAI甚至推出了GPT-3的Tokenizer,展示了其处理“lollipop”这个词时的理解方式,它将“lollipop”分为三个部分:I、oll、ipop。

根据这一经验,形成了一些不成文的“法则”:

  • 1个token≈4个英文字符≈0.75个单词;
  • 100个token≈75个单词;
  • 1-2句话≈30个token;
  • 一段话≈100个token,1500个单词≈2048个token。

而中文所需的token数量,通常是英文的1.2到2.7倍。

token到单词的比例越高,处理的成本也越高。因此,中文的token化成本通常要高于英文。

可以这样理解,token是大型模型理解和认识人类现实世界的方式。它不仅简单,还显著降低了内存和时间的复杂性。

但将单词进行token化会导致模型难以学习到有意义的输入表示,比如它可能不能理解单词的真实含义。

为了应对这一问题,Transformers曾进行了优化。例如,一个复杂、不常见的单词会被拆分为一个有意义的token和一个独立token。比如“annoyingly”被拆分为“annoying”和“ly”,前者保留了语义,后者则是频繁出现的部分。

这种做法使得ChatGPT及其他大型模型能够更好地理解人类的语言。

至于无法处理单词反转这样的小任务,自然也有解决之道。

最直接的方法是,先把单词拆分开来。

或者可以让ChatGPT一步一步来,先对每个字母进行token化。

此外,还可以让它编写一个反转字母的程序,然后查看程序的输出。(笑)

不过,使用GPT-4进行测试时,它并没有这样的问题。

总结

总之,token是AI理解自然语言的基础,而作为AI理解人类语言的桥梁,token的重要性越来越显著。它已经成为AI模型性能优劣的关键决定因素,并且也是大模型的计费标准。

就如前文所提,token能够方便模型捕捉更细粒度的语义信息,如词义、词序和语法结构。token在序列建模任务中的顺序和位置至关重要,模型只能在准确了解每个token在序列中的位置和上下文的情况下,才能做出合理的预测和输出。

因此,token的质量和数量对模型效果具有直接影响。近年来,越来越多的大型模型在发布时会强调token数量,例如谷歌的PaLM 2提到使用了3.6万亿个token。行业内的领军人物也广泛强调token的重要性。

今年从特斯拉跳槽到OpenAI的AI科学家安德烈·卡帕斯(Andrej Karpathy)在演讲中提到,更多的token可以让模型更好地思考,并且模型的性能并非仅由参数规模决定。例如,LLaMA的参数规模远小于GPT-3(65B vs 175B),但因其训练使用了更多token(1.4T vs 300B),因此LLaMA表现得更为强大。

凭借对模型性能的直接影响,token还成为AI模型的计费标准。以OpenAI的定价为例,他们以每千个token为单位进行计费,而不同模型和不同类型的token价格各异。

总之,进入AI大模型领域后,就会发现token是一个不可避免的重要知识点。至于token在中文世界的准确翻译,目前仍未完全达成一致。直译为“令牌”总显得有些怪异,而GPT-4则认为“词元”或“标记”较为合适,你觉得呢?

滚动至顶部