大模型~合集4

我自己的原文哦~ https://blog.51cto.com/whaosoft/11576360

# aiXcoder-7B

7B超越百亿级,北大开源aiXcoder-7B最强代码大模型,企业部署最佳选择,对代码大模型而言,比能做编程题更重要的,是看是能不能适用于企业级项目开发,是看在实际软件开发场景中用得顺不顺手、成本高不高、能否精准契合业务需求,后者才是开发者关心的硬实力。

当下,大语言模型集成至编程领域、完成代码生成与补全任务成为重要趋势。业界已经出现了一批引人瞩目的代码大模型,比如 OpenAI 的 CodeX、谷歌 DeepMind 的 AlphaCode、HuggingFace 的 StarCoder,帮助程序员更迅捷、更准确、更高质量地完成编码任务,大幅提升效率。

有这样一支研发团队,在 10 年前便开始了将深度学习用于软件开发的探索,并在代码理解和代码生成领域双双全球领先。他们就是来自北京大学软件工程研究所的 aiXcoder 团队(简称 aiXcoder 团队),此次为开发者带来了新的高效编码利器。

4 月 9 日,该团队开源了全自研 aiXcoder 7B 代码大模型,不仅在代码生成和补全任务中大幅领先同量级甚至超越 15B、34B 参数量级的代码大模型;还凭借其在个性化训练、私有化部署、定制化开发方面的独有优势,成为最适合企业应用、最能满足个性化开发需求的代码大模型。

aiXcoder 7B 的全部模型参数和推理代码均已开源,可以通过 GitHub、Hugging Face、Gitee 和 GitLink 等平台访问。

「耳听为虚眼见为实」,一切还是要用真实的测评数据和实际的任务效果说话。

越级体验

能其他代码大模型所不能

一个代码大模型究竟好不好用, 当然要在对程序员最有帮助、用的最多的代码生成与补全任务中来验证。

先看代码生成比较结果,在 OpenAI HumanEval(由 164 道 Python 编程问题组成)、谷歌 MBPP(由 974 个 Python 编程问题组成)和 HuggingFace MultiPL-E(包含了 18 种编程语言)等代码生成效果评估测试集上,aiXcoder 7B 版的准确率远超当前主流代码大模型,成为十亿乃至百亿级参数中最强。

除了在 HumanEval 这样偏向非真实开发场景的测试集上取得准确率新 SOTA,aiXcoder 7B 在代码补全等真实开发场景中的表现更是可圈可点,比如写好上文让代码大模型补下文或者跨文件引用已经定义好的方法、函数、类等。

同样用数据说话,在考虑上下文的单行补全测评集 SantaCoder 上,aiXcoder 7B Base 版在与 StarCoder 2、CodeLlama 7B/13B、DeepSeekCoder 7B 等主流同量级开源模型的较量中取得最佳效果,成为最适合实际编程场景的代码补全基础模型。具体如下表所示:

aiXcoder 7B Base 版的补全效果最好,不单单是准确率更高,还在实际运行中表现出了其他代码大模型没有或者逊于自己的能力。实现这些的背后是一系列针对代码特性的创新训练方法,正是它们使得 aiXcoder 7B Base 版脱颖而出。

首先,aiXcoder 7B Base 版在预训练时提供了 32k 的上下文长度,这在现有 7B 参数量级代码大模型中为最大,其他多为 16k。不仅如此,通过插值的方法可以直接在推理时将上下文长度扩展到 256k,并在理论上有能力扩展至更长。

在同量级模型中拥有最大预训练上下文长度,并可弹性扩展,成为提升 aiXcoder 7B Base 版代码补全效果的重要基础。

其次,aiXcoder 7B Base 版在代码补全过程中「知道」用户什么时候需要生成代码,并在代码内容已经完整不需要再生成时自动停止。这成为该模型比较独特的功能,其他很多代码大模型无法做到这一点。

aiXcoder 团队表示,该功能在技术上的实现离不开结构化 Span 技术。在模型训练中,通过结构化 Span 技术来构建训练数据和相关任务,让模型学习到用户应该在什么时候生成代码或者补全的内容在语法和语义结构上是否完整。

