掘金 人工智能 2024年07月06日
解密Prompt系列33. LLM之图表理解任务-多模态篇
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文探讨了多模态图表数据理解任务,对比了使用prompt情况下图片和文本模态表格模型理解的效果,并介绍了针对图表理解的微调方案。研究发现,文本模态表格模型在大多数情况下效果更好,但图片模态在特定场景下也有优势。文章还介绍了ChartLlama和TinyChart两种针对图表理解的微调方案,并探讨了其优势和不足。

😄 **图片和文本模态效果对比**: 实验结果表明,图片和文字模态在不同数据集上效果存在差异,例如在FinQA数据集上,图片模态效果显著优于文本模态;而在TabFact和WikiTQ数据集上,文本模态效果则更佳。这可能是由于FinQA的上文较长,导致文本表征模型容易混淆信息,而WikiTQ和TabFact是维基百科数据,文本模型在预训练中可能见过类似数据,因此效果更好。总体而言,图片和文本模态哪个效果更好,需要根据实际应用场景进行测试。

😁 **COT(Chain-of-Thought)的优势**: 无论是图片还是文本模态,使用COT都能带来显著的效果提升。COT的优势在于,它可以帮助模型进行一步步推理,从而提高模型的理解能力和解决问题的能力。

😉 **文本模态表格理解的优势**: 通过对两篇论文的分析,可以发现,在当前的prompt水平上,整体而言,文本模态表格理解的效果要更好一些。但需要注意的是,不同上下文和表格类型上可能存在表现差异。

😊 **图表理解的微调方案**: 文章介绍了两种针对图表理解的微调方案:ChartLlama和TinyChart。ChartLlama主要贡献在于构建了一个大型的多模态图表指令理解数据集,并基于该数据集对Llava-1.5模型进行微调。TinyChart则提出了一种高效的像素合并和Program-of-Thoughts学习方法,有效提升了3B模型的性能,超越了13B的ChartLLama。

🥰 **其他相关论文**: 文章还列举了其他一些关于图表理解的论文,如ChartAssisstant、ChartInstruct、ChartX和ChartVLM,这些论文都致力于构建更强大的图表理解模型,并为不同类型的图表理解任务提供解决方案。

🤩 **总结**: 多模态图表理解是一个充满挑战性的领域,目前的研究表明,文本模态在大多数情况下效果更好,但图片模态在特定场景下也有优势。未来需要探索更有效的微调方案,构建更全面、多样化的图表理解数据集,以及开发更强大的模型架构,以更好地解决图表理解任务。

😎 **其他**: 除了本文介绍的内容,还有很多其他关于图表理解的研究。例如,一些研究者关注于如何利用图表中的结构信息来提升模型的理解能力,一些研究者则致力于开发更强大的图表生成模型。

😍 **未来方向**: 未来,图表理解研究将会更加关注于如何将图表理解与其他任务结合起来,例如,将图表理解应用于问答系统、文本摘要、机器翻译等任务。

🤓 **个人观点**: 图表理解是一个重要的研究方向,它可以帮助我们更好地理解数据,并从中获得更深层的洞察。

🤔 **思考**: 如何构建更有效的图表理解模型,如何将图表理解应用于更广泛的领域,都是值得深入思考的问题。

😇 **总结**: 本文介绍了图表理解领域的一些最新研究成果,并展望了未来的发展趋势。希望本文能对读者理解图表理解任务有所帮助。

😈 **其他**: 除了本文介绍的内容,还有很多其他关于图表理解的研究。例如,一些研究者关注于如何利用图表中的结构信息来提升模型的理解能力,一些研究者则致力于开发更强大的图表生成模型。

👿 **未来方向**: 未来,图表理解研究将会更加关注于如何将图表理解与其他任务结合起来,例如,将图表理解应用于问答系统、文本摘要、机器翻译等任务。

💀 **个人观点**: 图表理解是一个重要的研究方向,它可以帮助我们更好地理解数据,并从中获得更深层的洞察。

🌎 **思考**: 如何构建更有效的图表理解模型,如何将图表理解应用于更广泛的领域,都是值得深入思考的问题。

👽 **总结**: 本文介绍了图表理解领域的一些最新研究成果,并展望了未来的发展趋势。希望本文能对读者理解图表理解任务有所帮助。

