<img src="https://res.cloudinary.com/montaigne-io/image/upload/v1720976476/E373E33C-FF3D-4B06-B8AB-D018804ED3DD.png" style="background-color:initial;max-width:min(100%,2148px);max-height:min(1350px);;background-image:url(https://res.cloudinary.com/montaigne-io/image/upload/v1720976476/E373E33C-FF3D-4B06-B8AB-D018804ED3DD.png);height:auto;width:100%;object-fit:cover;background-size:cover;display:block;" width="2148" height="1350"> <ul class="dashed" data-apple-notes-indent-amount="0"><li><span style="font-family: '.PingFangSC-Regular'">文章标题:</span>AnyGPT: Unified Multimodal LLM with Discrete Sequence Mod- eling</li><li><span style="font-family: '.PingFangSC-Regular'">文章地址:</span><a href="https://arxiv.org/abs/2402.12226">https://arxiv.org/abs/2402.12226</a> </li><li>ACL 2024</li></ul> 文章提出了一个名为AnyGPT的多模态大模型,包含语音,文本,图片和音乐,该模型能够实现多模态输入和输出,并且将所有模态都看作离散的表示,统一处理所有模态,而内核使用大语言模型LLM进行建模,因此该模型可以在现有的LLM框架上去训练,仅仅在数据处理层面上有所差异,将新的模态无缝地加入到模型中。此外,文章为了训练模型,构造了一个多模态的指令数据集用于多模态到多模态的对齐。 当前有很多多模态大模型,但都是以多模态输入为主,很少有同时具备多模态理解和输出的能力。如果有同时具备两者能力的模型,其处理多模态信息的方式较复杂,并且需要修改现有的模型和方法,训练的难度较大。为此,文章提出了一种简单有效的模型,用统一的离散表示来统一处理多模态数据。文章的贡献如下: - 提出了基于token的多模态大模型AnyGPT,能够同时理解和生成多模态数据。 - 构造了多模态混合的多轮对话数据集AnyInstruct-108k - 展示了离散表示可以在语言模型中有效地统一多个模态 下面介绍一下AnyGPT,首先介绍tokenizer。对于图片模态数据,模型使用SEED tokenizer,该tokenizer于2023年提出,专用于图片模态的离散表示。对于语音模态数据,模型使用SpeechTokenizer的RVQ-1,也就是第一层token,该层token包含着语音数据的语义信息。最后对于音乐模态,对于该模态,文章使用了Encodec对其进行tokenize,在该文章的设置中由于Encodec的离散编码有四层,文章将每一帧四层token平铺,得到一维的离散表示。 下表展示了各模态token化的细节。 <img src="https://res.cloudinary.com/montaigne-io/image/upload/v1720976476/EE3C4B1C-3A82-40B3-983B-D2EF42B2BB14.png" style="background-color:initial;max-width:min(100%,1054px);max-height:min(418px);;background-image:url(https://res.cloudinary.com/montaigne-io/image/upload/v1720976476/EE3C4B1C-3A82-40B3-983B-D2EF42B2BB14.png);height:auto;width:100%;object-fit:cover;background-size:cover;display:block;" width="1054" height="418"> 在数据生成阶段,对于不同模态的高质量生成同样存在巨大的挑战。在LLM得到各模态语义token输出后,文章提出了两阶段框架,对不同模态进行了不同的处理,实现了高质量的数据生成。对于图片模态,将SEEDtoken作为扩散模型的输入,实现了图片的高质量生成。对于语音数据,该模型得到语义token后,使用SoundStorm模型以非自回归方式生成了语音数据的声学token,然后再将语义token和声学token共同解码,得到了高质量的语音数据,该SoundStorm模型使用SpeechTokenizer的token进行训练。最后对于音乐模态数据,直接将得到的token重新组织成四层token并解码得到音乐数据。 然后就是构造一些模态对其的数据用于模型的训练,这部分由于不是重点就省略了,具体可看原文。 下面展示一下模型的实验结果,可见模型在图像理解,图像生成,语音识别,TTS,音乐理解和生成,多个模态的任务上都能达到较好的水准。 <img src="https://res.cloudinary.com/montaigne-io/image/upload/v1720976476/688CCE28-A029-4C64-B6B0-11230204EE34.png" style="background-color:initial;max-width:min(100%,1904px);max-height:min(664px);;background-image:url(https://res.cloudinary.com/montaigne-io/image/upload/v1720976476/688CCE28-A029-4C64-B6B0-11230204EE34.png);height:auto;width:100%;object-fit:cover;background-size:cover;display:block;" width="1904" height="664"> <img src="https://res.cloudinary.com/montaigne-io/image/upload/v1720976476/4AF6928A-94C8-4C98-9F79-F7A238814308.png" style="background-color:initial;max-width:min(100%,1874px);max-height:min(462px);;background-image:url(https://res.cloudinary.com/montaigne-io/image/upload/v1720976476/4AF6928A-94C8-4C98-9F79-F7A238814308.png);height:auto;width:100%;object-fit:cover;background-size:cover;display:block;" width="1874" height="462"> <img src="https://res.cloudinary.com/montaigne-io/image/upload/v1720976476/BBF3D90B-C048-40A6-B05B-70BA6028CBA4.png" style="background-color:initial;max-width:min(100%,1716px);max-height:min(428px);;background-image:url(https://res.cloudinary.com/montaigne-io/image/upload/v1720976476/BBF3D90B-C048-40A6-B05B-70BA6028CBA4.png);height:auto;width:100%;object-fit:cover;background-size:cover;display:block;" width="1716" height="428"> <img src="https://res.cloudinary.com/montaigne-io/image/upload/v1720976476/1B8EEDAE-9BEC-49CC-BE2D-30818A731552.png" style="background-color:initial;max-width:min(100%,924px);max-height:min(426px);;background-image:url(https://res.cloudinary.com/montaigne-io/image/upload/v1720976476/1B8EEDAE-9BEC-49CC-BE2D-30818A731552.png);height:auto;width:100%;object-fit:cover;background-size:cover;display:block;" width="924" height="426"> 最后,文章提到了未来的方向和AnyGPT的局限: - Any-to-Any多模态大模型的评判基准(Benchmark) - 加强LLM,扩大规模或者使用混合专家模型MOE - 更好的tokenizer - 更长的context上下文,对于AnyGPT只支持5s的音乐