这也就意味着 aiXcoder 7B Base 版能自动「知道」自己推理到了什么位置,而其他模型想要终止的话,需要人为设定终止条件。自动推理则少了这种麻烦,有助于提升工作效率。

此外,在 aiXcoder 扩展基准测试集(aiXcoder Bench)上,aiXcoder 7B Base 版表现出了相较于其他代码大模型的又一大亮点,即倾向于使用较短代码来完成用户指定的任务

详细结果如下表所示,在针对 Java、C++、JavaScript 和 Python 编程语言的代码补全测评时,aiXcoder 7B Base 不仅效果最好,四处红框圈出的生成答案长度明显短于其他竞品模型,并且非常接近甚至有时比标准答案(Ref)还要短。

aiXcoder 团队指出,这一后验发现仍离不开结构化 Span 技术。他们在整个训练过程中特别注重代码结构,而结构化 Span 按照代码结构对代码进行拆分,这更有益于体现代码的语义,最终促成了模型「短」答案的同时效果又占优。

除了在以上单文件上下文代码补全任务中的卓越表现,aiXcoder 7B Base 版在跨多文件补全场景中的表现同样更胜一筹,不仅针对多文件的编程效果提升最优,还在下表 CrossCodeEval 测评集上有了一个重要发现。

据 aiXcoder 团队介绍,该模型在只通过光标上文搜索到的结果作为 prompt(只看当前编写的上文),同时其他模型拿 GroundTruth(把包含答案的文件给到这些模型)搜索到的结果作为 prompt,在这种条件下,前者的效果依然要强于后者。

如何做到的呢?对于其他模型来说,即使有更多的上下文信息,它们也搞不清楚哪些是最核心、最关键的。而 aiXcoder 7B Base 版能从上下文档中拣出对当前编写代码最有效、最核心的上下文细节,所以才有好的效果。

这里感知到哪些信息最有效最为关键,通过对上下文进一步信息处理,结合文件相关内容的聚类、代码 Calling Graph 来构建多文件之间的相互注意力关系,进而获取到对当前补全或生成任务最关键的信息。

所有这些创新性训练方法很大程度上决定了 aiXcoder 7B Base 版能够在众多代码大模型的比拼中胜出。此外, 1.2T 的高质量训练数据同样功不可没,这一量级不仅在同类型模型中最大,还是独有 token 数据。

其中 600G 优先放入的高质量数据对模型效果起了重要作用,其他数据主要来自 GitHub,以及 Stack Overflow、Gitee 等,自然语言部分还包括了一部分 CSDN 数据,并且全部数据进行了过滤处理。

Talk is cheap, Show me the code

显然,aiXcoder 7B Base 版在测评数据上赢了其他代码大模型,但究竟能不能高效地帮助开发者完成编码任务?还是要看实战效果。

先看生成能力,对于前端开发,aiXcoder 7B Base 版可以通过注释快速地生成对应网页:

还可以处理高难度算法题,比如经典的分糖果问题,通过贪心的策略,以左右两次遍历的方式得到最少糖果数。

再来看 aiXcoder 7B Base 版更得心应手的代码补全场景,比如长上下文补全。这里用多个工具函数拼成 1500 多行的代码,要求模型在文件末端进行注释补全,模型识别到了文件顶部的相关函数,并成功地结合函数信息补全了相关方法:

还有以下跨文件补全任务,在树结构上应用动态规划来实现编辑距离搜索。模型补全的代码识别到了编辑距离的计算与另一个文件中滚动数组内部取最小值的计算之间的关系,并给出了正确的预测结果:

当然还可以智能化匹配输出长度。当用户调整自己的采纳内容时,模型能够根据当前的采纳情况自动调整补全长度:

一句话,有了 aiXcoder 7B Base 版代码大模型,无论是代码生成还是补全,程序员多了一个效率提升利器,节省时间,事半功倍。

拼效果,更拼应用