🤖 **其他**: 除了本文介绍的内容,还有很多其他关于图表理解的研究。例如,一些研究者关注于如何利用图表中的结构信息来提升模型的理解能力,一些研究者则致力于开发更强大的图表生成模型。

👾 **未来方向**: 未来,图表理解研究将会更加关注于如何将图表理解与其他任务结合起来,例如,将图表理解应用于问答系统、文本摘要、机器翻译等任务。

👹 **个人观点**: 图表理解是一个重要的研究方向,它可以帮助我们更好地理解数据,并从中获得更深层的洞察。

👻 **思考**: 如何构建更有效的图表理解模型,如何将图表理解应用于更广泛的领域,都是值得深入思考的问题。

🤡 **总结**: 本文介绍了图表理解领域的一些最新研究成果,并展望了未来的发展趋势。希望本文能对读者理解图表理解任务有所帮助。

🦸 **其他**: 除了本文介绍的内容,还有很多其他关于图表理解的研究。例如,一些研究者关注于如何利用图表中的结构信息来提升模型的理解能力,一些研究者则致力于开发更强大的图表生成模型。

🦹 **未来方向**: 未来,图表理解研究将会更加关注于如何将图表理解与其他任务结合起来,例如,将图表理解应用于问答系统、文本摘要、机器翻译等任务。

🧙 **个人观点**: 图表理解是一个重要的研究方向,它可以帮助我们更好地理解数据,并从中获得更深层的洞察。

🧛 **思考**: 如何构建更有效的图表理解模型,如何将图表理解应用于更广泛的领域,都是值得深入思考的问题。

🧟 **总结**: 本文介绍了图表理解领域的一些最新研究成果,并展望了未来的发展趋势。希望本文能对读者理解图表理解任务有所帮助。

上一章我们介绍了纯文本模态的表格理解任务,这一章我们聚焦多模态图表数据。先讨论下单纯使用prompt的情况下,图片和文字模态哪种表格模型理解的效果更好更好,再说下和表格相关的图表理解任务的微调方案。

Prompt:表格模态哪家强

使用prompt对比SOTA的文本模型和多模态模型,哪个在表格理解任务上效果更好,可以借鉴以下两篇论文,前者使用了已有的TableQA Benchmark,后者新构建的TableVQA Benchmark。

Table as Text or Image

    TableVQA-Bench: A Visual Question Answering Benchmark on Multiple Table Domains

这是一篇实验性论文,有如下几个实验变量

论文使用了以下6个数据集的混合,分别对TableQA,Table Fact-check,Table-to-text等任务进行评估。

直接来看实验结论吧

    图片和文字的效果在不同数据集上存在差异,Gmini和GPT4,当使用Vanilla的表格文本和表格图片时,在FinQA上图片显著更好,而在TabFact和WikiTQ上文本显著更好。论文猜测的点是FinQA的上文更长,导致文本表征模型容易混淆信息,而WikiTQ和TabFact是维基百科的数据,文本模型可能在预训练时见过才导致的效果更好。对比并不太充分,这么看感觉图片和文字的效果还是要在实际使用的场景上去做测试。

    不论是图片和文字模态,COT都能带来显著的效果提升,文字prompt上一章微软的另一篇论文中已经说过了,这里只看图片的实验结果,下图列(V,E,COT)分别是vanilla,ExPert和COT,行(VV,CC,RC)分别是图片无颜色,列高亮,和行高亮

更多文本模态的结论和前一章微软的论文有所重合这里了就不多说了,图片和文本的对比感觉不太充分,我们再看下下面的另一篇论文

TableVQA-Bench

第二篇论文我们说下新出炉不久的TableVQA评估集,论文提出了新的多模态表格评估数据集。和以上论文的数据集存在重合,不过更细致地给出了数据集构建的细节,以及论文的结论也和前文存在差异。

评估集由以下三个数据集构成(点击链接可以看到数据)

上面提到的Table Renderer其实就是随机修改表格的HTML样式,例如加入cell color,调整文字对齐,修改边界样式,给表格加背景色等等。

基于以上评估集,论文对众多开源和商用MLLM进行了整体评估,结果如下

我们结合两篇论文来看,在当前的prompt水平上,整体上还是文本模态的表格要更好些,但确实可能存在不同上下文和表格类型上表现不同的差异性~

