Sebastian Raschka(LLMs-from-scratch的作者)对 DeepSeek-OCR 的评论:
-------------------
DeepSeek 终于发布了新的模型和论文。由于这次发布的 DeepSeek-OCR 与大家的预期有些不同,而且 DeepSeek 发布的内容通常都很重磅,所以我想简单解释一下这到底是怎么回事。
简而言之,他们探索了视觉编码器(vision encoders)如何能提升大语言模型处理和压缩文本信息的效率。其核心发现是:将文本渲染成图像再输入给模型,比直接处理文本能实现更高效的压缩。
我的第一直觉是,这听起来效率极低,效果应该不如使用文本分词器(text tokenizers)或像 Byte Latent Transformer 这样的替代方案来准备输入。这让我想起了多年前看到的一项研究,研究人员将 3D 分子表示为 3D 输入或 2D 图像,然后送入卷积神经网络,而不是使用图神经网络。这种方法本应效果不佳,且容易过拟合。
那么,在 DeepSeek-OCR 这个案例中,为什么要去尝试这种方法呢?我想,最初可能只是出于好奇,但后来或许演变成了一个关于大语言模型长上下文扩展的有趣想法,即如何利用vision tokens和表示来降低成本。(人们常说“一图胜千言”,但谁能想到,一张文字的图片竟然能比 1000 个单词本身更高效地传达信息!)
无论如何,事实证明 DeepSeek-OCR 这种方法效率惊人地高。他们特别发现,在固定的 97% 长上下文解码精确度下(即模型将信息压缩到潜在表示中并重构的能力),OCR 版本所需的视觉令牌数量比文本令牌少了 10 倍。换句话说,OCR 版本的压缩效率比文本版本高出 10 倍。
它与其他视觉语言大模型(VLLM)架构有何不同?
1️⃣他们没有使用单一的 ViT 作为编码器,而是通过一个巧妙的 16 倍卷积压缩器来融合局部和全局的视觉特征(这可以在内存和令牌数量方面高效处理高分辨率输入)。
2️⃣据我所知,他们是首个使用专家混合模型(MoE)作为解码器的团队。
我认为这是一个有趣且令人耳目一新的方法,其出人意料之处在于它效果非常好。 然而,我并不认为文本的视觉表示能解决大语言模型的局限性。此外,虽然像 BPE 这样的文本分词器常被人诟病,但图像表示同样麻烦(需要处理宽高比、分辨率、裁剪、颜色强度变化、亮度等级等问题)。尽管如此,这仍然是一个有趣的想法。另外,如果这种方法比处理普通黑白文本更高效,我很好奇当给代码加上语法高亮颜色后,压缩比会是怎样的。
关于代码,这可能是一种存储上下文信息的有趣替代方案,因为在传统分词器中,空格和子词切分(subword tokenization)仍然是挑战。(尤其是在处理包含大量自定义变量名的代码时,这些变量名可能不在词汇表中,必须被拆分成许多单独的子词令牌。)
总的来说,将文本编码成图像仍然是一个非常“小众”的概念,它能取得好效果至今仍让我感到惊讶(或许它只对非常长的文档或特定领域如 OCR、代码有意义,而不适用于通用的语言建模)。
(附言:我个人原本预计 DeepSeek 团队会接着推出一个使用他们在 V3.2 版本中尝试过的稀疏注意力机制(sparse attention mechanism)的 V4 模型,但也许那还在路上。现在读完这篇论文后,V4 或许会是一个视觉语言大模型。)
#微博兴趣创作计划#