用核心竞争力成为企业首选

我们已经看到,aiXcoder 7B Base 版在代码补全这样的真实开发场景中充分展现了自身的硬实力。不过,对于企业客户来说,代码大模型只是效果好并不能完全打动他们。只有全方位满足自身需求,企业客户才会毫不犹豫地下手。

aiXcoder 7B Base 版正是奔着企业需要、解决他们的个性化需求来的。打造最适合企业应用的代码大模型,成为了 aiXcoder 7B Base 版的首要目标和有别于其他模型的又一核心优势。

当然,想要成为企业应用的最佳选择并不容易,必须围绕着企业业务场景、需求、所能承担的成本等实际情况做深文章。aiXcoder 模型不仅这样做了,而且做到了极致。

简而言之,为了实现企业级个性化的应用落地,aiXcoder 模型在私有化部署、个性化训练和定制化开发三个方面齐发力,打造出了相较于其他代码大模型的核心优势。

首先来看私有化部署。对于企业而言,代码大模型在本地服务器的私有化部署和运行,首要考虑的是自身算力是否可以支撑。在这点上,aiXcoder 模型对企业 GPU 资源要求少,应用成本投入低,让部署模型门槛大大降低。

此外,不同企业拥有的软硬件各异,既会有国产芯片,也会有国外如英伟达显卡。基于此,aiXcoder 模型进行针对性硬件适配以及进一步模型训练和推理优化,比如在信息处理层面采用高速缓存技术,充分满足多样化部署要求。

其次也是 aiXcoder 模型着重强调的个性化训练。我们知道,企业的实际情况不能一概而论,而 aiXcoder 模型做到了见招拆招,提供了「一揽子」的个性化模型训练解决方案。

一方面构建企业专属数据集和测评集,其中数据集构建基于企业代码特征和员工编码习惯,专门对代码及相关文档进行数据预处理;测评集构建则以真实开发场景为准绳,模拟并评估模型在实际应用中的预期效果。

另一方面,将企业代码这一内因与企业算力资源这一外因相结合,充分考虑到不同企业计算资源、代码量的多寡,为他们提供灵活的个性化训练及优化方案,最大化提升专属代码大模型的前期训练效果和后续应用效果。

第三是定制化开发。aiXcoder 模型瞄准不同行业和企业的实际情况,结合企业个性化需求来为他们提供灵活的定制化服务。凭借丰富和成熟的定制开发经验,让基于企业代码和计算资源打造的模型高度契合实际需求,让业务效率的提升看得见摸得着。目前,客户已经遍布银行、证券、保险、军工、运营商、能源、交通等多个行业。

可以看到,相较于其他代码大模型,aiXcoder 能同时为企业提供个性化训练的产品和服务,这在业内是唯一一个

aiXcoder 开源链接:

​https://github.com/aixcoder-plugin/aiXcoder-7B​

​https://gitee.com/aixcoder-model/aixcoder-7b​

​https://www.gitlink.org.cn/aixcoder/aixcoder-7b-model​

​https://wisemodel.cn/codes/aiXcoder/aiXcoder-7b​

# Physics of Language Models: Part 3.3, Knowledge Capacity Scaling Laws

Llama架构比不上GPT2?神奇token提升10倍记忆?

一个 7B 规模的语言模型 LLM 能存储多少人类知识?如何量化这一数值?训练时间、模型架构的不同将如何影响这一数值?浮点数压缩 quantization、混合专家模型 MoE、以及数据质量的差异 (百科知识 vs 网络垃圾) 又将对 LLM 的知识容量产生何种影响?

近日,朱泽园 (Meta AI) 和李远志 (MBZUAI) 的最新研究《语言模型物理学 Part 3.3:知识的 Scaling Laws》用海量实验(50,000 条任务,总计 4,200,000 GPU 小时)总结了 12 条定律,为 LLM 在不同条件下的知识容量提供了较为精确的计量方法。

