想将一份文档图片转换成Markdown格式?
以往这一任务需要文本识别、布局检测和排序、公式表格处理、文本清洗等多个步骤——
这一次,只需一句话命令,多模态大模型Vary直接端到端输出结果:
图片
无论是中英文的大段文字:
图片
还是包含了公式的文档图片:
图片
又或是手机页面截图:
图片
甚至可以将图片中的表格转换成latex格式:
图片
当然,作为多模大模型,通用能力的保持也是必须的:
图片
Vary表现出了很大的潜力和极高的上限,OCR可以不再需要冗长的pipline,直接端到端输出,且可以按用户的prompt输出不同的格式如latex 、word 、markdown。
通过大模型极强的语言先验,这种架构还可以避免OCR中的易错字,比如“杠杆”和“杜杆”等, 对于模糊文档,也有望在语言先验的帮助下实现更强的OCR效果。
项目一出,引发了不少网友的关注,有网友看后直呼“kill the game!”
图片
那么这样的效果,是如何做到的呢?
受大模型启发打造
目前的多模态大模型几乎都是用CLIP作为Vision Encoder或者说视觉词表。确实,在400M图像文本对训练的CLIP有很强的视觉文本对齐能力,可以覆盖多数日常任务下的图像编码。
但是对于密集和细粒度感知任务,比如文档级别的OCR、Chart理解,特别是在非英文场景,CLIP表现出了明显的编码低效和out-of-vocabulary问题。
纯NLP大模型(如LLaMA)从英文过渡到中文(对大模型来说是“外语”)时,因为原始词表编码中文效率低,必须要扩大text词表才能实现较好的效果。
正是这一特点给研究团队带来了启发。
现在基于CLIP视觉词表的多模态大模型,面临着同样的问题,遇到“foreign language image”,如一页论文密密麻麻的文字,很难高效地将图片token化。
而Vary就是这一问题的一种解决方案,它可以在不重建原有词表前提下,高效扩充视觉词表。
图片
不同于现有方法直接用现成的CLIP词表,Vary分两个阶段:
第一阶段先用一个很小的decoder-only网络用自回归方式帮助产生一个强大的新视觉词表;
然后在第二阶段融合新词表和CLIP词表,从而高效地训练LVLM拥有新feature。
Vary的训练方法和模型结构如下图:
图片
通过在公开数据集以及渲染生成的文档图表等数据上训练,Vary极大增强了细粒度的视觉感知能力。
在保持vanilla多模态能力的同时,激发出了端到端的中英文图片、公式截图和图表理解能力。
另外,研究团队注意到原本可能需要几千tokens 的页面内容,通过文档图片输入,信息被Vary压缩在了256个图像tokens中,这也为进一步的页面分析和总结提供了更多的想象空间。
目前,Vary的代码和模型均已开源,还给出了供大家试玩的网页demo。
感兴趣的小伙伴可以去试试了~