#分词器

宝玉
12小时前
AI 大神Andrej Karpathy 对 DeepSeek 那篇 DeepSeek-OCR 的论文评价很高,你可能以为他会说:“哇,这个OCR模型真厉害,识别率又提升了!” 但他没有。 相反,他几乎是挥了挥手说:“它是个不错的OCR模型,但这不重要。” 真正让他兴奋的,是这篇论文引出的一个更具颠覆性的想法:我们是不是从一开始就喂错“语料”给AI了? Karpathy的核心观点是:也许,大型语言模型(LLM)的输入端,根本就不应该是“文本”(Text),而应该永远是“像素”(Pixels)。 这个想法听起来有点绕。我们明明有纯文本,为什么非要先把它“渲染”成一张图片,再喂给AI去看呢? Karpathy给出的理由是这样的: 1. 首先,这是个效率问题。 我们现在用“文本”喂AI,是通过一个叫“Tokenizer”(分词器)的东西,把句子切成一个个“词元”(Token)。比如“Hello, world!”可能被切成 ["Hello", ",", " world", "!"]。 问题是,这种方式可能很“浪费”。 而DeepSeek-OCR这篇论文无意中提供了一个佐证:它证明了,AI可以只用100个“视觉词元”(Vision Tokens),就高精度地“解压缩”出包含1000个“文本词元”的原文内容。 这就像,你给AI的不是一长串啰嗦的文字,而是一小块高密度的“信息压缩饼干”(图片)。AI“吃”下去(处理)的上下文窗口更短,效率自然更高。 2. 信息更“保真”,不再丢失细节 想象一下,你让AI帮你阅读一个网页。 现在的“文本”输入方式,就像是你通过电话把网页内容念给AI听。所有加粗、颜色、字体大小、排版布局……这些视觉信息全都丢失了。 而“像素”输入方式,就像是你直接截了一张图发给AI。 哪个信息更全?不言而喻。 Karpathy认为,像素是一个“信息流更广”的输入方式。它不仅能处理纯文本,还能自然地理解文本的样式(粗体、颜色),甚至页面上任意的图表和图像。 3. 绕开AI 分词器 前面两点只是铺垫,Karpathy真正的“怨念”在于:他想彻底干掉“分词器”(Tokenizer)。 他直言不讳地“炮轰”: > “我必须再说一次我有多讨厌分词器。分词器是丑陋的、分离的、非端到端的。它‘进口’了所有Unicode编码、字节编码的丑陋之处,继承了大量历史包袱,还带来了安全/越狱风险……它必须被淘汰。” 为什么他这么恨分词器? 分词器就像是AI的“嘴替”和“眼替”,它强行介入在“原始文本”和“AI大脑”之间。这个“中间商”不仅笨拙,而且会扭曲信息。 Karpathy举了个绝妙的例子:一个笑脸表情符号“😀”。 - 通过“分词器”,AI看到的不是一张“笑脸”,而是一个奇特的内部代码,比如 [tok482]。AI无法利用它在看图时学到的关于“人脸”和“微笑”的知识(迁移学习)来理解这个符号。 - 但如果输入的是一张包含“😀”的图片,AI的“视觉”部分会立刻认出:哦,这是一张微笑的脸。 哪个更符合直觉?哪个更智能? 像素输入,让AI得以“眼见为实”。 4. 重新定义AI的“输入”与“输出” Karpathy的设想是,未来的AI模型,其“输入端”(用户提问)应该只接收图像(像素),而“输出端”(AI回答)则可以保持为文本。 为什么?因为“看懂一张图”(视觉到文本)的任务,远比“画出一张逼真的图”(文本到视觉)要容易得多,也实用得多。 这种“输入用眼(像素),输出用嘴(文本)”的架构,也天然契合了AI处理信息的两种模式: - 输入(Encoding):像人一样,一口气看完整个页面(图片),全盘理解(即双向注意力)。 - 输出(Decoding):像人一样,一个词一个词地往外说(即自回归)。 所以,DeepSeek-OCR这篇论文的真正价值,不在于它提供了一个多好的OCR工具,而在于它充当了一次“概念验证”(Proof-of-Concept)。 它用实验数据证明了:用“看图”的方式来“读书”,是完全可行的,而且可能效率更高。 这不仅仅是“文本到文本”(Text-to-Text)任务变成了“视觉到文本”(Vision-to-Text)任务,它暗示了一个更根本的转变——AI的主要信息入口,正在从“语言”转向“视觉”。 难怪 Karpathy 最后会说,他现在“手很痒”,很想去搞一个“纯图像输入”的聊天机器人了。这个小小的OCR研究,可能真的撬动了一个大大的未来。