作者首先指出,通过开源模型在基准数据集 (benchmark) 上的表现来衡量 LLM 的 scaling law 是不现实的。例如,LlaMA-70B 在知识数据集上的表现比 LlaMA-7B 好 30%,这并不能说明模型扩大 10 倍仅仅能在容量上提高 30%。如果使用网络数据训练模型,我们也将很难估计其中包含的知识总量。

再举个例子,我们比较 Mistral 和 Llama 模型的好坏之时,到底是他们的模型架构不同导致的区别,还是他们训练数据的制备不同导致的?

综合以上考量,作者采用了他们《语言模型物理学》系列论文的核心思路,即制造人工合成数据,通过控制数据中知识的数量和类型,来严格调控数据中的知识比特数 (bits)。同时,作者使用不同大小和架构的 LLM 在人工合成数据上进行训练,并给出数学定理,来精确计算训练好的模型从数据中学到了多少比特的知识。whao开发板商城www.143ai.com测试设备

  • 论文地址:https://arxiv.org/pdf/2404.05405.pdf
  • 论文标题:Physics of Language Models: Part 3.3, Knowledge Capacity Scaling Laws

对于这项研究,有人表示这个方向似乎是合理的。我们可以使用非常科学的方式对scaling law 进行分析。

也有人认为,这项研究将 scaling law 提升到了不同的层次。当然,对于从业者来说是一篇必读论文。

研究概览

作者研究了三种类型的合成数据:bioS、bioR、bioD。bioS 是使用英语模板编写的人物传记,bioR 是由 LlaMA2 模型协助撰写的人物传记(22GB 总量),bioD 则是一种虚拟但可以进一步控制细节的知识数据(譬如可以控制知识的长度、词汇量等等细节)。作者重点研究了基于 GPT2、LlaMA、Mistral 的语言模型架构,其中 GPT2 采用了更新的 Rotary Position Embedding (RoPE) 技术

左图为训练时间充足,右图为训练时间不足的 scaling laws

上图 1 简要概述了作者提出的前 5 条定律,其中左 / 右分别对应了「训练时间充足」和 「训练时间不足」两种情况,分别对应了常见知识(如中国首都是北京)和较少出现的知识(如清华物理系成立于 1926 年)。

如果训练时间充足,作者发现,不论使用何种模型架构,GPT2 或 LlaMA/Mistral,模型的存储效率均可以达到 2bit/param—— 即平均每个模型参数可以存储 2 比特的信息。这与模型的深度无关,仅与模型大小有关。换言之,一个 7B 大小的模型,如果训练充足,可以存储 14B 比特的知识,这超过了维基百科和所有英文教科书中人类知识的总和!

更令人惊讶的是,尽管传统理论认为 transformer 模型中的知识主要存储在 MLP 层,但作者的研究反驳了这一观点,他们发现即便移除了所有 MLP 层,模型仍能达到 2bit/param 的存储效率。

图 2:训练时间不足情况下的 scaling laws

然而,当我们观察训练时间不足的情况时,模型间的差异就显现出来了。如上图 2 所示,在这种情况下,GPT2 模型能比 LlaMA/Mistral 存储超过 30% 的知识,这意味着几年前的模型在某些方面超越了今天的模型。为什么会这样?作者通过在 LlaMA 模型上进行架构调整,将模型与 GPT2 的每个差异进行增减,最终发现是 GatedMLP 导致了这 30% 的损失。

强调一下,GatedMLP 并不会导致模型的「最终」存储率变化 —— 因为图 1 告诉我们如果训练充足它们就不会有差。但是,GatedMLP 会导致训练不稳定,因此对同样的知识,需要更长的训练时间;换句话说,对于较少出现在训练集里的知识,模型的存储效率就会下降。

图 3:quantization 和 MoE 对模型 scaling laws 的影响

作者的定律 8 和定律 9 分别研究了 quantization 和 MoE 对模型 scaling law 的影响,结论如上图 3 所示。其中一个结果是,将训练好的模型从 float32/16 压缩到 int8,竟然对知识的存储毫无影响,即便对已经达到 2bit/param 存储极限的模型也是如此。