说完纯prompt的方案,我们再来看下图表理解相关的微调方案,这里的微调方案更多是针对图表数据中的图,例如饼图,时序图,直方图等等分别介绍ChartLlama和TinyChart两篇论文,还有一些相关的论文像ChartInstruct,ChartX,ChartAssistant会列在最后感兴趣的大家自己去看吧~

Chart SFT

ChartLlama

ChartLlam的核心其实是给了一套构建多模态图表指令理解数据集的方案。然后基于构建的数据集在Llava-1.5上进行了微调训练。Llava-1.5是由VIT-L/14@336px作为图像编码器,两层MLP作为投影层,Llama作为LLM。这里ChartLlama只对Projection层和Llama层进行了微调。

既然以构建大规模,多样性的图表理解数据为主,那我们就重点说下数据构建的细节。分成以下三个步骤

微调和效果部分就不细说了在后面的TinyChart里面会有ChartLlama的效果数据。

TinyChart

    TinyChart: Efficient Chart Understanding with Visual Token Merging and Program-of-Thoughts Learning

除了ChartLlama后面还有过很多篇论文但多数也是构建不同的数据,在不同的模型上去训练,这里我们再看一篇针对效率提升的论文。

TinyChart使用了更高效的像素合并和Program-of-Thoguhts让3B的MLLM一举超越了13B的ChartLLama。TinyChart的整体模型结构也是传统的MMLM,由Vision Transformer Encoder,Connector和LLM构成,下面我们主要说下提升效率的图像元素合并,以及提升效果的PoT

Visual Token Merging

图片编码器的输入会先把图片压缩到固定像素(N),然后裁剪成多个大小为(P)的区域作为视觉模型的token输入。因此视觉模型的token数=(N//p)^2。考虑到Chart图表理解往往需要用到图片中的文字等信息,因此必须使用高像素的图片。而像素N的提升会带来输入token平方级的增长。这里论文提出可以通过相似token合并来降低每一层的token量级。

这里其实用到了chart图表本身的图片特征,例如饼图和直方图等图片会在局部存在大量的同色色块,以及空白,因此在裁剪的区域上可以再做一层相似合并。

这里合并使用了token的self-attention的cosine similar来作为相似度度量,然后使用了二分图匹配算法,有点好奇为啥是用这个方案而不直接用矩阵。就是把所有token分两堆,然后男嘉宾(左边一堆)去找最喜欢(相似)的女嘉宾(右边一堆),保留最有眼缘(最相似)的r对嘉宾(token)进行合并。这里token合并并不一定是相邻token。

同时考虑到合并后参与attention计算的元素会减少,因此论文加入了被合并的元素数来调整scale。

$$Attention = softmax(\frac{QK^T}{\sqrt{d}} + logs)V$$

直观来看下Token Merge的效果,这里论文展示了Transformer最后一层中最大的十组Merged Token,基本上都是白色背景,或者纯色的色块。

Program-of-Thought

为了提升模型在解决图表问题中数学计算等逻辑推理问题的效果,论文在训练时加入了让模型推理生成多步python代码的Program-of-Thought样本。而在推理时论文,会通过简单的关键词判断,如果涉及计算类问题,就选择让模型进行代码推理的prompt,否则使用文字推理的prompt。

这里论文分别通过模板和GPT进行了Chart-POT数据集的构建,总共构建了140,584条样本(question,POT Answer),每个answer包含完整带comment的python代码。包含chartQA,chart-to-text,chart-to-table,chart指令理解等几种任务,其中

样本demo如下

之后基于以上的样本,TinyChart是基于TinyLlava,包含SIGCLIP作为图像Encoder,Phi-2作为作为LLM,然后分别在512*512,以及768*768的像素上进行全模型的微调。

效果如下,因为表格理解类任务的样本丰富度相对有限,所以在同领域的效果提升会比较明显,所以这个结果嘛看看就好~

论文还做了消融实验,对比了POT的加入,确实能有效提升模型在计算类问题上的效果,以及更高的分辨率配合TokenMerge可以推理效率持平的情况下提升模型效果。

其他相关论文

想看更全的大模型相关论文梳理·微调及预训练数据和框架·AIGC应用,移步Github >> DecryPrompt

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

图表理解 多模态 表格模型 Prompt 微调
相关文章