论文链接:
https://arxiv.org/abs/2403.04473
TextMonkey是一个专注于文本相关任务(包括文档问答和场景文本问答)的多模态大模型(LMM)。相比于Monkey,TextMonkey在多个方面进行改进:通过采用零初始化的Shifted Window Attention,TextMonkey实现了更高输入分辨率下的窗口间信息交互;通过使用相似性来过滤出重要的图像特征,TextMonkey不仅能够简化输入,还可以提高模型的性能。此外,通过扩展多个文本相关任务并将位置信息纳入回答,TextMonkey增强了可解释性并减少了幻觉。与此同时,TextMonkey在微调之后还可以具备APP Agent中理解用户指令并点击相应位置的能力,展现了其下游应用的巨大潜力。
实验结果表明,TextMonkey在各种基准数据集上的性能得到了显著提升,在以场景文本为中心的视觉问答、文档VQA和关键信息抽取任务中分别取得了5.2%、6.9%和2.8%的准确率增长,特别是在OCRBench[2]上获得了561的得分,超越此前所有已开源的多模态大模型。TextMonkey的成功核心在于它模拟人类视觉认知的方法,这使它能自然而然地识别高清文档图像中各部分的相互关联,并灵敏地鉴别出图像内的关键要素。更进一步,基于对用户多样化需求的深入理解,TextMonkey通过文本定位技术强化了答案的准确性,提升了模型的解释性,减少了幻觉,有效提高了在处理各类文档任务上的表现
方法介绍
图1 TextMonkey整体架构
1.Shifted Window Attention
现有的多模态大模型,如Monkey和LLaVA1.6,通过将图像切分为小块来提高输入分辨率。然而这种裁剪策略可能会无意中分割相关单词,导致语义不连贯。此外,这种分裂造成的空间分离也使得处理与文本位置相关的任务(如文本检测)变得具有挑战性。TextMonkey在继承Monkey高效的图像分辨率缩放功能的同时,采用滑动窗口注意力机制建立了块与块之间的上下文联系。
2.Token Resampler
目前的多模态大模型面临着图像token数目随着输入分辨率的增加而增加的挑战。由于语言模型的输入长度和训练时间的限制,减少token的数量是很有必要的。
在自然语言中,语言元素会存在一些冗余信息。那么可以自然的猜测在扩大图像分辨率之后,视觉部分的token也会存在冗余。本文根据以往确定语言元素相似性的方法,对已经映射到语言空间的图像token的相似性进行了度量:在图像Resampler之后随机选取20个有序特征,利用余弦相似性成对比较这些特征的相似性,得到的结果如图2所示。颜色越深代表相似性越高,实验发现每个图片的token都有一个到几个类似的token,图片特征中存在冗余。同时,本文还观察到某些令牌是高度独特的,并且缺乏其他相似的token,如图中的第四个token,这表明这个token是更为重要的。因此本文选用相似度来度量并识别独特的视觉token。并提出Token Resampler来压缩冗余视觉token。通过计算每个token与其他token的相似度,过滤得到最重要(相似度最低)的K个token。同时,为了避免直接丢弃其他token造成的信息丢失,这里还会利用过滤得到的K 个token作为查询,并采用交叉注意力机制进一步融合所有特征。
图2 图像Token相似性比较
3.多任务训练
TextMonkey支持读出所有文本,文本检测识别,输出给定文本坐标,文本问答,具有位置感知的文本问答,图像结构化等多个任务。TextMonkey在进行问答时不仅看可以给出答案,还能给出答案所在位置,进一步增强了模型的可解释性。与此同时,在经过微调之后,TextMonkey还可以具备APP Agent中理解用户指令并点击相应位置的能力。
实验分析:
1.TextMonkey与现有的多模态大模型相比,表现出了优越的性能。
2.为了进一步验证TextMonkey的有效性,本文还在更多数据集上进行了测试。(其中Deepform和KLC使用F1-score作为评估指标, WTQ使用accuracy, ChartQA 使用relaxed accuracy, DocVQA使用ANLS。)
3.TextMonkey在Text Spotting数据集上相比于传统OCR模型也取得了极具竞争力的效果。
4.表7的消融实验表明Shifted Window Attention和Token Resampler两个模块的有效性
5.表9的消融实验证明:由于分辨率的提高导致冗余令牌的显着增加,使得找到关键信息变得更加困难,在不压缩Token的情况下直接增加分辨率实际上会导致一致的性能损失,如在表中第一行和第四行,在不压缩Token时,分辨率由896增加到1344会导致模型在四个数据集上的指标均有所下降,这说明了没有策略地一味增加模型的分辨率反而会带来负面影响,如何合理地增加分辨率,将会是一个需要集中解决的问题。不仅如此,表9中还说明,当选取不同的压缩Token数量时,对模型性能的影响也是显著的,选取一个合适的值来作为压缩Token的数量,可以使得模型的性能进一步提升。
可视化结果展示
TextMonkey在场景图像和文档图像中都能准确定位和识别文本。此外,(a)中的自然图像、(b)中的文档、(c)中的图表和(d)中的表格都展示了TextMonkey在多种场景下识别、理解和定位文本信息的能力。
本文还探索了TextMonkey作为智能手机应用程序的Agent代理方面的可行性。使用来自Rico数据集的15k用户点击数据上进行微调之后,TextMonkey能够理解用户意图并点击相应的图标,这表明了TextMonkey在微调之后作为App Agent的巨大潜力。
Demo展示
TextMonkey的在线Demo地址为:http://vlrlab-monkey.xyz:7684
1.TextMonkey展现出了强大的视觉定位与理解能力,不仅能够定位图像中的所有文本,还能在视觉问答时给出答案及其所在位置,增加了可解释性并减少幻觉。
TextMonkey即使在文字相当密集的情况下也可以读取输入图片中的所有文字并且给出图片中文本的坐标。
3.TextMonkey还能帮助我们结构化图表,表格以及文档数据,通过将图像内容转化为Json格式的信息,方便记录和提取。
更多可能性
TextMonkey也能作为智能手机代理,无需接触后端,仅需语音输入及屏幕截图,即能够模仿人类的点击手势,能够在手机上执行各种任务,自主操控手机应用程序。
图4 TextMonkey充当智能手机代理控制手机应用程序
总结
TextMonkey在Monkey的基础上增强了其图像间的跨窗口交互,在扩大分辨率的基础上增强了视觉信息的语义连续性,有效缓解了视觉信息碎片化的问题;并通过提出过滤融合策略减少图像特征长度,从而减少输入到大语言模型中冗余的视觉token数量。论文的实验说明,分辨率不是越大越好,不合理的提高模型分辨率策略有时会给模型带来负面影响,如何合理地扩大分辨率才是一个更值得去思考的问题。此外,通过在问答中引入位置信息,TextMonkey增强了可解释性并减少了幻觉。TextMonkey在多个文本相关的测试基准中处于国际领先,在OCRBench中超越其他开源多模态大模型。TextMonkey的到来为通用文档理解带来曙光,这有潜力促进办公自动化、智慧教育、智慧金融等行业的技术变革。、
参考文献
[1] Li Z, Yang B, Liu Q, et al. Monkey: Image resolution and text label are important things for large multi-modal models[J]. arXiv preprint arXiv:2311.06607, 2023.
[2] Liu Y, Li Z, Li H, et al. On the hidden mystery of ocr in large multimodal models[J]. arXiv preprint arXiv:2305.07895, 2023.