这意味着,LLM 可以达到「信息论极限」的 1/4—— 因为 int8 参数只有 8 比特,但平均每个参数可以存储 2 比特的知识。作者指出,这是一个普遍法则(universal law),和知识的表现形式无关。     

最引人注目的结果来自于作者的定律 10-12(见图 4)。如果我们的 (预) 训练数据中,有 1/8 来自高质量知识库(如百度百科),7/8 来自低质量数据(如 common crawl 或论坛对话,甚至是完全随机的垃圾数据)。

那么,低质量数据是否会影响 LLM 对高质量知识的吸收呢?结果令人惊讶,即使对高质量数据的训练时间保持一致,低质量数据的「存在本身」,可能会让模型对高质量知识的存储量下降 20 倍!即便将高质量数据的训练时间延长 3 倍,知识储量仍会降低 3 倍。这就像是将金子丢进沙子里,高质量数据被严重浪费了。

有什么办法修复呢?作者提出了一个简单但极其有效的策略,只需给所有的 (预) 训练数据加上自己的网站域名 token 即可。例如,将 Wiki 百科数据统统加上 wikipedia.org。模型不需要任何先验知识来识别哪些网站上的知识是「金子」,而可以在预训练过程中,自动发现高质量知识的网站,并自动为这些高质量数据腾出存储空间。

作者提出了一个简单的实验来验证:如果高质量数据都加上一个特殊 token(任何特殊 token 都行,模型不需要提前知道是哪个 token),那么模型的知识存储量可以立即回升 10 倍,是不是很神奇?所以说对预训练数据增加域名 token,是一个极其重要的数据制备操作

图 4:预训练数据「知识质量不齐」情形下的 scaling laws,模型缺陷以及如何修复

结语

作者认为,通过合成数据,计算模型在训练过程中获得的知识总量的方法,可以为「评估模型架构、训练方法和数据制备」提供了一套系统且精确的打分体系。这和传统的 benchmark 比较完全不同,并且更可靠。他们希望这能帮助未来 LLM 的设计者做出更明智的决策。

# 多模态大语言模型综述 ~重大升级

本综述主要围绕 MLLM 的基础形式、拓展延伸以及相关研究课题进行展开,具体包括:MLLM 的基础构成与相关概念、MLLM 的拓展延伸、MLLM 的相关研究课题。

去年 6 月底,我们在 arXiv 上发布了业内首篇多模态大语言模型领域的综述《A Survey on Multimodal Large Language Models》,系统性梳理了多模态大语言模型的进展和发展方向,目前论文引用 120+ ,开源 GitHub 项目获得 8.3K Stars。自论文发布以来,我们收到了很多读者非常宝贵的意见,感谢大家的支持!

  • 论文链接:https://arxiv.org/pdf/2306.13549.pdf
  • 项目链接(每日更新最新论文):https://github.com/BradyFU/Awesome-Multimodal-Large-Language-Models

去年以来,我们见证了以 GPT-4V 为代表的多模态大语言模型(Multimodal Large Language Model,MLLM)的飞速发展。为此我们对综述进行了重大升级,帮助大家全面了解该领域的发展现状以及潜在的发展方向。

MLLM 发展脉络图

MLLM 脱胎于近年来广受关注的大语言模型(Large Language Model , LLM),在其原有的强大泛化和推理能力基础上,进一步引入了多模态信息处理能力。相比于以往的多模态方法,例如以 CLIP 为代表的判别式,或以 OFA 为代表的生成式,新兴的 MLLM 展现出一些典型的特质:(1)模型大。MLLM 通常具有数十亿的参数量,更多的参数量带来更多的潜力;(2)新的训练范式。为了激活巨大参数量的潜力,MLLM 采用了多模态预训练、多模态指令微调等新的训练范式,与之匹配的是相应的数据集构造方式和评测方法等。在这两种特质的加持下,MLLM 涌现出一些以往多模态模型所不具备的能力,例如给定图片进行 OCRFree 的数学推理、给定图片进行故事创作和理解表情包的深层含义等。

