分类: AI

  • 深度学习中的正则化技巧:探索与应用

    近年来,深度学习在各个领域取得了令人瞩目的成就。然而,随着模型复杂度的增加,过拟合问题也变得愈发突出。正则化技术作为解决过拟合问题的关键手段,成为了深度学习研究中的重要课题。本文将结合图中的内容,深入探讨几种常见的正则化方法及其在实际应用中的效果。

    lQDPKd5vI-xo0PXNAWfNAxawo0p3r-Sn1SEGRRiONKkeAA_790_359.jpg

    1. 早停法(Early Stopping)

    图中的第9页详细介绍了早停法,这是一种简单而有效的正则化方法。早停法通过在验证集的性能不再提升时停止训练,防止模型在训练集上过度拟合。第11页展示了早停法的原理图,显示了验证误差随训练次数变化的曲线。通过及时停止训练,早停法能有效避免模型在训练数据上的过度拟合。

    2. L1和L2正则化

    图中的第6页和第7页分别介绍了L1和L2正则化。L1正则化通过在损失函数中加入权重的绝对值和,促使模型产生稀疏权重,有助于特征选择。L2正则化则通过加入权重的平方和,使得权重更平滑,减小模型的复杂度。第13页和第14页展示了L1和L2正则化在不同数据集上的实验结果,验证了其有效性。

    3. Dropout

    Dropout是一种随机去除神经元的正则化方法,图中的第15页至第23页详细介绍了其原理和应用。Dropout通过在训练过程中随机丢弃一部分神经元,迫使模型不依赖于某些特定的路径,从而增强了模型的泛化能力。第18页至第21页的实验结果显示了Dropout在不同复杂度模型上的应用效果,验证了其在防止过拟合方面的显著作用。

    4. 数据增强

    数据增强是一种通过对训练数据进行各种变换来增加数据量的方法,图中的第24页至第26页介绍了几种常见的增强技术,如旋转、平移、缩放等。通过增加数据的多样性,数据增强能有效提高模型的泛化能力。第25页展示了不同数据增强技术的效果对比,说明了数据增强在实际应用中的重要性。

    5. 批归一化(Batch Normalization)

    批归一化通过在每一层网络中对输入数据进行归一化处理,减少了内部协变量偏移,加快了训练速度,并在一定程度上具有正则化效果。图中的第27页至第30页详细介绍了批归一化的原理和在不同网络结构中的应用效果。第29页的实验结果显示,批归一化不仅能加快收敛速度,还能提高模型的最终性能。

    6. 其他正则化方法

    除了上述几种常见的正则化方法,图中的第31页至第37页还介绍了一些其他的正则化技术,如权重剪枝、随机噪声注入等。这些方法通过不同的机制抑制模型的过拟合,增强了模型的泛化能力。第34页和第36页的实验结果展示了这些方法在实际应用中的效果。

    总结

    正则化技术在深度学习中扮演着至关重要的角色,通过合理应用这些方法,研究人员和工程师们能够有效地提高模型的泛化能力,避免过拟合问题。随着深度学习技术的不断发展,相信将会有更多创新的正则化方法被提出,为我们带来更强大、更稳定的模型。

    通过本文的探讨,我们不仅了解了几种常见正则化方法的原理和应用,还通过图中的实验结果看到了它们在实际中的效果。希望这些内容能为读者在深度学习研究和应用中提供有价值的参考。

  • Llama-3-70B:突破性未审查模型

    在人工智能领域,模型的性能和应用范围不断拓展。最近,由Exllama社区的一位成员进行的一次微调,使得Llama-3-70B模型在未审查的通用智能排行榜上名列前茅。这一排行榜是一个封闭的基准,无法通过作弊来提高分数。这一成就不仅让人瞩目,也为未来的AI发展提供了新的方向。

    新模型的诞生

    Llama-3-70B模型的微调由Exllama社区的一名成员完成。这次微调不仅提升了模型的性能,还使其在未审查的通用智能排行榜上夺得了第一名。这一排行榜由其创建者严格维护,确保其真实性和公平性。

    排行榜创建者表示:“大多数我测试的模型在默认模板下表现良好,我猜测是llama.cpp检测到了这个模板。然而,turboderp/Cat-Llama-3-70B-instruct在使用提供的模板时,得分有了显著提升。它的知识量相当惊人,并且在使用聊天模板时几乎没有受到审查。”

    模型的具体表现

    Llama-3-70B模型在使用聊天模板时表现尤为出色。它不仅展示了广泛的知识,还在对话过程中表现出了一种“未审查”的特质。未审查的特质意味着模型能够更加自由地生成内容,而不受严格的限制。这种特性使得模型在实际应用中更加灵活和实用。

    为了充分发挥Llama-3-70B模型的潜力,用户需要使用ChatML格式来运行该模型。此外,系统提示通常使用“Below is a”语句效果更佳,而非“You are”语句。例如,一个好的系统提示可以是:“Below is a conversation between an AI entity and a human.”

    使用指南

    如果您有兴趣探索和使用Llama-3-70B模型,可以在以下链接找到完整精度的模型:

    在运行模型时,请务必使用ChatML格式,并且在系统提示中使用“Below is a”语句。这将确保模型在对话中的最佳表现。

    未来展望

    Llama-3-70B模型的成功不仅是技术上的突破,也是人工智能应用领域的一次重要进步。它展示了通过微调和优化,可以显著提升模型性能,并使其在实际应用中更加灵活和高效。未来,我们可以期待更多类似的创新,为我们的生活带来更多便利和可能性。


    参考文献:

    • Exllama社区成员微调的Llama-3-70B模型
    • 未审查的通用智能排行榜创建者的评论
  • ChatTTS:专为对话场景设计的文本转语音模型

    在人工智能领域中,文本转语音(TTS)技术一直是备受关注的研究方向。今天,我们要介绍的是ChatTTS,一个专为对话场景设计的文本转语音模型。ChatTTS不仅支持中文和英文,还能够在多种应用中展现出色的表现。

    ChatTTS的特点

    对话式TTS

    ChatTTS针对对话任务进行了优化,能够生成自然流畅的语音,并支持多说话人。这使得它在模拟人类对话时,更加真实和生动。

    细粒度控制

    该模型能够预测和控制细粒度的韵律特征,包括笑声、停顿和插入词等。这使得生成的语音更加丰富和多样,能够更好地传达说话者的情感和意图。

    更好的韵律

    ChatTTS在韵律方面超越了大部分开源的TTS模型。它能够生成具有自然韵律的语音,使得听起来更加舒适和真实。同时,ChatTTS还提供预训练模型,支持进一步的研究和应用。

    使用方法

    基本用法

    以下是ChatTTS的基本用法示例:

    import ChatTTS
    from IPython.display import Audio
    
    chat = ChatTTS.Chat()
    chat.load_models()
    
    texts = ["<PUT YOUR TEXT HERE>",]
    
    wavs = chat.infer(texts, use_decoder=True)
    Audio(wavs[0], rate=24_000, autoplay=True)

    进阶用法

    如果需要更高级的控制,可以使用以下代码:

    import torch
    
    # 采样一个说话人
    std, mean = torch.load('ChatTTS/asset/spk_stat.pt').chunk(2)
    rand_spk = torch.randn(768) * std + mean
    
    params_infer_code = {
      'spk_emb': rand_spk,
      'temperature': .3,
      'top_P': 0.7,
      'top_K': 20,
    }
    
    params_refine_text = {
      'prompt': '[oral_2][laugh_0][break_6]'
    }
    
    wav = chat.infer("<PUT YOUR TEXT HERE>", params_refine_text=params_refine_text, params_infer_code=params_infer_code)

    实际应用案例

    智能客服系统

    ChatTTS可以在智能客服系统中发挥重要作用。通过其自然流畅的语音生成能力,能够提供更加亲切和人性化的客服服务,提升客户满意度。

    教育领域

    在教育领域,ChatTTS可以帮助教师制作生动的教学语音材料。学生可以通过听取这些语音材料,更加直观地理解和掌握知识。

    娱乐领域

    在游戏和影视制作中,ChatTTS可以用于生成角色对话。其自然的语音和情感表达能力,可以使角色更加生动,提升用户的沉浸感。

    未来展望

    ChatTTS展示了语音生成技术的巨大潜力。随着技术的不断进步,未来有望在更多的应用场景中发光发热,带给我们更多的惊喜和便利。

    免责声明

    本文件中的信息仅供学术交流使用,目的在于教育和研究,不得用于任何商业或法律目的。作者不保证信息的准确性、完整性或可靠性。

    计划路线

    • [x] 开源4w小时基础模型和spk_stats文件
    • [ ] 开源VQ encoder和Lora训练代码
    • [ ] 在非refine text情况下, 流式生成音频
    • [ ] 开源多情感可控的4w小时版本
    • [ ] ChatTTS.cpp maybe? (欢迎社区PR或独立的新repo)

    常见问题

    连不上HuggingFace

    请使用modelscope的版本,并设置cache的位置。

    我要多少显存?Infer的速度是怎么样的?

    对于30秒的音频,至少需要4G的显存。对于4090D,1秒生成约7个字所对应的音频,RTF约0.65。

    模型稳定性似乎不够好,会出现其他说话人或音质很差的现象。

    这是自回归模型通常都会出现的问题。说话人可能会在中间变化,可能会采样到音质非常差的结果,这通常难以避免。可以多采样几次来找到合适的结果。

    除了笑声还能控制什么?还能控制其他情感吗?

    在现在放出的模型版本中,只有[laugh]和[uv_break]、[lbreak]作为字级别的控制单元。在未来的版本中我们可能会开源其他情感控制的版本。

    致谢

    • barkXTTSv2valle展示了自回归任务用于TTS任务的可能性。
    • fish-speech一个优秀的自回归TTS模型,揭示了GVQ用于LLM任务的可能性。
    • vocos作为模型中的vocoder。

    特别致谢


    ChatTTS凭借其先进的技术和广泛的应用前景,正在逐步改变我们的生活方式。从智能客服到教育,再到娱乐,ChatTTS的应用无处不在。期待随着技术的进一步发展,ChatTTS能为我们带来更多惊喜和便利。


    参考文献:

    1. ChatTTS GitHub
  • ChatTTS:一个专为对话场景设计的语音生成模型

    近年来,人工智能技术的飞速发展为我们带来了许多创新和便利,其中语音生成技术尤为引人注目。今天,我们要介绍的是一个名为ChatTTS的语音生成模型,它专为对话场景设计,能够在多个应用中展现出色的表现。

    什么是ChatTTS?

    ChatTTS是一种先进的语音生成模型,专门用于对话场景。与传统的语音生成模型不同,ChatTTS不仅关注语音的自然度和流畅度,还特别注重对话中的上下文理解和情感表达。这使得ChatTTS在模仿人类对话方面具有显著优势。

    ChatTTS的技术优势

    上下文理解

    在对话中,理解上下文是至关重要的。ChatTTS通过复杂的算法和深度学习技术,能够准确地捕捉和理解对话中的上下文信息。这使得它在生成语音时,不仅能够准确传达信息,还能保持对话的连贯性。

    情感表达

    人类的对话不仅仅是信息的交换,还包含了丰富的情感。ChatTTS在语音生成时,能够根据对话的内容和情境,适当地调整语音的语调和情感。这使得生成的语音更加生动和真实,增强了用户的互动体验。

    多样化应用

    ChatTTS不仅适用于普通的对话场景,还可以在许多其他领域中发挥作用。例如,在智能客服系统中,ChatTTS可以提供更加自然和亲切的语音服务;在教育领域,ChatTTS可以帮助教师生成生动的教学语音;在娱乐领域,ChatTTS可以用于生成角色对话,提升用户的沉浸感。

    实际应用案例

    智能客服系统

    在智能客服系统中,ChatTTS可以辅助客服人员处理大量的客户咨询。通过其出色的上下文理解能力和情感表达能力,ChatTTS能够生成自然、流畅的语音回复,提升客户的满意度。

    教育领域

    在教育领域,ChatTTS可以帮助教师制作生动的教学语音材料。无论是课前预习还是课后复习,学生都可以通过听取这些语音材料加深对知识的理解。

    娱乐领域

    在游戏和影视制作中,ChatTTS可以用于生成角色对话。其自然的语音和情感表达能力,可以使角色更加生动,提升用户的沉浸感。

    未来展望

    随着人工智能技术的不断进步,语音生成技术将会变得越来越强大和智能。ChatTTS作为这一领域的佼佼者,未来有望在更多的应用场景中发光发热,带给我们更多的惊喜和便利。

    ChatTTS的出现,不仅展示了语音生成技术的巨大潜力,也为我们展望了一个更加智能和便捷的未来。无论是在客服、教育还是娱乐领域,ChatTTS都有着广阔的应用前景,值得我们期待。


    参考文献:

    1. ChatTTS:一个专为对话场景设计的语音生成模型
  • LLMs与多模态生成及编辑:一项综述

    引言

    内容概述

    近年来,随着大型语言模型(LLMs)的快速发展,越来越多的研究开始关注将LLMs与多模态学习相结合。以往的多模态大语言模型(MLLMs)研究主要集中在理解上,而本综述将详细探讨多模态生成领域,涵盖图像、视频、3D和音频等多个领域,并重点介绍这些领域中的里程碑式工作。

    研究范围

    本综述探讨了包括图像、视频、3D模型和音频在内的多种模态的生成。多模态生成包括不同模态的单独生成以及多模态的联合生成。我们不会深入讨论纯文本生成,因为已有许多专门针对该领域进展的综述。我们的主要关注点是近年来出现的大型语言模型如何在生成其他视觉和音频模态方面提供帮助,特别是在开放领域生成中的应用。

    相关研究

    单模态生成综述

    许多综述文章专注于单一模态的生成,例如图像生成[115]、视频生成[116]、3D生成[117]和音频生成[118]。这些研究主要采用预训练的CLIP或T5等语言编码器进行开放领域的文本指导生成。随着LLMs的出现,越来越多的生成工作利用强大的LLMs来增强每种模态的生成能力。我们的工作主要讨论LLMs在各个模态生成中的作用,这是以前的综述中缺乏的。

    LLMs综述

    大量综述文章探讨了LLMs的各个方面。例如,[121]对基于LLMs的自主代理进行了全面审查。此外,[122]和[123]介绍了多模态LLMs,介绍了将LLMs与其他非文本模态结合的论文。这些综述既介绍了多模态理解,也介绍了多模态生成,但主要侧重于多模态理解。相比之下,我们的工作主要集中在生成方面,旨在探讨LLMs在每种模态生成过程中带来的性能和功能改进。

    预备知识

    生成模型

    生成模型可以归纳为从先验分布中抽取潜在样本并将其转换为与目标数据分布对齐的生成样本的过程。以下是几种主要的生成模型:

    1. 生成对抗网络(GANs):GAN由生成器和判别器组成,其中生成器生成假样本,判别器区分真假样本。两者通过博弈论进行训练。[124]
    2. 变分自编码器(VAEs):VAEs包含编码器和解码器,通过潜在空间变量的分布来学习输入数据的表示。[125]
    3. 基于流的模型:这些模型使用一系列可逆变换,将数据分布逐步变换为简单的先验分布。[126]
    4. 扩散模型:扩散模型通过一系列去噪任务实现复杂生成过程,近年来在生成任务中取得了显著进展。[128]
    5. 自回归模型:这些模型通过依赖于过去值来预测未来值,广泛用于时间序列预测、语音合成和自然语言处理。[129]

    多模态对齐模型

    CLIP[23]是一种开创性的图像-语言对齐模型,通过对比学习同时学习图像编码器和文本编码器。它在多个下游任务中表现出色,如物体识别和视频动作识别。CLAP[131]则对齐文本和音频信息,用于文本指导的音频生成。

    大型语言模型

    现代大型语言模型利用Transformer架构生成上下文丰富的嵌入,这些模型在大量文本语料库上进行训练,然后针对特定任务进行微调。[137][138][139][140] 例如,GPT系列模型主要使用Transformer解码器,经过大规模多样化数据集的预训练后,能够生成高质量的文本。

    多模态大型语言模型

    多模态大型语言模型(MLLMs)最近开始兴起,旨在赋予LLMs理解或生成其他模态的能力。这些模型通常包含额外的预训练模态特定编码器,用于特征提取和输入投影,以及与LLM骨干对齐的多模态隐藏特征。[142][143][144][145][146]

    图像生成与编辑

    图像生成

    使用CLIP进行文本指导的图像生成

    过去,图像-文本对齐模型如CLIP[23]在文本指导的图像生成中发挥了重要作用,确保生成的图像与给定的文本提示相符。这些模型通过对齐文本编码器和图像编码器的嵌入,生成与文本描述相匹配的图像。[12][169][200][10][201][202]

    使用LLMs进行文本指导的图像生成

    随着MLLMs的发展,LLMs在视觉内容处理中的应用越来越广泛。MLLMs提供了统一的界面,用于理解和生成文本及视觉信息,增强了生成过程的交互性和可控性。例如,CM3Leon是一种自回归MLLM,能够同时生成文本和图像输出[156]。DreamLLM是第一个能够生成自由形式交错内容的MLLM,支持多轮对话,并且在图像描述和视频问答任务中表现出色[151]。这些模型通过结合视觉和语言信息,显著提高了图像生成的质量和用户体验。

    图像编辑

    使用CLIP/T5进行图像编辑

    CLIP模型支持基于语言的图像编辑,例如SDEdit通过用户输入的描边、草图或掩码生成逼真的图像,并通过文本指令编辑现有图像。[226] DiffusionCLIP[227]和Imagic[231]等方法通过调整预训练的扩散模型来编辑目标图像,展示了出色的编辑能力。

    使用LLMs进行图像编辑

    LLMs提供了强大的基于对话或交互的图像编辑能力。例如,InstructPix2pix通过构建数据元组(原始图像、提示、目标图像),训练模型根据编辑提示编辑图像[242]。CHATEDIT则通过对话进行面部图像编辑,分解为用户编辑请求跟踪、图像编辑和响应生成子任务[243]。这些方法通过结合LLMs强大的文本理解和生成能力,显著提高了图像编辑的精确度和灵活性。

    视频生成与编辑

    视频生成

    使用CLIP进行文本到视频生成

    基于扩散模型和变压器模型的文本到视频生成方法已经取得了显著进展。扩散模型因其训练的简便性成为主流,其中包括像素级和潜在级视频扩散模型。[14][15][16][17] 这些模型通过逐帧生成视频,确保生成的视频与文本提示一致。

    使用LLMs进行文本到视频生成

    最近的一些研究利用MLLMs进行视频生成。例如,VideoPoet利用预训练的自回归变压器模型处理多模态数据,生成时间一致且运动保真度高的视频[69]。MAGVIT-v2探索了MLLMs的标记化技术,将视觉输入转换为离散标记,增强了大型语言模型在图像和视频生成任务中的性能[70]。

    视频编辑

    使用CLIP/T5进行文本指导的视频编辑

    Tune-A-Video提出了一种基于预训练扩散模型的文本指导视频编辑方法,通过对目标视频进行单次调优,实现多种视频编辑功能[246]。Video-P2P和FateZero等方法通过更好的反演技术和注意力图操作,确保在编辑过程中背景保持不变,提高了编辑的时间一致性[248][249]。

    使用LLMs进行文本指导的视频编辑

    目前利用LLMs进行视频编辑的研究相对较少。InstructVid2Vid通过生成合成的视频指令对,提高了可控视频编辑的多样性和现实性[258]。InsV2V扩展了InstructPix2Pix的范式,使用LLMs构建合成数据,用于训练视频编辑模型[257]。

    3D生成与编辑

    3D生成

    使用CLIP/T5进行3D生成

    利用CLIP的多模态表示能力,可以通过文本描述或查询指导3D资产的生成和编辑。Text2Mesh通过预测颜色和局部几何细节,生成符合目标文本提示的3D网格[26]。DreamFusion则利用SDS损失从预训练的文本到图像生成模型中提取3D资产,显著提高了生成质量[41]。

    使用LLMs进行3D生成

    LLMs与3D资产的结合是一个新兴的研究方向,利用LLMs强大的语言理解能力,通过文本指令直接增强3D资产的生成、操作或理解。

    例如,3D-GPT提出了一种训练自由的框架,包含任务调度、概念化和建模代理,通过这些代理,可以生成与语言对应的Blender代码,从而提高最终用户在程序化3D建模中的效率[80]。SceneCraft引入了一个LLM代理,通过生成Blender脚本,将输入的文本查询转换为3D场景[341]。此外,PointLLM结合人类指令处理有色点云,并利用LLMs预测用户问题的响应[342]。

    3D编辑

    使用CLIP/T5进行3D编辑

    Blended-NeRF[344]提出了一种使用CLIP损失修改现有NeRF场景中特定感兴趣区域的框架,允许通过对比学习进行目标区域的编辑。NeRF-Art通过全局-局部对比学习策略,对预训练的NeRF模型进行风格化[27]。TextDeformer通过引入基于雅可比矩阵的网格变形技术,实现了基于文本的几何变形[345]。

    使用LLMs进行3D编辑

    目前,利用LLMs进行3D编辑的方法相对较少。编辑更多地像是LLMs生成的一个子任务。例如,3D-GPT和SceneCraft都可以直接编辑3D资产[80][341]。我们将继续关注LLMs在3D编辑中的最新发展,并在未来进行讨论。

    小结

    通过将CLIP或LLMs与3D资产结合,用户可以用自然语言表达他们的创意意图或期望的修改,简化了交互过程,减少了对专业软件或技术专长的需求。此外,将文本信息整合到3D生成管道中,提高了生成输出的可解释性和可调节性,使用户能够更好地理解和微调结果。

    音频生成、理解与编辑

    领域

    音频生成、理解和编辑领域的研究已经取得了显著的进展。以下是LLMs在这些领域的主要角色:

    LLMs在音频生成、理解和编辑中的角色

    1. 作为骨干(Backbone):LLMs作为复杂系统的核心架构,用于处理文本和音频标记。例如,AudioLM利用离散标记将音频生成看作是语言建模任务[110]。
    2. 作为调节器(Conditioner):LLMs作为文本编码器,将输入文本编码为条件,从而引导系统的响应或输出。例如,TANGO使用FLAN-T5作为文本编码器,生成音频的潜在表示[98]。
    3. 作为标签器(Labeller):LLMs将类别标签转换为音频描述,用于数据增强和自动音频标注。例如,Wu等人通过结合预训练模型和LLMs,改进了自动音频描述[99]。
    4. 作为代理(Agent):LLMs与各种工具进行交互,管理和执行复杂的多维操作。例如,AudioGPT利用ChatGPT作为中心节点,处理音频和语音应用[104]。
    5. LLMs启发的骨干(Inspired Backbone):使用LLMs的架构对离散音频标记进行建模。例如,VALL-E结合自回归和非自回归语言模型对编码标记进行建模[53]。

    音频生成

    音频生成领域的研究重点在于生成多样化和复杂的音频内容。例如,Make-an-Audio 2[100]和WavJourney[105]通过结合多模态方法,实现了高保真音频生成。AudioLM通过将输入音频转换为离散标记,模拟语言建模任务,生成高质量音频[110]。

    音频理解

    音频理解涉及对环境中各种声音的分析和解释,包括识别和分类声音、模式识别以及理解声音的上下文或来源。LTU[85]和SALMONN[91]通过结合LLMs和音频编码器,提高了音频理解的能力。AudioGPT和HuggingGPT通过协调工具,提升了音频理解的交互能力[104][103]。

    音频编辑

    音频编辑涉及对音频元素的实时调整和修改。例如,Loop Copilot结合LLMs和专用AI音乐模型,创建了一个协作人机音乐循环创作的对话界面[107]。

    工具增强的多模态代理

    动机

    LLMs有时无法处理其训练数据中未包含的信息,如实时数据或私人数据。为了克服这些限制,许多研究提出通过API或外部工具增强LLMs,例如检索增强生成(RAG)和视觉基础模型。这些工具可以通过自然语言指令调用,并将结果整合到LLMs的输出中。例如,LLMs可以使用天气API获取某地的当前温度和湿度,并将其用于生成自然语言响应。

    多模态代理通过增强LLMs的功能,使其能够生成和编辑图像、视频和音频,从而实现更自然和多样化的人机交互以及更强大的创意应用。

    方法

    工具增强的LLMs多模态交互框架一般包括三个主要阶段:

    1. 任务规划:LLM作为控制器,将自然语言指令解释为工具调用方案。核心目标是决定使用哪些工具,并为工具准备参数。
    2. 任务执行:主机中包含多个外部多模态工具,例如图像生成、视频编辑或音频合成。工具的调用基于任务规划阶段获得的调用方案。
    3. 响应生成:通过提示LLM,将任务执行的输出生成用户友好的响应。

    现有方法主要分为两类:

    无需训练的方法

    这些方法主要依赖提示工程和上下文学习,以增强LLMs的推理能力。例如,VISPROG和Visual ChatGPT通过生成代码或直接调用视觉基础模型,解决复杂的组合视觉任务[219]。HuggingGPT使用分阶段规划和模型选择,通过调用Hugging Face上的多种模型,整合多模态任务的预测结果[103]。

    指令调优的方法

    这些方法通过训练语言模型更精确地遵循人类指令,从而显著提高了工具使用的能力。例如,GPT4Tools通过自指令生成大量多模态上下文和工具描述,训练LLMs使用工具进行各种视觉任务[402]。ModelScope-Agent结合工具检索模块,增强了开源LLMs的工具使用能力[418]。

    演示

    一些多模态代理不仅开源代码,还发布了在线演示,展示其功能。例如,Visual ChatGPT和HuggingGPT可以生成和编辑图像,并通过调用图像生成或编辑模型(如Stable Diffusion和ControlNet)根据文本提示创建或修改图像[217][103]。InternGPT和ControlLLM通过支持指点设备,增强了交互性,用户可以通过点击选择感兴趣的区域进行编辑[218][407]。

    小结

    工具增强的多模态代理在提升人机交互的自然性和多样性方面具有重要意义。这些方法通过结合外部工具,显著增强了LLMs的能力,但也面临着如何生成多样化和高质量指令语料库以及如何在闭合语料库中训练的模型上进行泛化等挑战。

    生成AI的安全性

    生成模型的安全性问题引起了越来越多的关注,研究主要集中在减少偏见和有害内容的生成、保护版权以及缓解生成模型产生的虚假内容带来的影响。

    攻击与防御

    研究包括基于优化的攻击、提示级别的操作和数据中毒方法:

    1. 基于优化的攻击:展示了对模型性能造成负面影响或诱导偏见和有害输出的对抗技术[430][431]。
    2. 提示级别攻击:揭示了在推理阶段人造输入绕过安全措施并引发不安全输出的风险[440][441]。
    3. 数据中毒方法:暴露了通过注入恶意数据输入操纵模型的可能性[444][445]。

    防御与检测

    防御方法主要包括两种:

    1. 检测机制:不修改模型参数,通过检测机制或操控输入提示上下文来防御。例如,Latent Guard通过在潜在空间中检测不安全输入提示,比传统的黑名单方法更具鲁棒性[449]。
    2. 对齐算法:通过对齐算法将模型与人类偏好或价值观对齐。Proximal Policy Optimization(PPO)算法广泛用于对齐LLMs,Direct Preference Optimization(DPO)和相关方法通过直接从偏好数据中学习对齐,提供了更高效的对齐算法[451][452]。

    此外,生成模型的安全性评估还包括防止多模态生成模型生成虚假内容和嵌入水印的技术,以保护版权[465][466][467]。

    数据集

    为了评估生成AI的安全性,研究人员开发了一系列数据集:

    • SafetyBench:一个多选题数据集,用于评估生成内容的安全性,包含7个安全类别的11,435个条目[468]。
    • GOAT-Bench:评估不安全表情包的多样化话题数据集,包括隐含仇恨言论、性别歧视和网络欺凌等[469]。
    • ToViLaG:专为视觉LLMs设计的数据集,解决生成的不当内容,如冒犯性文本和不适当的图像[470]。

    这些数据集为进一步提高生成模型的安全性提供了全面的评估。

    小结

    通过先进的检测和数据算法技术,生成模型的安全性得到了显著提升。开源项目提供的安全检查功能,为用户提供了更安全的使用体验。水印嵌入和数据追踪技术在保护版权方面也取得了显著进展。采用这些安全技术的公共项目,将增强多模态生成应用的安全性和可信度。

    应用

    图像

    在图像生成领域,扩散模型的发展极大地提高了合成图像的质量和真实性,催生了许多高质量的文本到图像生成工具和多模态条件图像编辑或生成解决方案。例如:

    • Midjourney:提供高质量、真实感强的图像生成工具,广泛应用于内容创作和设计[473]。
    • Stability AI:提供强大的开源生成模型,用户社区开发了各种使用方法,使得图像生成模型得以广泛应用[474]。
    • DALLE-3:集成了图像生成能力到ChatGPT4聊天机器人中,通过文本提示生成和修改图像[152]。

    这些工具通过结合LLMs改进生成图像的质量和用户体验,展示了LLMs在图像生成中的巨大潜力。

    视频

    随着大规模视频生成模型的出现,用户可以通过输入文本描述生成高质量的视频片段。例如:

    • PikaRunway’s Gen2:提供商业化的视频生成工具[478][479]。
    • AnimateDiffVideoCrafter:开源的视频生成模型[20][19]。

    这些工具降低了电影和电视行业的视频制作成本,展示了LLMs在视频生成中的应用前景。

    音频

    在音频生成领域,LLMs的应用已经取得了显著进展,涵盖了文本到语音生成、声音传输、音乐生成等多个方面。例如:

    • Microsoft Azure:在语音生成领域处于领先地位,推动了AI生成声音在短视频平台中的应用[481]。
    • Descript:基于AI的音频和视频编辑工具,可以将音频和视频中的语音转录为文本,用户可以像编辑Word文档一样修改音频和视频[482]。

    此外,音乐生成也是一个热门领域,例如:

    • Suno AI:用户可以通过提供文本提示生成高质量的歌曲[483]。
    • Stability AudioGoogle’s MusicFX:提供音乐生成产品,进一步扩展了音频生成的能力[484][485]。

    3D

    3D模型生成在电影、游戏、工业设计、建筑等领域具有重要应用。例如:

    • MetaEpic Games’ MetaHuman Creator:在3D建模和虚拟现实技术方面取得了显著进展[488][489]。
    • Luma AIAdobe:通过生成3D模型或将2D图像转换为3D模型,简化了3D内容的创建过程[490][491]。

    此外,Wonder Studio提供了强大的AI工具,可以在视频中替换角色,为个性化内容创建提供了新的可能性[493]。

    其他

    AI驱动的软件需要处理各种模态的输入数据,生成AI在数学、法律、教育和机器人等领域的应用前景广阔。例如,AI生成的电影结合3D技术用于视频、音乐和语音生成,与人类艺术家合作,创造高质量的电影体验。

    未来展望

    技术展望

    高分辨率生成

    高分辨率多模态生成在虚拟现实、电影制作等领域至关重要,提高了生成内容的质量和用户体验。LLMs可以通过更好地理解复杂指令和生成更准确、多样化的输出,解决高分辨率生成的挑战。近期在不同模态(如图像、视频、3D和音频)生成方面的进展显著提高了生成内容的质量。未来的研究可以通过结合LLMs,进一步提升高分辨率内容的生成能力。此外,高分辨率内容生成通常需要大量的硬件资源和时间成本,因此高效的生成策略也值得深入研究。

    长期序列生成

    长期序列生成对视频和音频的沉浸式体验至关重要。在视频方面,它可以描绘连续的场景和叙事,而在音频方面,它支持音乐和对话的持续发展。LLMs通过捕捉复杂的模式和依赖关系,生成连贯且上下文相关的长期序列,从而提升生成内容的连贯性和一致性。未来的研究可以通过微调预训练的LLMs,并结合多模态数据集,生成跨不同模态的连贯长序列。

    更精确和细粒度的生成控制

    精确和细粒度的生成控制是AIGC中的一个重要课题。它不仅可以生成更真实和高质量的多模态内容,还可以促进人机交互的有效性。LLMs通过更好地理解控制信号中的细微差别,提高控制信号与生成内容之间的匹配度。例如,在图像或视频中进行文本渲染时,强大的语言模型可以显著提升拼写能力和生成质量。

    多视角一致性

    多视角一致性(MVC)在3D生成中尤为重要,确保对象从不同视角观察时的外观一致性。MVC对增强用户在增强现实(AR)、虚拟现实(VR)和计算机图形学中的体验至关重要。近期的研究在3D生成中引入了稀疏3D先验和扩散采样技术,以增强一致性并解决复杂几何体的生成问题。未来的研究可以结合LLMs,通过提供更多的先验知识,提高多视角一致性和生成质量。

    多模态生成的统一训练

    多模态生成是指同时生成包括图像、视频、3D对象和音频在内的多种模态内容。当前的大多数方法仅关注单一模态的生成,而统一训练多模态生成模型的研究相对较少。通过特征对齐和联合训练,可以实现统一的多模态生成模型,进一步提升生成内容的多样性和连贯性。

    高效的训练和部署策略

    随着数据集和模型规模的不断扩大,高效的训练和部署策略变得愈加重要。低秩近似技术和混合精度训练等方法在加速训练和降低计算成本方面表现出色。未来的研究可以进一步优化这些技术,并探索量化方法以提高推理效率和模型部署的可扩展性。

    伦理安全的内容生成

    生成模型的安全性一直是研究的热点,尤其是视频生成模型的能力不断增强,带来了更多的社会风险。未来的研究需要综合利用检测、对齐和后处理检查技术,确保生成模型的安全性和鲁棒性。

    应用展望

    语义音频合成

    语义音频合成涉及根据语义描述或上下文线索生成音频信号,创造具有特定特征或属性的沉浸式听觉体验。例如,基于文本描述的声音景观或音乐作品可以通过多模态生成模型转化为音频波形,增强多媒体内容的现实感和丰富性。

    多模态叙事

    多模态叙事通过融合不同模态来创造引人入胜的叙事,提供多感官交互。例如,基于文本提示生成图像序列、视频片段或音频叙事,实现更加沉浸式的叙事体验。

    交互式内容设计

    交互式内容设计旨在实时创建和操控媒体元素,使用户能够积极参与创作过程。多模态生成模型通过提供实时的交互和操控能力,提高创作效率和灵活性,降低创作门槛。

    3D场景生成

    3D场景生成在虚拟世界、游戏、仿真和建筑可视化中具有重要应用。多模态生成模型可以通过文本描述或概念草图生成复杂的3D场景,减少手动建模的需求,加速设计过程。

    可定制化虚拟角色

    可定制化虚拟角色是用户可以根据个人偏好和特征进行个性化和调整的数字化身。多模态生成模型通过生成多样化的媒体类型(如图像、文本和音频)来创建逼真的虚拟角色。例如,生成模型可以根据文本描述生成虚拟角色的头像、服饰和表情,并通过语音合成技术使角色能够进行自然的对话。以下是几个具体应用:

    未来展望

    语义音频合成

    语义音频合成涉及根据语义描述或上下文线索生成音频信号,创造具有特定特征或属性的沉浸式听觉体验。多模态生成模型通过结合文本和图像等多模态数据,可以生成更丰富和个性化的音频内容,用于娱乐、教育和虚拟现实等领域。例如,基于文本描述的声音景观或音乐作品可以通过多模态生成模型转化为音频波形,增强多媒体内容的现实感和丰富性。

    多模态叙事

    多模态叙事通过融合不同模态来创造引人入胜的叙事,提供多感官交互。例如,基于文本提示生成图像序列、视频片段或音频叙事,实现更加沉浸式的叙事体验。多模态生成模型支持从文本到图像、视频和音频的多方向合成,使得故事情节更加生动和多样化。

    交互式内容设计

    交互式内容设计旨在实时创建和操控媒体元素,使用户能够积极参与创作过程。多模态生成模型通过提供实时的交互和操控能力,提高创作效率和灵活性,降低创作门槛。例如,用户可以通过文本指令实时生成和编辑图像、视频和音频,快速实现创意。

    3D场景生成

    3D场景生成在虚拟世界、游戏、仿真和建筑可视化中具有重要应用。多模态生成模型通过文本描述或概念草图生成复杂的3D场景,减少手动建模的需求,加速设计过程。例如,设计师可以通过简单的文本描述生成建筑和室内设计的3D模型,快速进行迭代和优化。

    可定制化虚拟角色

    可定制化虚拟角色是用户可以根据个人偏好和特征进行个性化和调整的数字化身。多模态生成模型通过生成多样化的媒体类型(如图像、文本和音频),创建逼真的虚拟角色。例如,生成模型可以根据文本描述生成虚拟角色的头像、服饰和表情,并通过语音合成技术使角色能够进行自然的对话。

    世界模型的未来

    世界模型(World Models)是当前的热门话题,许多研究人员认为世界模型将在不久的将来成为现实。世界模型涉及感知、理解和生成多模态信息,为实现更智能的人工智能系统提供了可能性。以下是几个核心应用:

    多模态教育和沟通

    世界模型在教育和沟通中具有巨大潜力,通过提供多模态学习体验和沉浸式互动,促进学习和交流。例如,学生可以通过虚拟现实和增强现实技术,在沉浸式环境中学习复杂的概念和技能。多模态生成模型可以生成个性化的教育内容,满足不同学习风格和需求。

    电影生成

    世界模型在电影生成中代表了一种范式转变,为电影制作人提供了前所未有的创作自由和灵活性。多模态生成技术使得电影制作人能够无缝整合对话、视觉效果、声音效果和音乐,打造身临其境的电影体验。此外,世界模型可以生成动态和个性化的叙事,满足观众的个性化需求,增强观众的参与感和沉浸感。

    元宇宙

    元宇宙的出现为利用世界模型创建沉浸式和互动的虚拟世界提供了无限可能。通过合成多模态感官体验,包括视觉、听觉和触觉反馈,这些模型能够创建高度真实和沉浸的虚拟环境,模糊物理现实和数字现实之间的界限。此外,世界模型促进了智能虚拟代理和非玩家角色(NPC)的开发,使其表现出逼真的行为和互动,增强了元宇宙中的社交沉浸感。

    结论

    在本综述中,我们系统地回顾了LLMs在多模态生成和编辑中的应用,涵盖了图像、视频、3D和音频等多个领域。通过详细分析这些技术的进展和应用,我们希望为未来的研究提供指导,并推动人工智能在生成内容方面的发展。总的来说,我们期待我们的调查能为多模态生成,特别是世界模型的发展提供洞见和启发,这一领域正逐渐吸引越来越多的研究人员的关注和期待。

    参考文献

    1. OpenAI, “Video generation models as world simulators,” OpenAI, Tech. Rep., 2024.
    2. J. Devlin, M.-W. Chang, K. Lee, and K. Toutanova, “BERT: Pre-training of deep bidirectional transformers for language understanding,” arXiv preprint arXiv:1810.04805, 2018.
    3. A. Radford, K. Narasimhan, T. Salimans, I. Sutskever et al., “Improving language understanding by generative pre-training,” 2018.
    4. A. Radford, J. Wu, R. Child, D. Luan, D. Amodei, I. Sutskever et al., “Language models are unsupervised multitask learners,” OpenAI blog, vol. 1, no. 8, p. 9, 2019.
    5. T. Brown, B. Mann, N. Ryder, M. Subbiah, J. D. Kaplan, P. Dhariwal, A. Neelakantan, P. Shyam, G. Sastry, A. Askell et al., “Language models are few-shot learners,” Advances in Neural Information Processing Systems, vol. 33, pp. 1877–1901, 2020.
    6. J. Achiam, S. Adler, S. Agarwal, L. Ahmad, I. Akkaya, F. L. Aleman, D. Almeida, J. Altenschmidt, S. Altman, S. Anadkat et al., “GPT-4 technical report,” arXiv preprint arXiv:2303.08774, 2023.
    7. OpenAI, “ChatGPT: A language model for conversational AI,” OpenAI, Tech. Rep., 2023.
    8. Y. Li, C. Wang, and J. Jia, “LLaMA-VID: An image is worth 2 tokens in large language models,” arXiv preprint arXiv:2311.17043, 2023.
    9. P. Gao, J. Han, R. Zhang, Z. Lin, S. Geng, A. Zhou, W. Zhang, P. Lu, C. He, X. Yue et al., “LLaMA-Adapter V2: Parameter-efficient visual instruction model,” arXiv preprint arXiv:2304.15010, 2023.
    10. R. Rombach, A. Blattmann, D. Lorenz, P. Esser, and B. Ommer, “High-resolution image synthesis with latent diffusion models,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2022, pp. 10684–10695.
    11. A. Nichol, P. Dhariwal, A. Ramesh, P. Shyam, P. Mishkin, B. McGrew, I. Sutskever, and M. Chen, “GLIDE: Towards photorealistic image generation and editing with text-guided diffusion models,” arXiv preprint arXiv:2112.10741, 2021.
    12. A. Ramesh, P. Dhariwal, A. Nichol, C. Chu, and M. Chen, “Hierarchical text-conditional image generation with CLIP latents,” arXiv preprint arXiv:2204.06125, vol. 1, no. 2, p. 3, 2022.
    13. C. Saharia, W. Chan, S. Saxena, L. Li, J. Whang, E. L. Denton, K. Ghasemipour, R. Gontijo Lopes, B. Karagol Ayan, T. Salimans et al., “Photorealistic text-to-image diffusion models with deep language understanding,” Advances in Neural Information Processing Systems, vol. 35, pp. 36479–36494, 2022.
    14. Y. He, T. Yang, Y. Zhang, Y. Shan, and Q. Chen, “Latent video diffusion models for high-fidelity long video generation,” arXiv preprint arXiv:2211.13221, 2022.
    15. D. Zhou, W. Wang, H. Yan, W. Lv, Y. Zhu, and J. Feng, “MagicVideo: Efficient video generation with latent diffusion models,” arXiv preprint arXiv
    16. U. Singer, A. Polyak, T. Hayes, X. Yin, J. An, S. Zhang, Q. Hu, H. Yang, O. Ashual, O. Gafni et al., “Make-a-video: Text-to-video generation without text-video data,” arXiv preprint arXiv:2209.14792, 2022.
    17. J. Ho, W. Chan, C. Saharia, J. Whang, R. Gao, A. Gritsenko, D. P. Kingma, B. Poole, M. Norouzi, D. J. Fleet et al., “Imagen video: High definition video generation with diffusion models,” arXiv preprint arXiv:2210.02303, 2022.
    18. R. Villegas, M. Babaeizadeh, P.-J. Kindermans, H. Moraldo, H. Zhang, M. T. Saffar, S. Castro, J. Kunze, and D. Erhan, “Phenaki: Variable length video generation from open domain textual descriptions,” in International Conference on Learning Representations, 2022.
    19. H. Chen, M. Xia, Y. He, Y. Zhang, X. Cun, S. Yang, J. Xing, Y. Liu, Q. Chen, X. Wang et al., “VideoCrafter1: Open diffusion models for high-quality video generation,” arXiv preprint arXiv:2310.19512, 2023.
    20. Y. Guo, C. Yang, A. Rao, Y. Wang, Y. Qiao, D. Lin, and B. Dai, “AnimateDiff: Animate your personalized text-to-image diffusion models without specific tuning,” arXiv preprint arXiv:2307.04725, 2023.
    21. O. Bar-Tal, H. Chefer, O. Tov, C. Herrmann, R. Paiss, S. Zada, A. Ephrat, J. Hur, Y. Li, T. Michaeli et al., “Lumiere: A space-time diffusion model for video generation,” arXiv preprint arXiv:2401.12945, 2024.
    22. R. Girdhar, M. Singh, A. Brown, Q. Duval, S. Azadi, S. S. Rambhatla, A. Shah, X. Yin, D. Parikh, and I. Misra, “Emu Video: Factorizing text-to-video generation by explicit image conditioning,” arXiv preprint arXiv:2311.10709, 2023.
    23. A. Radford, J. W. Kim, C. Hallacy, A. Ramesh, G. Goh, S. Agarwal, G. Sastry, A. Askell, P. Mishkin, J. Clark et al., “Learning transferable visual models from natural language supervision,” in International Conference on Machine Learning. PMLR, 2021, pp. 8748–8763.
    24. A. Sanghi, H. Chu, J. G. Lambourne, Y. Wang, C.-Y. Cheng, M. Fumero, and K. R. Malekshan, “Clip-forge: Towards zero-shot text-to-shape generation,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2022, pp. 18603–18613.
    25. N. Mohammad Khalid, T. Xie, E. Belilovsky, and T. Popa, “Clip-Mesh: Generating textured meshes from text using pretrained image-text models,” in SIGGRAPH Asia 2022 Conference Papers, 2022, pp. 1–8.
    26. O. Michel, R. Bar-On, R. Liu, S. Benaim, and R. Hanocka, “Text2Mesh: Text-driven neural stylization for meshes,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2022, pp. 13492–13502.
    27. C. Wang, R. Jiang, M. Chai, M. He, D. Chen, and J. Liao, “NeRF-Art: Text-driven neural radiance fields stylization,” IEEE Transactions on Visualization and Computer Graphics, 2023.
    28. B. Kerbl, G. Kopanas, T. Leimkühler, and G. Drett28. B. Kerbl, G. Kopanas, T. Leimkühler, and G. Drettakis, “3D Gaussian Splatting for Real-Time Radiance Field Rendering,” ACM Transactions on Graphics, vol. 42, no. 4, July 2023. [Online]. Available: https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/
    29. T. Yi, J. Fang, J. Wang, G. Wu, L. Xie, X. Zhang, W. Liu, Q. Tian, and X. Wang, “GaussianDreamer: Fast Generation from Text to 3D Gaussians by Bridging 2D and 3D Diffusion Models,” arXiv preprint arXiv:2310.08529, 2023.
    30. J. Tang, J. Ren, H. Zhou, Z. Liu, and G. Zeng, “DreamGaussian: Generative Gaussian Splatting for Efficient 3D Content Creation,” arXiv preprint arXiv:2309.16653, 2023.
    31. L. Höllein, A. Cao, A. Owens, J. Johnson, and M. Nießner, “Text2Room: Extracting Textured 3D Meshes from 2D Text-to-Image Models,” in Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV), October 2023, pp. 7909–7920.
    32. Y. Liang, X. Yang, J. Lin, H. Li, X. Xu, and Y. Chen, “LucidDreamer: Towards High-Fidelity Text-to-3D Generation via Interval Score Matching,” arXiv preprint arXiv:2311.11284, 2023.
    33. X. Yu, Y.-C. Guo, Y. Li, D. Liang, S.-H. Zhang, and X. Qi, “Text-to-3D with Classifier Score Distillation,” arXiv preprint arXiv:2310.19415, 2023.
    34. W. Li, R. Chen, X. Chen, and P. Tan, “SweetDreamer: Aligning Geometric Priors in 2D Diffusion for Consistent Text-to-3D,” arXiv preprint arXiv:2310.02596, 2023.
    35. Z. Wang, C. Lu, Y. Wang, F. Bao, C. Li, H. Su, and J. Zhu, “ProlificDreamer: High-Fidelity and Diverse Text-to-3D Generation with Variational Score Distillation,” arXiv preprint arXiv:2305.16213, 2023.
    36. J. Lorraine, K. Xie, X. Zeng, C.-H. Lin, T. Takikawa, N. Sharp, T.-Y. Lin, M.-Y. Liu, S. Fidler, and J. Lucas, “ATT3D: Amortized Text-to-3D Object Synthesis,” in International Conference on Computer Vision ICCV, 2023.
    37. J. Xu, X. Wang, W. Cheng, Y.-P. Cao, Y. Shan, X. Qie, and S. Gao, “Dream3D: Zero-Shot Text-to-3D Synthesis Using 3D Shape Prior and Text-to-Image Diffusion Models,” arXiv preprint arXiv:2212.14704, 2023.
    38. J. Zhu and P. Zhuang, “HiFA: High-Fidelity Text-to-3D with Advanced Diffusion Guidance,” arXiv preprint arXiv:2305.18766, 2023.
    39. R. Chen, Y. Chen, N. Jiao, and K. Jia, “Fantasia3D: Disentangling Geometry and Appearance for High-Quality Text-to-3D Content Creation,” in Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV), October 2023.
    40. C. Tsalicoglou, F. Manhardt, A. Tonioni, M. Niemeyer, and F. Tombari, “TextMesh: Generation of Realistic 3D Meshes from Text Prompts,” arXiv preprint arXiv:2304.12439, 2023.
    41. B. Poole, A. Jain, J. T. Barron, and B. Mildenhall, “DreamFusion: Text-to-3D using 2D Diffusion,” arXiv preprint arXiv:2209.14988, 2022.
    42. C.-H. Lin, J. Gao, L. Tang, T. Takikawa, X. Zeng, X. Huang, K. Kreis, S. Fidler, M.-Y. Liu, and T.-Y. Lin, “Magic3D: High-Resolution Text-to-3D Content Creation,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2023, pp. 300–309.
    43. J. Seo, W. Jang, M.-S. Kwak, J. Ko, H. Kim, J. Kim, J.-H. Kim, J. Lee, and S. Kim, “Let 2D Diffusion Model Know 3D-Consistency for Robust Text-to-3D Generation,” arXiv preprint arXiv:2303.07937, 2023.
    44. H. Liu, Z. Chen, Y. Yuan, X. Mei, X. Liu, D. Mandic, W. Wang, and M. D. Plumbley, “AudioLDM: Text-to-Audio Generation with Latent Diffusion Models,” arXiv preprint arXiv:2301.12503, 2023.
    45. H. Liu, Q. Tian, Y. Yuan, X. Liu, X. Mei, Q. Kong, Y. Wang, W. Wang, Y. Wang, and M. D. Plumbley, “AudioLDM 2: Learning Holistic Audio Generation with Self-Supervised Pretraining,” arXiv preprint arXiv:2308.05734, 2023.
    46. F. Kreuk, G. Synnaeve, A. Polyak, U. Singer, A. Défossez, J. Copet, D. Parikh, Y. Taigman, and Y. Adi, “AudioGen: Textually Guided Audio Generation,” arXiv preprint arXiv:2209.15352, 2022.
    47. A. Agostinelli, T. I. Denk, Z. Borsos, J. Engel, M. Verzetti, A. Caillon, Q. Huang, A. Jansen, A. Roberts, M. Tagliasacchi et al., “MusicLM: Generating Music from Text,” arXiv preprint arXiv:2301.11325, 2023.
    48. J. Copet, F. Kreuk, I. Gat, T. Remez, D. Kant, G. Synnaeve, Y. Adi, and A. Défossez, “Simple and Controllable Music Generation,” Advances in Neural Information Processing Systems, vol. 36, 2024.
    49. S. Forsgren and H. Martiros, “Riffusion-stable diffusion for real-time music generation, 2022,” URL https://riffusion.com/about, vol. 6, 2022.
    50. X. Tan, J. Chen, H. Liu, J. Cong, C. Zhang, Y. Liu, X. Wang, Y. Leng, Y. Yi, L. He et al., “NaturalSpeech: End-to-End Text-to-Speech Synthesis with Human-Level Quality,” IEEE Transactions on Pattern Analysis and Machine Intelligence, 2024.
    51. K. Shen, Z. Ju, X. Tan, Y. Liu, Y. Leng, L. He, T. Qin, S. Zhao, and J. Bian, “NaturalSpeech 2: Latent Diffusion Models Are Natural and Zero-Shot Speech and Singing Synthesizers,” arXiv preprint arXiv:2304.09116, 2023.
    52. Z. Ju, Y. Wang, K. Shen, X. Tan, D. Xin, D. Yang, Y. Liu, Y. Leng, K. Song, S. Tang et al., “NaturalSpeech 3: Zero-Shot Speech Synthesis with Factorized Codec and Diffusion Models,” arXiv preprint arXiv:2403.03100, 2024.
    53. C. Wang, S. Chen, Y. Wu, Z. Zhang, L. Zhou, S. Liu, Z. Chen, Y. Liu, H. Wang, J. Li et al., “Neural Codec Language Models Are Zero-Shot Text to Speech Synthesizers,” arXiv preprint arXiv:2301.02111, 2023.
    54. Z. Jiang, J. Liu, Y. Ren, J. He, C. Zhang, Z. Ye, P. Wei, C. Wang, X. Yin, Z. Ma et al., “Mega-TTS 2: Zero-Shot Text-to-Speech with Arbitrary Length Speech Prompts,” arX55. Y. Ren, C. Hu, X. Tan, T. Qin, S. Zhao, Z. Zhao, and T.-Y. Liu, “FastSpeech 2: Fast and High-Quality End-to-End Text to Speech,” arXiv preprint arXiv:2006.04558, 2020.
    55. Y. Ge, Y. Ge, Z. Zeng, X. Wang, and Y. Shan, “Planting a Seed of Vision in Large Language Model,” arXiv preprint arXiv:2307.08041, 2023.
    56. L. Zeqiang, Z. Xizhou, D. Jifeng, Q. Yu, and W. Wenhai, “Mini-DALLE3: Interactive Text to Image by Prompting Large Language Models,” arXiv preprint arXiv:2310.07653, 2023.
    57. Z. Tang, Z. Yang, M. Khademi, Y. Liu, C. Zhu, and M. Bansal, “CoDi-2: In-Context, Interleaved, and Interactive Any-to-Any Generation,” arXiv preprint arXiv:2311.18775, 2023.
    58. Y. Ge, S. Zhao, Z. Zeng, Y. Ge, C. Li, X. Wang, and Y. Shan, “Making LLaMA See and Draw with SEED Tokenizer,” arXiv preprint arXiv:2310.01218, 2023.
    59. Q. Sun, Y. Cui, X. Zhang, F. Zhang, Q. Yu, Z. Luo, Y. Wang, Y. Rao, J. Liu, T. Huang et al., “Generative Multimodal Models Are In-Context Learners,” arXiv preprint arXiv:2312.13286, 2023.
    60. X. Zhao, B. Liu, Q. Liu, G. Shi, and X.-M. Wu, “Making Multimodal Generation Easier: When Diffusion Models Meet LLMs,” arXiv preprint arXiv:2310.08949, 2023.
    61. J. Chen, Y. Huang, T. Lv, L. Cui, Q. Chen, and F. Wei, “TextDiffuser-2: Unleashing the Power of Language Models for Text Rendering,” arXiv preprint arXiv:2311.16465, 2023.
    62. L. Lian, B. Li, A. Yala, and T. Darrell, “LLM-Grounded Diffusion: Enhancing Prompt Understanding of Text-to-Image Diffusion Models with Large Language Models,” arXiv preprint arXiv:2305.13655, 2023.
    63. W. Feng, W. Zhu, T.-j. Fu, V. Jampani, A. Akula, X. He, S. Basu, X. E. Wang, and W. Y. Wang, “LayoutGPT: Compositional Visual Planning and Generation with Large Language Models,” arXiv preprint arXiv:2305.15393, 2023.
    64. T. Zhang, Y. Zhang, V. Vineet, N. Joshi, and X. Wang, “Controllable Text-to-Image Generation with GPT-4,” arXiv preprint arXiv:2305.18583, 2023.
    65. L. Qu, S. Wu, H. Fei, L. Nie, and T.-S. Chua, “LayoutLLM-T2I: Eliciting Layout Guidance from LLM for Text-to-Image Generation,” in Proceedings of the 31st ACM International Conference on Multimedia, 2023, pp. 643–654.
    66. Y. Li, H. Liu, Q. Wu, F. Mu, J. Yang, J. Gao, C. Li, and Y. J. Lee, “GLIGEN: Open-Set Grounded Text-to-Image Generation,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2023, pp. 22511–22521.
    67. J. Betker, G. Goh, L. Jing, T. Brooks, J. Wang, L. Li, L. Ouyang, J. Zhuang, J. Lee, Y. Guo et al., “Improving Image Generation with Better Captions,” Computer Science. https://cdn.openai.com/papers/dall-e-3.pdf, 2023.
  • LLMs Meet Multimodal Generation and Editing: A Survey 

    在当今这个信息爆炸的时代,人工智能(AI)正以前所未有的速度发展,其中大型语言模型(LLMs)尤为引人注目。这些模型不仅在文本理解方面取得了巨大进步,而且在多模态学习——即结合图像、视频、3D模型和音频等多种信息形式的学习——方面也展现出了巨大潜力。最近,我有幸阅读了一篇关于这一主题的综述文章,现在,我将尝试以通俗易懂的语言,向您介绍这篇综述的精髓。

    LLMs与多模态生成:一次革命性的邂逅

    首先,让我们来谈谈什么是大型语言模型(LLMs)。想象一下,如果你有一个能够理解和生成人类语言的超级助手,那么这个助手就是基于LLMs的。这些模型通过分析大量的文本数据来学习语言的规律,从而能够完成诸如回答问题、撰写文章甚至生成代码等任务。

    然而,LLMs的野心不止于此。研究人员发现,当LLMs与多模态学习结合时,它们能够做的事情远远超出了我们的想象。多模态学习意味着模型不仅要处理文本,还要处理图像、视频、3D模型和音频等其他类型的数据。这种结合为AI开辟了新的可能性,使得机器能够更全面地理解和响应我们的世界。

    多模态生成的里程碑

    在这篇综述中,作者们详细探讨了LLMs在多模态生成领域的应用,包括以下几个方面:

    1. 图像生成:通过文本提示生成图像,比如你告诉模型“生成一张日落的图片”,它就能创造出一幅美丽的日落景象。
    2. 视频生成:类似地,模型可以根据文本描述生成视频内容,这对于电影制作和游戏开发等领域具有重要意义。
    3. 3D生成:LLMs可以帮助生成3D模型,这对于虚拟现实(VR)和增强现实(AR)应用来说是一个巨大的突破。
    4. 音频生成:模型还能够根据文本描述生成音频,无论是音乐、自然声音还是人声,都能够被创造出来。

    LLMs如何工作?

    那么,这些模型是如何工作的呢?简单来说,它们通过以下步骤:

    1. 理解:首先,LLMs需要理解输入的文本描述。
    2. 规划:然后,它们会规划如何将这些描述转换成相应的图像、视频、3D模型或音频。
    3. 生成:最后,模型会利用其学习到的知识生成最终的内容。

    安全性和未来展望

    随着LLMs的能力越来越强,安全性也成为一个重要议题。我们需要确保这些模型不会被用于制造虚假信息或有害内容。此外,随着技术的发展,我们期待看到更多创新的应用,比如在教育、娱乐和设计等领域。

    结语

    LLMs与多模态生成的结合,不仅仅是AI领域的一次技术飞跃,更是为我们打开了一扇通往全新世界的大门。随着研究的深入,我们有理由相信,未来的AI将更加智能、更加安全,也更加贴近我们的生活。让我们拭目以待,AI将如何继续改变我们的世界。

  • LLMs与多模态生成及编辑:一项综述

    引言

    随着大型语言模型(LLMs)的快速发展,越来越多的研究开始关注将LLMs与多模态学习相结合。多模态学习旨在融合各种信息源,如图像、视频、3D模型和音频,以实现更丰富、更加自然的人机交互。然而,以往的研究主要集中在多模态理解上,本综述将重点放在多模态生成领域,包括图像、视频、3D和音频等。

    主要内容概述

    多模态生成的背景

    人类与物理世界的交互涉及多种模态信息,如语言、视觉和音频。为了实现世界模拟器,模型需要灵活地感知和响应多模态信息。通过结合LLMs和多模态生成技术,我们可以实现更智能、更灵活的生成系统。

    关键技术组件

    在多模态生成领域,以下是几项关键的技术组件:

    • 多模态数据集:不同模态的数据集是支撑多模态生成研究的基础。
    • 生成模型:包括扩散模型、变换器和其他生成技术,它们在多模态生成中发挥了重要作用。
    • 工具辅助多模态代理:这些代理能够利用现有的生成模型进行人机交互,提升生成效果。

    多模态生成技术的进展

    图像生成

    在图像生成方面,LLMs的应用已经取得了显著的进展。例如:

    • DALL-E:通过文本描述生成高质量的图像。[150]
    • Latent Diffusion Models (LDM):通过潜在空间中的扩散过程生成图像。[10]

    视频生成

    视频生成方面的研究同样取得了重要进展,包括:

    • VideoCrafter:一种高质量的视频生成模型。[19]
    • Make-A-Video:通过文本描述生成视频。[16]

    3D生成

    在3D生成领域,LLMs被用于生成和编辑3D模型。例如:

    • CLIP:一种基于文本描述生成3D模型的技术。[23]
    • ShapeGPT:结合LLMs生成复杂的3D形状。[306]

    音频生成

    音频生成方面,LLMs主要用于生成和编辑音乐、语音等音频内容。例如:

    • AudioLM:通过语言模型生成音频。[110]
    • WavJourney:基于语义描述生成音频信号。[105]

    AI安全性

    在多模态生成领域,AI安全性是一个重要的问题。为了减少有害和偏见内容的生成,研究者们提出了多种方法:

    • Latent Guard:一种保护模型免受攻击的方法。[449]
    • SafetyBench:用于评估多模态模型安全性的数据集。[468]

    未来发展方向

    为了推动多模态生成技术的发展,未来的研究可以探索以下几个方向:

    • 高分辨率生成:提高生成内容的分辨率,以满足虚拟现实和电影制作等领域的需求。
    • 长期序列生成:生成更长的视频和音频序列,创造沉浸式体验。
    • 多视角一致性:确保3D对象从不同视角观察时的一致性。
    • 统一训练的多模态生成:实现单一模型生成多种模态内容的能力。

    结语

    本综述系统性地回顾了LLMs在多模态生成中的应用,涵盖了图像、视频、3D和音频等多个领域。通过详细分析这些技术的进展和应用,我们希望为未来的研究提供指导,并推动人工智能在生成内容方面的发展。

    参考文献

    [1] Yingqing He, Zhaoyang Liu, Jingye Chen, Zeyue Tian, Hongyu Liu, Xiaowei Chi, Runtao Liu, Ruibin Yuan, Yazhou Xing, Wenhai Wang, Jifeng Dai, Yong Zhang, Wei Xue, Qifeng Liu, Yike Guo, Qifeng Chen, “LLMs Meet Multimodal Generation and Editing: A Survey.” Available at: https://github.com/YingqingHe/Awesome-LLMs-meet-Multimodal-Generation

  • 生成代码世界模型:结合大型语言模型和蒙特卡罗树搜索

    引言

    在人工智能领域,能够对世界进行建模是智能体实现目标的关键能力。当面对新的环境时,智能体必须迅速理解其机制,以便制定计划并实现目标。在这种情况下,自然语言条件可以帮助智能体将当前观察与过去的知识联系起来,从而更好地理解世界。因此,通过自然语言向智能体传递关于新任务的信息,具有特别的前景。

    近年来,大型语言模型(LLMs)在自然语言处理领域取得了革命性的进展,并为世界建模提供了巨大的机会。然而,将LLMs与世界模型结合的最佳方式尚不明确。在这篇文章中,我们介绍了一种新的方法,即通过编写Python代码来生成RL(强化学习)世界模型。

    代码世界模型(Code World Models)

    什么是代码世界模型?

    代码世界模型(CWM)是由LLMs生成的一种世界模型,这些模型以Python代码的形式存在,专门用于基于模型的强化学习(RL)。与直接使用LLMs进行规划相比,调用代码具有精准、可靠、可解释和高效的优点。然而,编写合适的代码世界模型需要理解复杂的指令、生成具有非平凡逻辑的精确代码,以及通过单元测试和环境轨迹反馈自我调试长程序。

    为了解决这些挑战,我们提出了GIF-MCTS(Generate, Improve and Fix with Monte Carlo Tree Search),这是一种新的代码生成策略,用于优化LLMs的代码生成能力。

    代码世界模型的框架

    在模型基础的强化学习问题设置中,我们将环境表示为具有状态空间、动作空间、转移函数和标量奖励函数的马尔可夫决策过程。世界模型的任务是准确表示转移函数和奖励函数。

    我们假设:

    1. 环境是确定的且完全可观察的。
    2. 提供的环境自然语言描述足够详细,可以推断出观察空间以及转移和奖励函数的逻辑。

    代码世界模型基准(CWMB)

    为了全面测试不同环境下的世界模型生成,我们定义了一个新的基准,包括18个难度不同的RL环境。每个环境都有相应的自然语言描述和精心设计的轨迹数据集。这个基准旨在通过提供的数据学习准确合成代码世界模型,并在不同复杂度的环境中评估不同的代码生成方法。

    GIF-MCTS:生成、改进和修复

    我们提出的GIF-MCTS方法使用蒙特卡罗树搜索(MCTS)来生成和优化代码世界模型。GIF-MCTS的主要流程包括选择、扩展、评估和价值回溯。

    动作类型

    GIF-MCTS方法包括三种主要动作类型:

    1. 生成新行:利用LLM的随机采样能力,在树的不同分支中生成不同的代码片段。
    2. 改进预测:LLM会被提示改进现有代码,并提供错误预测的输入示例及其预期输出。
    3. 修复错误:当代码包含语法或运行时错误时,LLM会尝试修复这些错误,并提供修复逻辑。

    实验

    基准

    我们在三个基准上评估了GIF-MCTS的性能:新的CWMB、流行且具有挑战性的编码基准APPS,以及语言条件网格世界RTFM。GIF-MCTS在所有三个基准上都超过了现有方法,包括APPS的“Competition”部分,CWMB的更难连续环境以及RTFM。

    实验结果

    使用GIF-MCTS生成的代码世界模型能够成功用于规划,生成的基于模型的RL智能体在样本效率和推理速度上显著提高。我们展示了在多个环境中使用合成的CWM进行成功的规划,结果表明CWM在推理速度上比直接查询LLM快四到六个数量级,同时在CWM准确时,其性能可以与访问真实世界模型的oracle规划器相匹敌。

    讨论

    限制

    尽管代码世界模型(CWM)框架是一个令人兴奋的基于模型规划的方向,但我们仍依赖于环境的确定性和完全可观察性的假设。未来的工作可以探索如何将该方法扩展到包含随机性和部分可观察环境中。

    此外,提供能够合理转换为Python函数的环境描述(例如记录关键变量的手册)也是一个潜在问题。在没有可用描述的情况下,预处理技术(例如图像到文本模型)可能是解决这一问题的一种方法。

    结论

    我们提出了一种新的框架,即代码世界模型(CWM),通过结合大型语言模型(LLM)和蒙特卡罗树搜索(MCTS),为基于模型的强化学习(RL)智能体构建世界模型。我们的实验表明,GIF-MCTS方法在多个基准上都表现优异,能够生成高效且可解释的代码世界模型,并显著提高基于模型的RL智能体的样本效率和推理速度。

    未来的研究可以继续完善代码生成方法,优化底层LLM模型,并探索如何将CWM应用于更复杂的环境中。我们相信,CWM框架将推动开发出更快、更可解释且样本效率更高的基于模型的RL智能体。

    致谢

    本文的研究得到了芬兰研究理事会(旗舰计划:芬兰人工智能中心FCAI,资助编号352986、358246)和欧盟(H2020资助101016775和NextGenerationEU)的支持。我们感谢CSC为本项目提供的LUMI超级计算机的访问权限,该计算机由EuroHPC联合企业所有,由CSC(芬兰)和LUMI联盟主办。

    参考文献

    • Ha, D., & Schmidhuber, J. (2018). World models.
    • Hendrycks, D., Basart, S., Kadavath, S., et al. (2021). Measuring coding challenge competence with apps.
    • Kocsis, L., & Szepesvári, C. (2006). Bandit based monte-carlo planning.
    • Lin, J., Du, Y., Watkins, O., et al. (2023). Learning to model the world with language.
    • Tang, H., Key, D., & Ellis, K. (2024). Worldcoder, a model-based llm agent: Building world models by writing code and interacting with the environment.
    • Zhong, V., Rocktäschel, T., & Grefenstette, E. (2020). RTFM: Generalising to new environment dynamics via reading.

    这篇文章不仅介绍了代码世界模型和GIF-MCTS方法的理论基础,还通过实验验证了其在多个基准上的优越性能。希望未来的研究能够进一步提升这一领域的发展,为人工智能和强化学习带来更多突破。

  • 微软中国员工迁移海外:背后的原因与影响

    近日,多位网友在社交媒体上爆料称,微软中国区Azure云平台的AI团队为主的数百名员工收到公司邮件,询问他们是否愿意迁移至其他地区工作。目的地包括美国、澳大利亚、爱尔兰等国家。公司将负责亲属签证问题,员工需要在6月7日前给出答复。本文将探讨这一消息背后的原因及其可能带来的影响。

    微软的回应与员工的困惑

    对于这一消息,微软方面回应称,公司有一小部分员工得到可以选择国际轮岗的机会。员工可以选择接受轮岗,或者继续在现在的岗位工作。微软在运营管理全球业务的过程中,一直有向员工提供内部轮岗机会的机制。

    然而,一些员工对此表示困惑。一位微软员工对记者表示,这是5月14日刚出的消息,一些员工突然收到有关征询迁移至海外工作邮件,要求在6月7日前回答去还是不去。“大家都很懵”,此前并没有感受到任何预兆,尤其是拖家带口的员工,“需要考虑的事情更多”。有同事认为这是一种“变相裁员”,虽然可以选择不去,但也因此对留在公司的未来产生了担忧。

    迁移计划的具体安排

    据了解,微软中国C+AI的ML团队可以转到美国西雅图,Azure团队转到澳洲,DevDiv(开发平台事业部)则维持现状。已经有员工的家属表示,家属所在的小组被整个迁至澳大利亚,线上开会时“会上有300多号人”,涉及北京、上海和苏州的员工。两个人商量一整晚到凌晨三点,也没得出什么结论。

    另有接近微软人士表示,Azure ML和Azure Core(基础设施)这两个组中与AI业务相关的数百人获得“打包”出国的机会,目的地包括美国、加拿大、澳大利亚和新西兰,是指定的(目的地),并不能随便挑选。

    背后的原因

    全球业务整合

    微软在全球范围内进行业务整合,尤其是AI和云计算业务。这种整合有助于公司在全球范围内更有效地配置资源,提升业务协同效应。

    国际轮岗机制

    微软一直以来都有向员工提供内部轮岗机会的机制。通过国际轮岗,员工可以获得更广泛的工作经验和视野,有助于个人职业发展。

    亚太市场竞争压力

    根据国际咨询机构Gartner发布的最新云计算市场追踪数据报告,2023年,微软Azure在亚太地区云计算IaaS市场排名第三,份额为16.1%。阿里云排名第一,市场份额为22.2%,亚马逊AWS排名第二,份额为16.5%。微软在亚太市场面临激烈的竞争压力,可能希望通过业务调整来应对市场挑战。

    可能带来的影响

    员工心理压力

    员工突然收到迁移通知,且需要在短时间内做出决定,这无疑会给员工带来巨大的心理压力。尤其是有家庭的员工,需要考虑更多因素,如孩子的教育、配偶的工作等。

    公司内部稳定性

    这种大规模的迁移计划可能会影响公司内部的稳定性。一些员工可能会选择离职,而不是接受迁移,导致团队的不稳定和人才流失。

    对亚太市场的影响

    微软在亚太地区的云计算市场份额已经处于劣势,此次迁移计划可能会进一步影响公司在这一地区的业务发展。如何平衡全球业务整合与区域市场竞争,是微软需要仔细考量的问题。

    结语

    微软中国员工迁移海外的消息引发了广泛关注和讨论。这一计划背后有多重原因,包括全球业务整合、国际轮岗机制以及应对亚太市场竞争压力等。然而,这一计划也给员工带来了巨大的心理压力,并可能影响公司内部的稳定性和区域市场的业务发展。在未来的执行过程中,如何平衡这些因素,将是微软面临的重要挑战。


    参考文献

    • 社交媒体爆料
    • 微软员工采访
    • Gartner云计算市场追踪数据报告,2023年
  • LLAMA-NAS:让大语言模型不再“吃硬件”

    前言

    如果你觉得大语言模型(LLMs)像个贪吃的巨兽,那你就猜对了。这些能处理自然语言、复杂推理、情感分析等任务的模型,虽然能力非凡,但对内存和计算资源的“胃口”也惊人。以至于大部分硬件平台根本承受不起这顿“大餐”。为了让LLMs变得更“苗条”,我们提出了一种基于LLaMA2-7B的高效神经架构搜索方法——LLAMA-NAS。

    LLaMA2-7B的“减肥”计划

    一次性NAS:给模型做个“全身检查”

    我们的方法核心是一次性神经架构搜索(one-shot NAS),这个听起来就很酷对吧?具体来说,我们只对LLaMA2-7B模型进行一次微调,然后用遗传算法(genetic algorithm)来搜索更小、更高效的网络架构。结果显示,对于某些标准基准任务,预训练的LLaMA2-7B模型不仅“体型”庞大,而且“吃”得也多。通过我们的“减肥”计划,我们成功地将模型大小减少了1.5倍,处理速度提高了1.3倍,而准确度几乎没有损失。

    InstaTune:超级网络的“变形金刚”

    我们借鉴了InstaTune的方法,将NAS嵌入到微调阶段,使模型架构更具弹性,能够适应不同的任务、数据集和计算资源。在这过程中,我们并没有进行强教师或超级网络的知识蒸馏,主要是为了节省计算资源。

    搜索空间:模型参数的“百变金刚”

    在搜索过程中,我们使用了LINAS算法,这个名字听起来像某种神秘的武器。事实上,它确实很厉害,能够在多目标设置中优化模型大小和准确性。我们定义了一组允许的参数值,搜索空间包含了大约1.3 × 10^10种可能性。

    实验与结果

    AI2推理挑战

    首先,我们将方法应用于AI2推理挑战(ARC)任务,结果显示几个子网络架构在准确率和模型大小上都有明显提升。例如,一个子网络在准确率不变的情况下,模型大小减少了1.1倍。

    大规模多任务语言理解

    我们的方法在大规模多任务语言理解(MMLU)任务上也表现出色。多个子网络在准确率提升的同时,模型大小减少了1.5倍,处理速度提高了1.3倍。

    真诚QA和WinoGrande

    在真诚QA任务中,我们发现预训练的LLaMA2-7B模型明显过度参数化。通过我们的方法,找到的子网络在准确率提高3.6%的同时,模型大小减少了1.6倍。WinoGrande任务的结果也类似,我们的子网络在准确率不变的情况下,模型大小减少了1.1倍。

    比较与对比

    与剪枝和稀疏化技术的对比

    与LLM-Pruner和SliceGPT相比,我们的方法不仅在模型大小和准确率上更有优势,而且不需要额外的恢复微调步骤。

    量化:让模型“瘦上加瘦”

    我们还将INT8量化应用于搜索到的子网络,结果显示,量化后的子网络在准确率几乎不变的情况下,模型大小进一步减少。例如,一个子网络在量化后大小减少了2.5倍,准确率几乎没有损失。

    结论

    通过我们的LLAMA-NAS方法,我们不仅找到了更小、更高效的网络架构,还比剪枝和稀疏化技术更有效、更高效。而且,我们的方法不需要任何专用的软件内核或硬件,能够与其他量化方法无缝结合。随着对大语言模型的兴趣日益增加,我们的工作为自动创建能够在更便宜、更易获得的硬件平台上运行的网络提供了一条可行的道路。

    参考文献

    1. Anthony Sarah, Sharath Nittur Sridhar, Maciej Szankin, Sairam Sundaresan. “LLAMA-NAS: Efficient Neural Architecture Search for Large Language Models.”

    希望这篇文章能让你对我们的工作有更深入的了解,同时也希望你能像看完这篇文章一样开心。如果你对大语言模型的优化感兴趣,不妨试试我们的LLAMA-NAS方法,让你的模型也来次“瘦身”吧!

  • 不要忘记连接!用基于图的重排序提升RAG的表现

    认识一下RAG:文本生成的超级英雄

    Retrieval Augmented Generation,简称RAG,是一个能让大型语言模型(LLM)在回答问题时表现更佳的工具。RAG的工作原理是通过从现有文档中检索相关信息来为生成的文本提供背景支持。听起来是不是很厉害?但问题是,如果文档只提供部分信息或者与问题背景的连接不明显,那么RAG该怎么办?这篇文章就来回答这两个核心问题。

    G-RAG:图神经网络的魔力

    我们介绍一种基于图神经网络(GNN)的方法,叫做G-RAG。这个方法在RAG的检索器和阅读器之间引入了一个重排序器。G-RAG不仅考虑了文档之间的连接,还利用了语义信息(通过抽象意义表示图,AMR)来提供上下文感知的排序器。G-RAG不仅表现优异,还比最先进的方法更省计算资源。

    为什么重排序很重要?

    在开放领域问答(ODQA)中,RAG虽然能成功地检索到相关文档,但不能充分利用文档间的连接。这会导致模型忽视那些包含答案但与问题背景连接不明显的文档。通过重排序过程,我们能更有效地过滤检索到的文档,提高阅读过程的效果。

    现有方法的不足

    目前的重排序器虽然表现不错,但仍有一些问题。首先,大多数现有工作未能捕捉到不同检索文档之间的重要连接。其次,尽管AMR图提高了对复杂语义的理解,但将冗余的AMR信息集成到预训练语言模型中会导致过拟合和计算时间增加。最后,现有方法利用的预训练语言模型在快速发展的LLM时代显得不足。

    我们的解决方案

    为了应对这些挑战,我们提出了一种基于文档图的方法,每个节点代表一个文档,每条边代表两个文档之间存在共同概念。我们将不同文档之间的连接信息纳入边特征,并通过消息传递机制更新边特征。同时,我们在节点特征中加入了关键的AMR信息,避免了冗余信息的引入。

    实验结果

    我们在两个代表性的ODQA数据集上进行了实验:自然问题(NQ)和TriviaQA(TQA)。结果显示,基于图的策略(如GCN和G-RAG)在各种评估指标上表现出色。特别是G-RAG-RL模型,通过使用排序损失函数,进一步提升了识别正面文档的能力。

    结论与未来展望

    我们的G-RAG模型在现有ODQA方法中表现出色,通过利用文档之间的隐性连接和战略性地整合AMR信息,显著提高了识别有价值信息的能力。尽管预训练的LLM在重排序任务中的表现可能不尽如人意,但对其进行微调可能极大地提升RAG系统的表现。未来的研究方向包括设计更复杂的模型来更好地处理AMR信息,以及探索更高级的方法来解决LLM产生的排名分数中的平局问题。

    参考文献

    1. Wang, C., et al. (2023). “Graph as Tokens: Representing Text as Graphs for Neural Network Processing.” Retrieved from https://github.com/wangcunxiang/Graph-aS-Tokens/tree/main
    2. BERT: Bidirectional Encoder Representations from Transformers. (2019) Retrieved from https://arxiv.org/abs/1810.04805
    3. AMRBART: AMR Parsing with BART. (2020) Retrieved from https://arxiv.org/abs/2008.02759
    4. PaLM 2: A Next-Generation Language Model. (2022) Retrieved from https://arxiv.org/abs/2204.02311
  • GPT-4在文档理解中的应用

    介绍

    各位读者,你们是否曾经因为无法快速翻阅一大堆文档而感到头痛?别担心,我们的好朋友GPT-4来了!最近,Lukasz Borchmann 和他的团队在一篇名为《Notes on Applicability of GPT-4 to Document Understanding》的论文中详细探讨了GPT-4在文档理解领域的表现。让我们一起来看看这位AI大将是如何在文档中大显神通的吧!

    文档理解:不仅仅是文字

    文档理解不仅仅是读取文字,还包括理解文档的版式、图像和各种视觉线索。这就像是要你在一堆报纸中找到一条特定的新闻,不仅要看文字,还要注意标题、图片和排版。GPT-4 Vision Turbo在这方面表现优异,特别是当输入包括OCR识别的文字和文档图像时,效果更佳。

    实验结果:GPT-4的表现如何?

    Borchmann团队选择了四个数据集进行测试:DocVQA, InfographicsVQA, SlideVQA和DUDE。每个数据集都代表了不同类型的文档挑战。结果显示,TURBO V和TURBO V + OCR模型在结合视觉和文字信息时表现最佳,尤其是对文本密集型文档效果显著。

    例如,在DocVQA数据集上,TURBO V + OCR模型取得了87.4的高分,而纯文字模型的表现则稍显逊色。看来,GPT-4不仅能看懂文字,还能“看图说话”!

    错误分析:GPT-4的难题

    当然,GPT-4也不是完美无缺的。在一些情况下,模型对文档的理解会受到输入信息的影响。例如,当需要从图表或图像中提取信息时,OCR文字的辅助效果不如在纯文本情况下明显。这就像是让一个学霸去解一道偏题,即使聪明如他,也难免会栽跟头。

    另外,研究还发现,模型在处理长文档时表现有所下降,这可能是因为模型对长文本的上下文信息利用不充分。就像是让你读一本厚厚的小说,然后问你某个细节,你可能也会一时找不到答案吧!

    限制与未来展望

    这项研究也指出了一些限制。例如,目前的分析仅限于模型在特定数据集上的表现,而没有考虑数据隐私、成本、法律合规等实际应用中的重要因素。此外,研究还没有对模型进行微调,这意味着实际应用中可能会有更好的表现。

    未来的研究方向包括如何更好地安排文本顺序、提高模型的置信度校准、以及探索多问答形式的问答系统。看来,GPT-4还有很大的进步空间,值得我们期待!

    总结

    总的来说,GPT-4在文档理解中的表现令人印象深刻。虽然在某些方面还有改进的空间,但它已经展示了强大的潜力。特别是在结合OCR文字和文档图像后,GPT-4 Vision Turbo模型的表现尤为出色。这为我们在文档处理和自动化方面提供了新的可能性。

    各位读者,下次再面对堆积如山的文档时,不妨试试GPT-4吧!


    参考文献:

    1. Borchmann, L. (2023). Notes on Applicability of GPT-4 to Document Understanding.
    2. Mathew, M. et al. (2020). Document Visual Question Answering Challenge 2020. arXiv preprint arXiv:2008.08899.
    3. Mathew, M. et al. (2022). InfographicVQA. In Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision.
    4. OpenAI. (2023). GPT-4. https://openai.com/research/gpt-4.

    Q: 这篇论文试图解决什么问题?

    A: 这篇论文主要针对的是文档理解(Document Understanding)领域中GPT-4系列模型的适用性和性能问题。文档理解是指将文档转换为有意义的信息,通常涉及到集成布局、非文本元素和文本样式所代表的线索。论文中提到,尽管文本只能模型在文档理解任务上难以取得令人满意的结果,但是GPT-4 Vision Turbo模型在输入中同时提供外部OCR引擎识别的文本和文档图像时表现良好。

    论文试图解决的具体问题包括:

    1. 评估GPT-4家族模型在文档理解领域的性能:作者对所有公开可用的GPT-4系列模型进行了评估,以了解它们在文档理解任务上的表现,并与专门为此目的开发的模型进行比较。
    2. 探索GPT-4模型在文档视觉问题回答(Document Visual Question Answering)上的表现:这是文档理解任务中的一种,作者选择这一任务进行评估,因为它既适合基于LLM的聊天助手,又可以通过自然语言提问或指定指令来请求文档中的每一条信息。
    3. 解决GPT-4模型在商业API中可实现的结果与报道结果之间的差异:作者提到,尽管GPT-4模型的新闻发布提到了在两个文档VQA数据集上的分数,但具体细节仍然未知,而且不清楚这些结果是否可以通过商业API实现。
    4. 分析GPT-4模型在处理长文档时的性能下降问题:论文中提到,对于长文档,GPT-4模型的性能显着下降。
    5. 探讨数据污染问题:作者还研究了GPT-4模型训练或测试数据集是否可能受到污染,这可能会影响模型性能的评估。
    6. 提出改进建议和未来研究方向:在论文的最后部分,作者提出了一些可能的改进领域,并对未来的研究提出了建议。

    总的来说,这篇论文试图提供一个详细的技术报告和可复现的评估程序,以填补现有知识与GPT-4模型在文档理解任务上性能之间的差距。

    Q: 有哪些相关研究?

    A: 论文中提到了多个与文档理解(Document Understanding)和视觉问题回答(Visual Question Answering, VQA)相关的研究和数据集。以下是一些主要的相关研究和数据集:

    1. DocVQA (Mathew et al., 2020): 这是一个文档视觉问题回答的数据集,专注于文本密集型文档。
    2. InfographicsVQA (Mathew et al., 2022): 专注于信息图表的视觉问题回答数据集。
    3. SlideVQA (Tanaka et al., 2023): 针对幻灯片文档的视觉问题回答数据集。
    4. DUDE (Van Landeghem et al., 2023): 文档理解数据集和评估,包含多种类型的问题和答案。
    5. Qwen-VL (Bai et al., 2023): 一个多模态视觉语言模型,用于理解、定位、文本阅读等任务。
    6. InternVL (Chen et al., 2023, 2024): 用于通用视觉语言任务的视觉基础模型。
    7. InstructDr (Tanaka et al., 2024): 针对文档理解的指令化数据集。
    8. GRAM (Blau et al., 2024): 用于多页文档视觉问题回答的全局推理模型。
    9. Tesseract OCR: 一个开源的光学字符识别引擎。
    10. Azure Cognitive Services: 微软提供的一系列认知服务,包括OCR功能。
    11. Amazon Textract: 亚马逊提供的文档文本检测和分析服务。

    这些研究和数据集为文档理解领域提供了丰富的资源,使得研究人员能够开发和评估处理文档图像和文本的模型。论文中对这些资源进行了评估和比较,以确定GPT-4系列模型在文档理解任务上的性能。

    Q: 论文如何解决这个问题?

    A: 论文通过以下步骤和方法解决文档理解领域中GPT-4模型的性能评估问题:

    1. 模型评估:作者对所有公开可用的GPT-4家族模型进行了评估,特别是关注了文档视觉问题回答(Document Visual Question Answering)这一子领域。
    2. 数据集选择:选择了DocVQA、InfographicsVQA、SlideVQA和DUDE等数据集,这些数据集覆盖了文档类型的全谱系,包括文本密集型和视觉密集型文档,以及多页文档。
    3. 实验设计:作者设计了一系列实验,包括最佳提示(prompt)的选择、图像分辨率的优化以及OCR(光学字符识别)引擎的比较。
    4. 性能比较:通过比较不同模型版本(如TURBO V、TURBO V + OCR、8K + OCR、32K + OCR等)在不同数据集上的性能,来评估它们在文档理解任务上的表现。
    5. 错误分析:利用数据集的诊断类别和元数据来分析模型性能,特别是根据输入和证据特征进行分析。
    6. 数据污染分析:研究了训练或测试数据集是否可能在GPT-4模型的训练数据中,从而影响性能评估的准确性。
    7. 局限性讨论:作者讨论了分析的局限性,如仅关注模型性能、数据集选择的合理性、未进行微调(finetuning)、OCR引擎的影响等。
    8. 未来研究方向:提出了未来研究的潜在领域,包括文本布局的重要性、置信度校准、多QA问题的处理等。
    9. 详细技术报告和复现性:与以往不公开的设置不同,作者提供了详细的技术报告和可复现的评估程序,确保了研究的透明度和可靠性。

    通过这些步骤,论文不仅评估了GPT-4模型在文档理解任务上的性能,还提供了深入的分析和对未来研究方向的建议。

    Q: 论文做了哪些实验?

    A: 论文中进行了一系列实验来评估GPT-4家族模型在文档理解领域的性能。以下是实验的主要步骤和内容:

    1. 数据集选择:选择了DocVQA、InfographicsVQA、SlideVQA和DUDE等数据集,以覆盖不同类型和特点的文档。
    2. 最佳提示(Prompt)确定:在验证集上对不同的提示进行了优化,以确定最佳的提示组合。这些提示旨在提高模型对问题的回答质量。
    3. 图像分辨率优化:研究了不同图像分辨率对模型性能的影响,以确定最佳的输入图像大小。
    4. OCR引擎比较:比较了Tesseract、Azure Cognitive Services和Amazon Textract等不同的OCR引擎,以确定哪个引擎在文本识别方面表现最佳。
    5. 模型版本比较:评估了不同版本的GPT-4模型,包括TURBO V、TURBO V + OCR、8K + OCR和32K + OCR等,以了解它们在文档理解任务上的表现。
    6. 错误分析:利用数据集的诊断类别和元数据,分析了模型在不同类型的输入和证据特征下的性能。
    7. 证据位置分析:研究了模型性能如何随着请求信息在文档中的位置而变化,以了解模型是否存在对输入文档开始或结束部分的偏好。
    8. 答案类型分析:分析了模型在处理不同类型的答案(如列表答案和不可回答问题)时的性能。
    9. 引导指令污染分析:通过在提示中加入特定数据集的名称,来检查模型性能是否因数据集名称的存在而受到影响,从而评估数据污染的可能性。
    10. 性能提升分析:研究了通过提供外部OCR引擎识别的文本作为输入的一部分,对GPT-4 Vision模型性能的影响。

    这些实验的目的是为了全面评估GPT-4模型在文档理解任务上的性能,并探索提高性能的不同方法和因素。通过这些实验,作者能够提供关于GPT-4模型在文档理解领域适用性的深入见解。

    Q: 有什么可以进一步探索的点?

    A: 根据论文内容,以下是一些可以进一步探索的点:

    1. 文本布局的重要性:研究不同OCR设置如何影响文本阅读顺序和完整性的保持,以及空间布局的理解。
    2. 置信度校准:评估和改进文档理解系统中置信度分数的校准,这对于业务流程自动化尤为重要。
    3. 多QA问题处理:探索如何同时从单个文档中提取多个值,这可能提高成本效率并潜在地提高答案质量。
    4. 不同输入文本表示和排列的影响:研究不同的文本输入表示和排列方式对模型性能的影响,特别是对于纯文本大型语言模型(LLMs)。
    5. 数据集选择的多样性:考虑不同的数据集选择对模型性能评估的影响,以及如何通过多样化的数据集来提高模型的泛化能力。
    6. 微调(Finetuning)的影响:研究在特定数据集上微调大型语言模型对性能的潜在提升。
    7. 零样本学习(Zero-shot learning)的优化:探索不同的提示(prompt)策略,以提高零样本性能。
    8. OCR质量对模型性能的影响:研究OCR引擎的不同输出如何影响模型的性能,并寻找提高OCR质量的方法。
    9. 第三方API的依赖性:研究如何减少对第三方API的依赖,以及如何确保模型在实际部署中的稳定性和一致性。
    10. 模型的“理解”能力:深入研究模型在文档处理中的“理解”能力,以及如何评估和提高这种能力。
    11. 模型的偏见和公平性:评估模型可能存在的偏见,并探索减少这些偏见的方法,以确保模型的公平性。
    12. 模型的可解释性和透明度:提高模型的可解释性,以便更好地理解其决策过程,并增加用户对模型输出的信任。

    这些探索点可以帮助研究者和开发者更好地理解和改进大型语言模型在文档理解任务上的性能,以及在实际应用中的可靠性和有效性。

    Q: 总结一下论文的主要内容

    A: 这篇论文的主要内容可以总结如下:

    1. 研究背景:论文探讨了GPT-4家族模型在文档理解领域的适用性,特别是在需要理解文本的空间布局和视觉线索的情况下。
    2. 文档理解定义:文档理解是指将文档转换成有意义的信息,通常需要集成布局、非文本元素和文本样式的线索。
    3. GPT-4家族模型:论文评估了不同版本的GPT-4模型,包括文本模型和能够处理图像输入的模型。
    4. 实验设计:作者选择了DocVQA、InfographicsVQA、SlideVQA和DUDE等数据集进行评估,并在验证集上对提示、图像分辨率和OCR引擎进行了优化。
    5. 性能评估:通过比较不同模型在各个数据集上的表现,发现结合视觉和文本信息的模型(如TURBO V + OCR)性能更优。
    6. 错误分析:分析了模型性能与输入文档表示信息的方式之间的关系,以及模型在不同证据位置和答案类型下的表现。
    7. 数据污染分析:探讨了训练或测试数据集可能在GPT-4模型训练数据中的情况,以及这可能对性能评估产生的影响。
    8. 局限性:论文讨论了研究的局限性,包括仅关注模型性能、数据集选择的合理性、未进行微调、OCR引擎的影响等。
    9. 未来研究方向:提出了未来研究的潜在领域,如文本布局的重要性、置信度校准、多QA问题处理等。
    10. 详细技术报告:与以往不公开的设置不同,作者提供了详细的技术报告和可复现的评估程序,确保了研究的透明度和可靠性。

    总的来说,这篇论文提供了对GPT-4家族模型在文档理解任务上性能的全面评估,并探讨了影响性能的多种因素,同时提出了未来研究的方向。

  • “闭门造车”之多模态模型方案浅谈

    前言

    大家好,今天我要和大家聊聊一个即便我闭门造车也能侃侃而谈的热门话题——多模态模型。近期Google的Gemini 1.5和OpenAI的Sora再次点燃了大家对多模态技术的热情。虽然我没有亲身实践过这些大模型,但凭借一些文本生成和图像生成的经验,我依然可以带大家一探究竟。

    问题背景

    多模态模型,简而言之,就是能同时处理图文混合的模型。有人可能会想,这不就是烧钱堆显卡,然后用Transformer“一把梭”搞定吗?其实没那么简单。文本生成一直有明确的方向——语言模型。而图像生成则没有这样清晰的路线,VAE、GAN、Flow、Diffusion等方法各显神通,原因就在于图像生成需要对连续变量进行概率建模,这比文本生成复杂得多。

    离散之路

    既然连续难搞,那能不能把图像离散化,套用文本生成的框架呢?答案是可以的,这也是目前的主流思路。图像本质上是离散的,比如一幅n \times n大小的RGB图像,就是3n^2个0~255的整数。我们可以通过VQ-VAE或者VQ-GAN这样的“图像Tokenizer”进行离散化,然后用文本生成的方式处理这些离散的图像Token。

    压缩损失

    虽然听起来很美好,但图像Tokenizer有一个大问题——信息损失。为了提高生成速度,通常会对图像进行高度压缩,这导致图像细节严重缺失。参考SEED的重构效果,虽然整体语义保持,但细节完全不同。无损压缩是理想状态,但目前的技术还达不到这个水平。

    扩散模型

    面对信息损失的问题,如果限定无损压缩,那么扩散模型是一个不错的选择。扩散模型通过将标准高斯分布映射为目标分布,有足够的熵源来保证生成效果。相比之下,Flow模型虽然设计上可逆,但效果上限不如扩散模型。因此,扩散模型成为了图像生成的首选。

    Patch输入

    一个大胆的想法是直接以原始图像的Patch作为输入,用Transformer进行处理。这样可以避免特征间的孤立问题。实验表明,这种做法是可行的,虽然训练步数较多,但在多模态大模型训练中的步数本身就很大,所以这不算大问题。

    文章小结

    本文介绍了一种多模态模型的设计构思,即直接以原始图像的Patch作为图像输入,文本部分常规预测下一个Token,图像部分用加噪图像重构原图。这种组合能够以最保真的方式实现多模态生成。虽然这只是我闭门造车的一些想法,但希望能给大家带来一些启发。

    参考文献

    苏剑林. (Feb. 21, 2024). 《“闭门造车”之多模态模型方案浅谈》[Blog post]. Retrieved from 科学空间


    希望大家喜欢这篇文章,欢迎分享和讨论!

  • 以蒸馏的名义:“从去噪自编码器到生成模型”重现江湖

    前言

    今天我们要聊的,是一篇名为《Score identity Distillation: Exponentially Fast Distillation of Pretrained Diffusion Models for One-Step Generation》的论文。顾名思义,这篇论文探讨了如何更快、更好地蒸馏扩散模型。即便你对蒸馏一无所知,看到这里也不必担心,咱们一步步来。

    蒸馏模型:从繁到简的艺术

    常规蒸馏步骤

    蒸馏的常规步骤是什么呢?简单来说,就是随机采样大量输入,然后用扩散模型生成相应的输出,用这些输入输出作为训练数据对,来监督训练一个新模型。但是,这种方法需要教师模型迭代多次(比如1000次)才能生成高质量输出,费时费力,还容易造成效果损失。有没有更高效的方法呢?

    Score Identity Distillation(SiD)

    这篇论文提出了一种名为“Score identity Distillation(SiD)”的方法。虽然名字高大上,但其实思路很简单:它利用了一些恒等式来设计和推导整个框架。不过,这些恒等式本身并不新,名字只是为了显得高端而已。

    重现江湖:从去噪自编码器到生成模型

    初级形式

    假设我们有一个训练好的教师扩散模型,它需要多步采样才能生成高质量图片。我们的目标是训练一个单步采样的学生模型,即一个类似GAN的生成器,只需输入噪声就能生成图像。如果我们有大量的输入输出对,那么直接监督训练就可以了,但如果没有呢?

    SiD采用了一个看似绕但很聪明的思路:如果学生模型生成的数据分布和目标分布很相似,那么用学生模型生成的数据集去训练一个扩散模型,它也应该和教师模型相似。

    点睛之笔

    谈到GAN,有些人可能会“闻之色变”,因为它们容易训崩。但SiD提出了一个有效的解决方案:通过恒等变换,尽量消除优化目标对某些变量的依赖,使得训练更加稳定。

    恒等变换

    具体来看,SiD通过一系列恒等变换,将优化目标简化为一个更易处理的形式。这些变换利用了概率密度定义和贝叶斯公式,使得训练过程更高效。

    实践中的挑战与解决方案

    训练中的坑

    虽然理论上SiD的方法看起来很美,但在实际操作中仍然存在一些挑战。例如,如何在不牺牲效果的前提下减少显存需求。论文提出了未来可以尝试对预训练模型加LoRA来进一步节省显存。

    延伸思考

    SiD的方法虽然已经很完善,但仍有改进空间。比如,是否可以进一步简化恒等变换,或者引入新的优化策略来提高训练效率。

    文章小结

    总的来说,SiD通过一系列精妙的恒等变换和优化策略,成功地将复杂的多步扩散模型蒸馏为单步生成模型。这不仅提高了生成效率,还减少了对训练数据和计算资源的需求。未来,随着更多改进和优化的引入,SiD有望在更加广泛的应用场景中展现其价值。


    参考文献

    苏剑林. (May. 01, 2024). 《以蒸馏的名义:“从去噪自编码器到生成模型”重现江湖 》[Blog post]. Retrieved from https://spaces.ac.cn/archives/10085

  • 数字版“疯牛病”:生成模型的自噬之路

    引言

    众所周知,不管是文本还是视觉领域,各种生成模型正在以无法阻挡的势头“肆虐”互联网。虽然大家都明白,实现真正的通用人工智能(AGI)还有很长的路要走,但这并不妨碍人们越来越频繁地利用生成模型来创作和分享内容。君不见,很多网络文章已经配上了Stable Diffusion模型生成的插图;君不见,很多新闻风格已经越来越显现出ChatGPT的影子。看似无害的这种趋势,正悄然引发了一个问题:我们是否应该对互联网上充斥的生成模型数据保持警惕?

    近期发表的论文《Self-Consuming Generative Models Go MAD》揭示了一种令人担忧的可能性,那就是生成模型正在互联网上的无节制扩张,可能会导致一场数字版的“疯牛病”疫情。本文将带您一起学习这篇论文,探讨其可能带来的影响。

    “食自己”

    一方面,人们使用生成模型的频率越来越高,将会导致互联网上由生成模型创作的内容越来越多;另一方面,生成模型也在更新迭代,其所用的数据也是从互联网爬取的。可以想像,后续的训练集中由生成模型创作的部分占比将会越来越高。换句话说,后面的每一代模型迭代时可能都没有足够多的新鲜数据,纯粹是用自己生产的数据来训练,用广东话说就是“食自己”,这将导致模型的质量或者多样性越来越差,原论文称之为“模型自噬紊乱(Model Autophagy Disorder,MAD)”。

    无独有偶,生物学上也曾出现了类似的例子。牛是草食动物,然而,一些畜牧业者为了增强其营养供应,将其他牛的残骸(包括大脑)粉碎并混入饲料中。这在当时看起来是一个机智的做法,但未曾想到最后导致了“疯牛症”的出现和大规模传播。这一事例说明,长期的“食自己”可能会导致有害因素累积在生物体内,一旦达到一定程度,甚至可能触发灾难性的疾病。

    因此,我们同样需要反思生成模型的“肆虐”是否会在互联网上引发另一场“疯牛症”——这不仅可能导致信息的同质化,使得各种内容开始变得千篇一律,缺乏原创性和多样性,还有可能引发一系列无法预见的问题。

    降多样性

    可能有读者会产生疑问:生成模型不就是对真实数据分布的模拟吗?即便连续地使用生成模型的数据进行迭代训练,应该只是在重复呈现真实的数据分布,怎么会导致多样性的丧失呢?

    这其中的原因是多方面的。首先,训练生成模型的数据往往并非直接取自真实分布,而是经过人为的加工处理,比如去噪、规范化和对齐。经过加工后,训练集就已经丧失了部分多样性。例如,我们之所以能观察到很多新闻报道或知乎回答都有一股ChatGPT的味道,并非是因为内容本身,而是因为它们的格式与ChatGPT的相似性,这就说明ChatGPT的训练数据和输出结果的风格都比较明显且局限。再比如,为了降低图像生成模型的训练难度,我们通常需要对图像进行对齐处理,如在训练人脸生成模型时,常常需要将所有人脸的眼睛对齐到同一位置,这些操作也导致了多样性的丧失。

    此外,还有一个很关键的因素是,由于生成模型本身或者训练技巧等限制,每个生成模型都无法做到完美,此时我们通常会主动地引入一些牺牲多样性来提高生成质量的技巧。比如,对于GAN、Flow等生成模型,我们会选择降低采样噪声的方差,以获得质量更高的生成结果,这就是所谓的截断技巧或退火技巧。另外,如《生成扩散模型漫谈(九):条件控制生成结果》所述,在扩散模型中我们通常引入条件信息以控制输出结果,不管是Classifier-Guidance还是Classifier-Free方案,额外条件的引入也会限制生成结果的多样性。总而言之,在生成模型不尽完美时,我们在平衡质量与多样性过程中,就主动地放弃了部分多样性。

    正态分布:简单却深刻的例子

    为了更深刻地认识到这种现象,我们接下来将探讨一些具体的例子。作为开始,我们首先考虑的是正态分布,因为它足够简单,所以求解和分析都更加清晰。但后面我们可以观察到,结果已经足够有代表性了。

    假设真实分布是多元正态分布 N(μ0, Σ0),我们用来建模的分布也是正态分布 N(μ, Σ),那么训练模型的过程,就是从训练集里边估计均值向量 μ 和协方差矩阵 Σ。接下来我们假设每一代生成模型训练时,都只用到上一代生成模型创作的数据,这是比较极端的假设,但不可否认当生成模型进一步普及时,这个假设越来越接近成立。

    在这些假设下,我们从 t-1 代生成模型 N(μt-1, Σt-1) 中采样 n 个样本 x(1)t-1, x(2)t-1,⋯, x(n)t-1,来训练第 t 代的生成模型:

    μt = 1/n ∑_{i=1}^n x(i)t-1
    Σt = 1/(n-1) ∑_{i=1}^n (x(i)t-1 - μt)(x(i)t-1 - μt)^⊤

    注意,如果加上截断技巧,那么第 t 代的生成模型就是 N(μt, λΣt),其中 λ∈(0,1)。于是可以想象,每一代的方差(多样性)都将以 λ 的比率衰减下去,最后变成零(完全丧失多样性)。如果不使用截断技巧(即 λ=1)是不是就没事了?并不是。根据定义 μt = 1/n ∑_{i=1}^n x(i)t-1,由于 x(i)t-1 都是随机采样得到的,所以 μt 也是一个随机变量,根据正态分布的叠加性,它实际上服从:

    μt ∼ N(μt-1, 1/n Σt-1) ⇒ μt ∼ N(μ0, t/n Σ0)

    可以预见,当 t 足够大时,μt 本身就会明显偏离 μ0,这对应的是质量的崩溃,而不单单是多样性的降低。

    总的来说,截断技巧的引入,会大大加速多样性的丧失速度,而即便没有截断技巧,在长期有限样本的迭代训练中,生成分布也有可能明显偏离原始的真实分布。注意,正态分布这个例子所做的假设已经比一般的生成模型要弱得多,至少它的拟合能力是保证足够的,但这依然不可避免多样性衰减或者质量崩溃,而对于真实世界的数据和能力有限的生成模型来说,理论上只会更加糟糕。

    生成模型的实验验证

    对于实际的生成模型,理论分析难以进行,所以只能通过实验来探索结果了。原论文做了非常丰富的实验,结果基本上跟正态分布的结论一致,即如果加入截断技巧的话,多样性将会迅速丧失,即使没有截断技巧,经过反复迭代后的模型依然会不可避免地出现一些偏离。

    小结

    本文探讨了当各种生成模型大规模“肆虐”互联网时可能出现的后果。在生成模型反复用自己生成的数据进行更新迭代时,可能会导致信息严重同质化、丧失多样性的问题,类似于曾经因“牛吃牛”而出现的“疯牛病”。原论文通过理论分析和实验验证,揭示了生成模型在长期迭代中可能出现的“模型自噬紊乱(Model Autophagy Disorder,MAD)”现象。

    尽管生成模型为我们带来了许多便利和创新,但我们也需要警惕其潜在的风险。未来,我们或许需要更智能的数据筛选机制和更丰富的数据源来避免这种“食自己”的现象,从而确保生成模型的多样性和质量。

    参考文献

    希望本文能为您带来一些启发,帮助您更好地理解生成模型的潜在风险。如果您有任何疑问或建议,欢迎留言交流!


    生成模型的未来,或许不只是技术的进步,更是我们对其使用方式的深思熟虑。让我们共同期待一个更加多样化和创新的数字世界!

  • 梯度流:从数学到魔法的奇幻旅程

    导言:梯度流的神奇世界

    在数学和机器学习的广袤世界中,有一个神秘的概念被称为“梯度流(Gradient Flow)”。如果你对梯度下降法有一定了解,那么你应该知道它是寻找函数最小值的强大工具。而梯度流,则是将这个寻找最小值的过程中的各个点连接起来,形成一条随时间变化的轨迹。本文将带你深入探讨这个奇妙的概念,并进一步扩展到概率空间,揭示出“Wasserstein梯度流”的神秘面纱。

    梯度下降:从山顶到山谷的滑梯

    1.1 梯度下降的基本原理

    假设我们站在一座山顶,想要找到最低谷的那一点。为了实现这个目标,我们可以使用梯度下降法。这个方法的核心在于,我们总是沿着当前点的负梯度方向前进,因为负梯度方向是局部下降最快的方向。具体的迭代公式如下:

    xt+1 = xt − α∇xf(xt)

    在这个公式中,xt表示当前的位置,α是学习率,∇xf(xt)是函数在xt点的梯度。如果函数f(x)是凸的,梯度下降通常能够找到最小值。即使函数不是凸的,梯度下降也能让我们接近一个极小值点。

    1.2 梯度流的定义

    如果我们将学习率α记作Δt,并考虑当Δt趋近于0时的极限情况,那么梯度下降的迭代公式将变为一个常微分方程(ODE):

    dxt/dt = −∇xf(xt)

    求解这个ODE得到的轨迹,就是所谓的“梯度流”。换句话说,梯度流是梯度下降在寻找最小值过程中的轨迹。

    最速方向:为什么要选择梯度下降

    2.1 局部最快下降方向

    为什么梯度下降法如此受欢迎?一个常见的说法是“梯度的负方向是局部下降最快的方向”。这个说法虽然没错,但有些不够严谨。因为“最快”涉及到定量比较,只有先确定比较的指标,才能确定“最”的结果。

    2.2 约束优化视角

    在欧氏空间中,梯度的负方向是局部下降最快的方向。然而,如果我们换一个模长的定义,或者换一个约束条件,结果可能就会不同。因此,从优化的角度来看,梯度下降法对应的优化目标是:

    xt+1 = argminx ||x - xt||^2 / (2α) + f(x)

    这意味着我们将约束条件转化为一个惩罚项,从而简化了优化过程。

    泛函与概率空间:从函数到密度函数

    3.1 泛函的引入

    普通的多元函数输入一个向量,输出一个标量。而泛函则是输入一个函数,输出一个标量。例如,定积分运算:

    I[f] = ∫ba f(x) dx

    在这里,I[f]就是一个泛函。我们将关注的泛函定义域为全体概率密度函数的集合,即研究输入一个概率密度、输出一个标量的泛函。

    3.2 Wasserstein梯度流的引入

    假设我们有一个泛函F[q],想要计算它的最小值。模仿梯度下降的思路,我们可以沿着它的负方向进行迭代。对于概率分布来说,性态比较好的距离是Wasserstein距离。我们可以将欧氏距离替换为Wasserstein距离,最终得到:

    ∂qt(x)/∂t = ∇x ⋅ (qt(x) ∇x δF[qt(x)] / δqt(x))

    这就是“Wasserstein梯度流”,其中δF[q]/δqF[q]的变分导数。

    应用与示例:从理论到实践

    4.1 f散度的应用

    例如,对于f散度,我们可以得到:

    ∂qt(x)/∂t = ∇x ⋅ (qt(x) ∇x(f(rt(x)) − rt(x) f'(rt(x))))

    其中,rt(x) = p(x) / qt(x)。这一公式可以帮助我们通过ODE从分布qt中采样。

    4.2 逆KL散度的应用

    另一个简单的例子是逆KL散度,当我们使用负对数作为函数f时,得到:

    ∂qt(x)/∂t = -∇x ⋅ (qt(x) ∇x log(p(x) / qt(x)))

    这正好是一个Fokker-Planck方程,对应的随机微分方程(SDE)为:

    dx = ∇x log(p(x)) dt + √2 dw

    这意味着,如果我们知道log(p(x)),那么就可以用上式实现从p(x)中采样。

    文章小结

    本文介绍了从梯度下降法到梯度流的概念,并进一步扩展到概率空间,引入了Wasserstein梯度流的概念。我们讨论了这些概念与连续性方程、Fokker-Planck方程和ODE/SDE采样之间的联系。通过这些讨论,我们不仅揭示了数学优化中的一些核心原理,还展示了这些原理在概率密度函数优化中的应用。希望这次奇幻旅程让你对梯度流有了更深的理解!


    如果你对优化算法和深度学习有更多兴趣,可以参考以下资源:

    • 《从动力学角度看优化算法(一):从SGD到动量加速》
    • 《从动力学角度看优化算法(三):一个更整体的视角》
    • 《从Wasserstein距离、对偶理论到WGAN》

    愿你在数学与机器学习的世界中探索得愉快,发现更多的奇妙与乐趣!

  • 梯度流与Wasserstein梯度流:从山顶滑雪到概率风景线

    大家好!今天我们要聊一聊一个有趣的概念,叫做“梯度流(Gradient Flow)”。别紧张,这不是物理课,而是数学和机器学习的世界。简单来说,梯度流就是我们用梯度下降法寻找最小值的过程中,每个点连成的一条轨迹,就像你在山顶滑雪,每个滑下的轨迹都是梯度流。在这篇文章的后半部分,我们将探讨如何将梯度流的概念扩展到概率空间,变成“Wasserstein梯度流”。这将为我们理解连续性方程和Fokker-Planck方程等内容提供一个全新的视角。

    梯度下降:从山顶到山谷

    假设我们要寻找一个光滑函数的最小值。常见的做法是梯度下降(Gradient Descent),就像从山顶滑雪一样,沿着山坡的斜度(即梯度)往下滑。如果这个山坡是光滑且凹的(数学术语叫凸的),那么你通常能顺利滑到山谷;如果山坡崎岖不平,你可能会卡在某个小山谷里,但能下滑到某个低谷也算不错了。

    如果我们把滑雪的步长记为“Δt”,滑雪的轨迹记为“xt”,当步长趋近于0时,这个滑雪过程就变成了一条连续的轨迹,这条轨迹就是所谓的“梯度流”。这意味着,只要你沿着梯度方向滑动,即使步长很小,你总能往让目标函数值变小的方向前进。

    最速方向:滑雪的最佳路线

    为什么要用梯度下降?一个主流说法是“梯度的负方向是局部下降最快的方向”。这就好比在滑雪时,你选择坡度最大、速度最快的路线。然而,这个说法有点不严谨,因为没说明前提条件——在欧氏空间中,梯度的负方向才是局部下降最快的方向。如果换一种度量方式,结果可能就不一样了。

    优化视角:从滑雪到滑翔机

    我们还可以将梯度下降的目标推广到更复杂的优化场景中。比如,自然梯度下降(Natural Gradient Descent)使用的是KL散度作为正则项。想象一下,你不仅要从山顶滑到山谷,还要避开雪崩和岩石,这就需要更复杂的导航技巧。通过这种方式,我们可以得到更精确的轨迹。

    泛函入门:从滑雪到概率风景线

    “泛函”这个词听起来有点吓人,但其实它只是输入一个函数,输出一个标量的运算,比如定积分。我们可以将这个概念推广到概率密度函数的集合中,也就是说,输入一个概率密度函数,输出一个标量。

    概率之流:从滑雪到漂流

    假如我们有一个泛函F[q],想要计算它的最小值,那么可以模仿梯度下降的思路,沿着它的负方向进行迭代。在概率空间中,我们可以使用Wasserstein距离来替代欧氏距离,这样就得到了“Wasserstein梯度流”。

    尽管求解这些数学公式可能有点复杂,但最终的结果是,我们可以通过这种方法来理解和求解连续性方程和Fokker-Planck方程。这就像是从滑雪转换成漂流,通过水流的方向来找到最优的路径。

    总结:从山顶滑雪到概率漂流

    今天,我们探讨了梯度流和Wasserstein梯度流的概念,从简单的梯度下降到复杂的概率空间优化。通过这种视角,我们不仅更好地理解了连续性方程和Fokker-Planck方程,还为未来的研究提供了新的思路和方向。

    希望通过这篇文章,大家不仅学到了知识,还能感受到数学和机器学习的奇妙之处。就像滑雪和漂流一样,掌握了技巧,你就能在这片知识的海洋中自由穿梭。下次再见!

  • 朴素贝叶斯与注意力机制:一场“心有灵犀”的邂逅

    嘿,朋友们!今天我们要聊的可是AI界的两位“大明星”——朴素贝叶斯(Naive Bayes)和注意力机制(Attention)。这两位一个朴实无华,一个炫酷吊炸天,但你知道吗?它们之间其实有很多“不可告人”的秘密!

    朴素贝叶斯:老实人的自白

    先来认识一下朴素贝叶斯,这位老兄可是AI界的“老黄牛”,简简单单,踏踏实实。他的工作原理就像是你在餐厅点菜,完全按照菜单上的推荐组合来点。每道菜都有它自己的独立评分,然后你根据这些评分来决定哪道菜最可能是你喜欢的。

    一般化的朴素贝叶斯:变身超级英雄

    不过,老实人的日子久了,朴素贝叶斯也想来点儿新花样,于是他决定进行一次“大变身”。他学会了一种叫做“加权平均”的技术,不再是每道菜的评分都一样,而是根据餐厅老板的推荐来调整每道菜的权重。这样一来,他的推荐就显得更加聪明了。

    注意力机制:时尚界的弄潮儿

    接下来登场的是注意力机制,这位可是AI界的新锐潮人。他的理念是“要注意到每一个细节”。在他看来,每个词对当前词的影响力是不一样的,有的词可能只是打酱油的,有的词则是重头戏。于是,他发明了“注意力分数”,用来衡量每个词的重要性,然后根据这些分数进行加权平均。

    当朴素贝叶斯遇上注意力机制

    这时,朴素贝叶斯和注意力机制这两个大明星终于碰面了。朴素贝叶斯惊讶地发现,这个炫酷的注意力机制,竟然和自己有那么多相似之处!原来,注意力机制也是一种广义的朴素贝叶斯,只不过是通过更加灵活的加权平均,来捕捉词与词之间的复杂关系。

    深度模型:层叠与残差的魔法

    不过,单层的朴素贝叶斯和注意力机制能力有限,为了让自己变得更强大,他们决定学习一种叫做“层叠”的魔法。简单来说,就是把多个简单的模型叠加起来,形成一个超级复杂的模型。

    在这个过程中,他们还学会了一种叫做“残差连接”的技巧。这就像是你在写文章的时候,既要保持文章的连贯性,又要突出重点。通过这种方式,模型在捕捉复杂关系的同时,也能保留一些简单的、直接的关系。

    总结:一场“心有灵犀”的邂逅

    今天,我们见证了朴素贝叶斯与注意力机制这两位大明星的“心有灵犀”时刻。通过这种视角,我们不仅更好地理解了注意力机制中的层叠与残差,还为未来的研究提供了新的思路和方向。

    所以,朋友们,如果你对AI技术感兴趣,不妨多了解一下朴素贝叶斯和注意力机制这两位大明星。他们之间的“化学反应”一定会让你大开眼界!


    希望通过这篇文章,大家不仅学到了知识,还能会心一笑。AI的世界其实并不枯燥,关键是要找到对的方式去探索。下次我们再来聊聊其他有趣的话题吧!

  • Transformer升级之路:逆用Leaky ReRoPE解决推理成本问题

    在上周的文章《Transformer升级之路:12、无限外推的ReRoPE?》中,我们介绍了ReRoPE和Leaky ReRoPE的创新方法。实验结果表明,它们在几乎不损失训练效果的情况下能够扩展LLM的Context长度,并且实现了“longer context, lower loss”的理想特性。尤其是ReRoPE,似乎表现出了无限的Context处理能力。然而,这些方法也带来了推理阶段的成本增加问题。本文将探讨一种新的解决方案:逆用Leaky ReRoPE。

    回顾RoPE与Leaky ReRoPE

    RoPE与位置编码

    RoPE(Rotary Position Embedding)形式上是一种绝对位置编码,但实际上它实现了相对位置编码。其对应的相对位置矩阵为:

    *** QuickLaTeX cannot compile formula:
    [\left(\begin{array}{cccccccccc}0 & 1 & 2 & 3 & \cdots & L-2 & L-1\-1 & 0 & 1 & 2 & \cdots & L-3 & L-2\-2 & -1 & 0 & 1 & \cdots & L-4 & L-3\\vdots & \vdots & \vdots & \vdots & \ddots & \vdots & \vdots\2-L & 3-L & 4-L & \cdots & -2 & -1 & 0\1-L & 2-L & 3-L & \cdots & -3 & -2 & -1\\end{array}\right)]
    
    *** Error message:
    Extra alignment tab has been changed to \cr.
    leading text: ...2 & 3 & \cdots & L-2 & L-1\-1 & 0 & 1 & 2 &
    Undefined control sequence \2.
    leading text: ...vdots & \vdots & \ddots & \vdots & \vdots\2
    Extra alignment tab has been changed to \cr.
    leading text: ... \vdots & \vdots\2-L & 3-L & 4-L & \cdots &
    Undefined control sequence \1.
    leading text: ...ts\2-L & 3-L & 4-L & \cdots & -2 & -1 & 0\1
    Extra \right.
    leading text: ... & \cdots & -3 & -2 & -1\\end{array}\right)
    \begin{array} on input line 8 ended by \end{document}.
    leading text: \end{document}
    Improper \prevdepth.
    leading text: \end{document}
    Missing } inserted.
    leading text: \end{document}
    Missing \cr inserted.
    leading text: \end{document}
    Missing $ inserted.
    leading text: \end{document}
    
    

    Leaky ReRoPE与窗口化处理

    为了在保留局域性的同时避免Long Context导致位置越界问题,Leaky ReRoPE将推理阶段的相对位置矩阵改为:

    *** QuickLaTeX cannot compile formula:
    [\left(\begin{array}{cccccccccc}0 & 1 & 2 & \cdots & w-1 & w & \cdots & w+k & \cdots & w+L-1-wk\-1 & 0 & 1 & \cdots & w-2 & w-1 & \cdots & w+k-1 & \cdots & w+L-2-wk\\vdots & \vdots & \vdots & \ddots & \vdots & \vdots & \ddots & \vdots & \vdots & \vdots\-w+1 & -w+2 & -w+3 & \cdots & -1 & 0 & \cdots & k-1 & \cdots & L-2-wk\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots\\end{array}\right)]
    
    *** Error message:
    Extra alignment tab has been changed to \cr.
    leading text: ...& w & \cdots & w+k & \cdots & w+L-1-wk\-1 &
    Extra alignment tab has been changed to \cr.
    leading text: ... & \ddots & \vdots & \vdots & \vdots\-w+1 &
    Extra \right.
    leading text: ...\vdots & \vdots & \vdots\\end{array}\right)
    \begin{array} on input line 8 ended by \end{document}.
    leading text: \end{document}
    Improper \prevdepth.
    leading text: \end{document}
    Missing } inserted.
    leading text: \end{document}
    Missing \cr inserted.
    leading text: \end{document}
    Missing $ inserted.
    leading text: \end{document}
    You can't use `\end' in internal vertical mode.
    leading text: \end{document}
    \begin{array} on input line 8 ended by \end{document}.
    leading text: \end{document}
    Missing } inserted.
    
    

    其中,( w ) 是窗口宽度,( k ) 用来调节可处理的最大长度。

    ReRoPE的无限扩展能力

    ReRoPE直接取了 ( k \to \infty ) 的极限:

    *** QuickLaTeX cannot compile formula:
    [\left(\begin{array}{cccccccccc}0 & 1 & 2 & \cdots & w-1 & w & \cdots & w & \cdots & w\-1 & 0 & 1 & \cdots & w-2 & w-1 & \cdots & w & \cdots & w\\vdots & \vdots & \vdots & \ddots & \vdots & \vdots & \ddots & \vdots & \vdots & \vdots\-w+1 & -w+2 & -w+3 & \cdots & -1 & 0 & \cdots & w & \cdots & w\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots\\end{array}\right)]
    
    *** Error message:
    Extra alignment tab has been changed to \cr.
    leading text: ...ts & w-1 & w & \cdots & w & \cdots & w\-1 &
    Extra alignment tab has been changed to \cr.
    leading text: ... & \ddots & \vdots & \vdots & \vdots\-w+1 &
    Extra \right.
    leading text: ...\vdots & \vdots & \vdots\\end{array}\right)
    \begin{array} on input line 8 ended by \end{document}.
    leading text: \end{document}
    Improper \prevdepth.
    leading text: \end{document}
    Missing } inserted.
    leading text: \end{document}
    Missing \cr inserted.
    leading text: \end{document}
    Missing $ inserted.
    leading text: \end{document}
    You can't use `\end' in internal vertical mode.
    leading text: \end{document}
    \begin{array} on input line 8 ended by \end{document}.
    leading text: \end{document}
    Missing } inserted.
    
    

    逆用Leaky ReRoPE:让训练阶段变慢,推理阶段变快

    为什么逆用?

    原本的ReRoPE和Leaky ReRoPE在推理阶段增加了计算成本。如果我们反过来在训练阶段使用Leaky ReRoPE,而在推理阶段使用常规的RoPE,能否解决这一问题呢?

    实验与结果

    我们进行了以下实验组合:“GAU + Deep Norm + Tiger + 语言模型”。在训练阶段使用 ( k=1/16, w=128 ) 的Leaky ReRoPE,在推理阶段使用正常的RoPE。测试结果如下:

    测试长度BaselineBaseline-lognNTK-RoPE-fixedNTK-RoPE-logn†-fixedNTK-RoPE-logn-fixedNTK-RoPE-mixedNTK-RoPE-logn†-mixedNTK-RoPE-logn-mixedReRoPE-w256ReRoPE-w256-logn†ReRoPE-w256-lognInvLeaky ReRoPE-w128-lognInvLeaky ReRoPE-w128-b8-lognHFWA512 (训练)
    训练49.41%49.40%49.41%49.41%49.40%49.41%49.41%49.40%49.41%49.41%49.40%49.38%49.62%48.70%
    4096(重复)24.17%24.60%51.86%55.94%62.85%53.09%59.11%68.91%77.90%82.40%85.12%82.25%81.15%80.84%
    4096(不重复)23.16%24.02%39.61%41.11%44.14%40.12%42.38%45.41%48.48%48.85%49.07%48.32%48.85%48.15%

    其中,( b8 ) 是指RoPE的频率底数从10000换成了80000。可以看到,“Leaky ReRoPE → RoPE”的InvLeaky ReRoPE虽然效果上不如“RoPE → ReRoPE/Leaky ReRoPE”,但依然胜过了HFWA,并且由于推理阶段是常规的RoPE,可以套用现成的加速技术,因此依然是有相当竞争力的。

    我们对 ( k, w, b ) 等参数做了一些简单的调参,发现最优解基本上就是上述两个组合。具体来说:

    调参与训练速度

    • ( k ) 设置为“扩展倍数的2倍的倒数”
    • ( w ) 设置为训练长度的四分之一
    • ( b ) 可选乘以扩展倍数

    在上述实验中,模型参数量为1亿,训练长度为512,每1000步的训练时间从330秒增加到了350秒,增加不到10%。虽然这里有GAU的原因,因为GAU是单头的注意力,本身比多头注意力快。如果是多头注意力或者训练长度更长,增加幅度可能会更大,但估计不会超过50%,依然在可接受范围内。

    小结

    本文提出了Leaky ReRoPE的“逆用”方法,通过在训练阶段使用更大步长的Leaky ReRoPE,使得推理阶段可以退回常规的RoPE,从而保持推理速度不变。实验结果表明,这种方法依然具有相当的竞争力。未来的工作可以进一步优化参数设置,提升模型性能。


    希望这篇文章能够帮助您更好地理解逆用Leaky ReRoPE的方法及其优势。如果有任何疑问或建议,欢迎在评论区留言讨论。

  • 增大Tokenizer词表:LLM续写任务的新挑战与解决方案

    语言模型(LLM)在自然语言处理中的应用越来越广泛,而通过增大Tokenizer的词表来提高压缩率,从而缩短串行长度、降低解码成本,是大家都喜闻乐见的事情。然而,这种方法在带来诸多优点的同时,也可能产生一些问题。本文将探讨增大词表后语言模型在续写任务中遇到的问题,并提出解决方案。

    优劣分析

    优点

    1. 解码速度提升:由于LLM是自回归的,解码过程会随着序列长度的增加变得越来越慢。通过“增大词表 → 提高压缩率 → 缩短串行长度”,可以减少相同文本对应的tokens数量,从而减少解码步数,提升解码速度。
    2. 缓解Exposure Bias:语言模型的训练方式通常是Teacher Forcing,缩短串行长度能够缓解Teacher Forcing带来的Exposure Bias问题,从而可能提升模型效果。

    缺点

    1. 割裂字符联系:增大词表可能会割裂token与token之间在字符层面的联系,影响模型的泛化能力。例如,“太阳能”和“太阳”都是词表中的一个词时,模型可能不知道“太阳能”是由“太阳”和“能”组成,从而难以完成一些子词相关的任务。
    2. 续写问题:增大词表后,常见的命令或短语可能被视为单个token,导致模型在续写时无法正确生成。例如,“import numpy as np”被当作一个token,用户输入“import numpy”时,模型无法续写出“ as np”。

    续写问题

    Armen Aghajanyan分享了一个典型的例子:在训练代码模型时使用超大词表,导致“import numpy as np”变成了一个token。当用户输入“import numpy”时,模型无法续写出“ as np”。这种现象在自然语言模型中也很常见。例如,“太阳能”和“太阳”都是独立的token时,用户输入“太阳”后,模型续写出的内容可能不符合用户的期望。

    参考对策

    虽然Armen Aghajanyan提到的问题确实存在,但笔者认为通过适当的处理,这个问题不仅可以解决,还能转化为增大词表的优点。以下是一个可行的解决方案:

    基于词表的前缀搜索

    假设用户输入了“广州的白云”,Tokenizer将其分为“广州/的/白云”。此时,如果直接将这三个词转换为id输入模型,模型可能无法续写出“广州/的/白云机场”等结果。因此,我们可以进行以下步骤:

    1. 前缀搜索:对“白云”进行词表的前缀搜索,假设搜索结果为“白云”、“白云机场”、“白云山”、“白云路”四个词。
    2. 计算条件概率:用LLM计算以下条件概率:
      [p(\text{白云}|\text{广州, 的})p(\text{白云机场}|\text{广州, 的})p(\text{白云山}|\text{广州, 的})p(\text{白云路}|\text{广州, 的})]
    3. 归一化与采样:将条件概率归一化后进行采样,决定续写内容。例如,采样结果为“白云机场”,则输出“机场”,并按照“广州/的/白云机场”进行续写。

    这种方法不仅解决了Armen Aghajanyan所提到的问题,还能在词表压缩率高的情况下,一次性生成更多的字。特别地,回退操作只需在采样第一步进行,从第二步开始就不需要回退操作,计算量很少。

    文章小结

    本文介绍了增大词表后LLM在续写任务中可能出现的问题,并分享了参考的解决方案。通过结合基于LLM的续写和基于词表的前缀搜索,可以有效地解决续写问题,并将增大词表的缺点转化为优点。希望这些思路能为语言模型的进一步优化提供参考。