本综述主要围绕 MLLM 的基础形式、拓展延伸以及相关研究课题进行展开,具体包括:

  • MLLM 的基础构成与相关概念,包括架构、训练策略、数据和评测;
  • MLLM 的拓展延伸,包括输入输出粒度、模态、语言和场景的支持;
  • MLLM 的相关研究课题,包括多模态幻觉、多模态上下文学习(Multimodal In-Context Learning,M-ICL)、多模态思维链(Multimodal Chain of Thought,M-CoT)、LLM 辅助的视觉推理(LLM-Aided Visual Reasoning,LAVR)。

架构

对于多模态输入-文本输出的典型 MLLM,其架构一般包括编码器连接器以及 LLM。如要支持更多模态的输出(如图片、音频、视频),一般需要额外接入生成器,如下图所示:

MLLM 架构图

其中,模态编码器负责将原始的信息(如图片)编码成特征,连接器则进一步将特征处理成LLM 易于理解的形式,即视觉 Token。LLM 则作为“大脑”综合这些信息进行理解和推理,生成回答。目前,三者的参数量并不等同,以 Qwen-VL[1]为例,LLM 作为“大脑”参数量为 7.7B,约占总参数量的 80.2%,视觉编码器次之(1.9B,约占 19.7%),而连接器参数量仅有 0.08B。

对于视觉编码器而言,增大输入图片的分辨率是提升性能的有效方法。一种方式是直接提升分辨率,这种情况下需要放开视觉编码器进行训练以适应更高的分辨率,如 Qwen-VL[1]等。另一种方式是将大分辨率图片切分成多个子图,每个子图以低分辨率送入视觉编码器中,这样可以间接提升输入的分辨率,如 Monkey[2]等工作。

对于预训练的 LLM,常用的包括 LLaMA[3]系列、Qwen[4]系列和 InternLM[5]系列等,前者主要支持英文,而后两者中英双语支持得更好。就性能影响而言,加大 LLM 的参数量可以带来显著的性能增益,如 LLaVA-NeXT[6]等工作在 7B/13B/34B 的 LLM 上进行实验,发现提升LLM 大小可以带来各 benchmark 上的显著提升,在 34B 的模型上更涌现出 zero-shot 的中文能力。除了直接增大 LLM 参数量,近期火热的 MoE 架构则提供了更高效实现的可能性,即通过稀疏计算的方式,在不增大实际计算参数量的前提下提高总的模型参数量。

相对前两者来说,连接器的重要性略低。例如,MM1[7]通过实验发现,连接器的类型不如视觉 token 数量(决定之后 LLM 可用的视觉信息)及图片的分辨率(决定视觉编码器的输入信息量)重要。

数据与训练

MLLM 的训练大致可以划分为预训练阶段指令微调阶段对齐微调阶段。预训练阶段主要通过大量配对数据将图片信息对齐到 LLM 的表征空间,即让 LLM 读懂视觉 Token。指令微调阶段则通过多样化的各种类型的任务数据提升模型在下游任务上的性能,以及模型理解和服从指令的能力。对齐微调阶段一般使用强化学习技术使模型对齐人类价值观或某些特定需求(如更少幻觉)。

早期工作在第一阶段主要使用粗粒度的图文对数据,如 LAION-5B,这些数据主要来源于互联网上的图片及其附带的文字说明,因此具有规模大(数 10 亿规模)但噪声多、文本短的特点,容易影响对齐的效果。后来的工作则探索使用更干净、文本内容更丰富的数据做对齐。如 ShareGPT4V[8]使用 GPT-4V 生成的详细描述来做更细粒度的对齐,在一定程度上缓解了对齐不充分的问题,获得了更好的性能。但由于 GPT-4V 是收费的,这种类型的数据规模通常较小(数百万规模)。此外,由于数据规模受限,其包含的世界知识也是有限的,比如是否能够识别出图像中的建筑为广州塔。此类世界知识通常储备于大规模的粗粒度图文对中。

第二阶段的微调数据一方面可以来源于各种任务的数据,如 VQA 数据、OCR 数据等,也可以来源于 GPT-4V 生成的数据,如问答对。虽然后者一般能够生成更复杂、更多样化的指令数据,但这种方式也显著地增加了成本。值得一提的是,第二阶段的训练中一般还会混合部分纯文本的对话数据,这类数据可以视为正则化的手段,保留 LLM 原有的能力与内嵌知识。

第三阶段的数据主要是针对于回答的偏好数据。这类数据通常由人工标注收集,因而成本较高。近期出现一些工作使用自动化的方法对来自不同模型的回复进行偏好排序,如 Silkie[9]通过调用 GPT-4V 来收集偏好数据。

其他技术方向

除了提升模型的基础能力(如支持的输入/输出形式、性能指标)外,还有一些有意思的问题以及待探索的方向。本综述中主要介绍了多模态幻觉、多模态上下文学习(Multimodal InContext Learning,M-ICL)、多模态思维链(Multimodal Chain of Thought,M-CoT)和 LLM 辅助的视觉推理(LLM-Aided Visual Reasoning,LAVR)等。

多模态幻觉的研究主要关注模型生成的回答与图片内容不符的问题。视觉和文本本质上是异构的信息,完全对齐两者本身就具有相当大的挑战。增大图像分辨率和提升训练数据质量是降低多模态幻觉的两种最直观的方式,此外我们仍然需要在原理上探索多模态幻觉的成因和解法。例如,当前的视觉信息的 Token 化方法、多模态对齐的范式、多模态数据和 LLM 存储知识的冲突等对多模态幻觉的影响仍需深入研究。

多模态上下文学习技术为少样本学习方法,旨在使用少量的问答样例提示模型,提升模型的few-shot 性能。提升性能的关键在于让模型有效地关注上下文,并将内在的问题模式泛化到新的问题上。以 Flamingo[10]为代表的工作通过在图文交错的数据上训练来提升模型关注上下文的能力。目前对于多模态上下文学习的研究还比较初步,有待进一步探索。

多模态思维链的基本思想是通过将复杂的问题分解为较简单的子问题,然后分别解决并汇总。相较于纯文本的推理,多模态的推理涉及更多的信息来源和更复杂的逻辑关系,因此要复杂得多。当前该方面的工作也比较少。

LLM 辅助的视觉推理方法探索如何利用 LLM 强大的内嵌知识与能力,并借助其他工具,设计各种视觉推理系统,解决各种现实问题。相比于通过端到端训练获得单一模型,这类方法一般关注如何通过免训练的方式扩展和加强 LLM 的能力,从而构建一个综合性的系统。

挑战和未来方向

针对 MLLM 的研究现状,我们进行了深入思考,将挑战与可能的未来发展方向总结如下:

  • 现有 MLLM 处理多模态长上下文的能力有限,导致模型在长视频理解、图文交错内容理解等任务中面临巨大挑战。以 Gemini 1.5 Pro 为代表的 MLLM 正在掀起长视频理解的浪潮,而多模态图文交错阅读理解(即长文档中既有图像也有文本)则相对空白,很可能会成为接下来的研究热点。
  • MLLM 服从复杂指令的能力不足。例如,GPT-4V 可以理解复杂的指令来生成问答对甚至包含推理信息,但其他模型这方面的能力则明显不足,仍有较大的提升空间。
  • MLLM 的上下文学习和思维链研究依然处于初步阶段,相关的能力也较弱,亟需相关底层机制以及能力提升的研究探索。
  • 开发基于 MLLM 的智能体是一个研究热点。要实现这类应用,需要全面提升模型的感知、推理和规划能力。
  • 安全问题。MLLM 容易受设计的恶意攻击影响,生成有偏的或不良的回答。该方面的相关研究也仍然欠缺。
  • 目前 MLLM 在训练时通常都会解冻 LLM,虽然在训练过程中也会加入部分单模态的文本训练数据,但大规模的多模态和单模态数据共同训练时究竟对彼此互有增益还是互相损害仍然缺乏系统深入的研究。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值