Press "Enter" to skip to content

在生产环境中部署生成模型的三个挑战

如何在不吓跑用户的情况下部署大型语言和扩散模型到您的产品中。

作者在SDXL 1.0中生成的图片。

OpenAI、Google、Microsoft、Midjourney、StabilityAI、CharacterAI等等,每个人都在竞相推出最佳的文本到文本、文本到图像、图像到图像和图像到文本模型的解决方案。

原因很简单——这个领域提供了广阔的机会;毕竟,这不仅仅是娱乐,还有无法实现的实用性。从更好的搜索引擎到更具影响力和个性化的广告活动,再到友好的聊天机器人,例如Snap的MyAI。

虽然这个领域非常灵活,有很多不断更新的模型检查点,但每个与生成AI合作的公司都在寻求解决一些挑战。

在这里,我将讨论在生产中部署生成模型时所面临的主要挑战以及如何解决它们。虽然有很多不同类型的生成模型,但在本文中,我将重点介绍扩散和基于GPT的模型的最新进展。然而,这里讨论的许多主题也适用于其他模型。

什么是生成AI?

生成AI广泛描述了一组可以生成新内容的模型。广为人知的生成对抗网络(GAN)通过学习真实数据的分布并从添加的噪声中生成变异性。

生成AI的最新繁荣源于这些模型达到了人类水平的规模。解锁这一转变的原因很简单——我们现在才有足够的计算能力(因此NVIDIA的股价飙升)来训练和维护具有足够容量以实现高质量结果的模型。目前的进展主要源于两种基本架构——transformers和扩散模型。

最近一年中最重要的突破可能是OpenAI的ChatGPT——一个基于文本的生成模型,最新的ChatGPT-3.5版本拥有1750亿个参数,并具备足够的知识库以进行各种主题的对话。虽然ChatGPT是一个单模态模型,因为它只能支持文本,但多模态模型可以接受多种输入和输出,例如文本和图像。

图像到文本和文本到图像的多模态架构在文本和图像概念之间共享一个潜在空间。通过在需要同时使用两个概念的任务上进行训练(例如图像字幕),通过惩罚两个不同模态中相同概念在潜在空间中的距离,可以获得这个潜在空间。一旦获得了这个潜在空间,就可以将其重复使用于其他任务。

图像到文本模型示例。图片由作者提供。

今年发布的值得注意的生成模型包括DALLE/Stable-Diffusion(文本到图像/图像到图像)和BLIP(图像到文本实现)。DALLE模型可以根据提示或图像和提示作为输入生成图像作为响应,而基于BLIP的模型可以回答有关图片内容的问题。

挑战和解决方案

不幸的是,机器学习并非免费午餐,大规模生成模型在部署到生产环境时会遇到一些挑战——模型大小和延迟、偏见和公平性以及生成结果的质量。

模型大小和延迟

模型大小趋势。数据来自P. Villalobos。图片由作者提供。

最先进的GenAI模型非常庞大。例如,文本到文本的Meta的LLaMA模型的参数范围在70亿到650亿之间,而ChatGPT-3.5模型则有1750亿个参数。这些数字是合理的-在简化的世界中,经验法则是模型越大,用于训练的数据越多,质量就越好。

文本到图像模型,虽然较小,但仍比它们的生成对抗网络前身要大得多-Stable Diffusion 1.5的检查点只有不到10亿个参数(占用超过3 GB的空间),而DALLE 2.0则有35亿个参数。很少有GPU有足够的内存来维护这些模型,通常您需要一个车队来维护一个大型模型,这可能很快变得非常昂贵,更不用说在移动设备上部署这些模型了。

生成模型需要时间来生成输出。对于某些模型,延迟是由于其大小-即使在一组GPU上传播信号也需要时间,而对于其他模型,延迟是由于生成高质量结果的迭代性质。扩散模型在默认配置下需要50个步骤来生成图像,减少步骤的数量会降低输出图像的质量。

解决方案:将模型变小通常有助于加快速度-蒸馏、压缩和量化模型也会减少延迟。高通已经通过压缩稳定的扩散模型为移动设备部署铺平了道路。最近发布了稳定扩散的更小、经过蒸馏且速度更快的版本(tiny和small)。

针对特定模型的优化也可以帮助加速推理-对于扩散模型,可以生成低分辨率的输出,然后将其放大或使用较少的步骤和不同的调度程序,因为对于某些模型,较少的步骤效果最好,而对于其他模型,较多的迭代次数可以生成更高质量的结果。例如,Snap最近展示了使用8个步骤就足以使用稳定扩散1.5生成高质量的结果,在训练时采用了各种优化技术。

例如,使用NVIDIA的tensorrt和torch.compile对模型进行编译可以大大减少延迟,而且只需要进行最少的工程努力。

在边缘-在移动设备上部署深度学习应用程序

在受限设备上实现效率-准确性平衡的技术

towardsdatascience.com

偏见、公平性和安全性

您曾经尝试过破解ChatGPT吗?许多人成功地发现了其偏见和不公平性问题,OpenAI在解决这些问题方面做得很好。如果没有大规模的修复,聊天机器人可能会通过传播有害和不安全的思想和行为而引发现实世界的问题。

有些例子中,人们试图破解该模型,例如在政治领域;例如,ChatGPT拒绝创作关于特朗普的诗歌,但愿意创作关于拜登的诗歌,特别是在性别平等和工作方面-这暗示了某些职业是男性的,某些职业是女性的,还有种族问题。

与文本到文本模型一样,文本到图像和图像到文本模型也存在偏见和公平性问题。当要求Stable Diffusion 2.1模型生成医生和护士的图像时,它会产生一个白人男性的图像和一个白人女性的图像。有趣的是,偏见会取决于提示中指定的国家-例如,日本医生或巴西护士。

在生产环境中部署生成模型的三个挑战 四海 第4张

Asking a Stable Diffusion model to generate an image of doctor and and an image of a nurse. Image generated by the Author with SD 2.1 interface.

玩弄BLIP图像到文本模型,并输入一张超重人的图像以及男性和女性医生的图像,我得到了带有判断和偏见的图像描述-“一个胖男人”,“一个男性医生”,“一个穿着实验室白大褂和听诊器的女人”。

在生产环境中部署生成模型的三个挑战 四海 第6张

在生产环境中部署生成模型的三个挑战 四海 第7张

作者使用稳定扩散2.1生成的图像,左到右的标题由BLIP模型生成 [1] 一个胖人吃着冰淇淋;[2] 一个穿着白大褂和领带的男医生;[3] 一个穿着白色实验服,脖子上挂着听诊器的女人。图像由作者使用SD 2.1界面生成,并通过BLIP传递。

如何测试该问题:这是一个相当难以诊断的问题——在许多情况下,您需要知道要寻找什么。拥有一个独立的基准数据集,其中包含各种各样的提示,可能会出现问题或可能不会出现问题,为每个答案提供模板响应和红旗进行检测,以及包含各种背景和多个场景的人类数据集,存储关于图中人物的所有可能属性,将有助于解决问题。这些数据集需要有数十万条目才能获得可靠的统计数据。

解决方案:几乎所有偏见、公平性和安全性问题都来源于训练数据。我喜欢这样的比喻:AI模型是人性的一面镜子,它加剧了我们所有的偏见。在干净、无偏见的数据上进行训练将大大改善结果。然而,即使有这些,模型也会犯错误。

结果后处理和过滤是另一个可能的解决方案;例如,使用包含裸体图像的数据训练的稳定扩散具有NSFW内容检测器,可以捕捉潜在问题。类似的过滤器可以应用于文本到文本模型的输出。

输出质量、相关性和正确性

生成模型在解释用户请求方面非常有创造力,尽管最近的大规模模型达到了人类水平的质量,但对于每个用例,它们并不能立即运行,需要额外的调整和提示工程。

在早期、非常有限的图像到文本和文本到文本模型中评估质量相对简单——毕竟,相对于胡言乱语的改进是显而易见的。高质量的生成模型开始展示出更难以检测的行为;例如,文本到文本模型可能会变得回避,自信地输出错误和过时的信息。

扩散模型以其他方式展示出输出的不完美。通常归因于基于图像的模型的问题有:几何形状错误、变异的解剖结构、提示和图像结果不匹配、图像转换中的肤色和性别不匹配。美学和真实感的自动评估滞后,典型的度量标准(例如FID)无法捕捉到这些变化。

在生产环境中部署生成模型的三个挑战 四海 第9张

在生产环境中部署生成模型的三个挑战 四海 第10张

从左到右:[1] 两个人拥抱;[2] 一个竖起大拇指的男人;[3] 一只狗在公园里奔跑。一张由作者使用稳定扩散1.5生成的图像

如何测试问题:测试生成模型的质量是具有挑战性的;毕竟,对于这些模型,没有真实的标准 – 它们是为了提供新颖的输出而设计的。因此,到目前为止,没有可靠的指标来捕捉质量方面。最可靠的指标是人工评估。

就像在偏见和公平性评估中一样,最好的方法是拥有一个大型的提示和图像数据集来测试质量。随着文本到文本模型变得更加个性化和针对每个用户进行调整,除了对话的连贯性、正确性和相关性之外,我们还希望评估它们对于记住有关对话的信息的能力。

解决方案:许多质量问题可以归因于训练数据和模型的规模;它们可能仅仅还不够大,以实现质量的飞跃(想想GPT-3.5与GPT-4) – 当前的潜在空间是一种抽象,不是为存储精确信息而设计的。许多问题可以通过更好的提示工程来解决 – 对于文本到文本和文本到图像的提示增强以及对于文本到图像模型的负面提示。

文本到图像和图像到图像模型可以使用其他可能提升质量的工具 – 图像增强,可以通过传统的深度学习方法或扩散式细化器来实现。像ControlNet这样的附加模块和扩散架构正交的模块可以帮助更好地控制生成的结果。用于特定应用程序微调模型的Dreambooth技术也将有助于在结果中获得优势。调整附加参数,如调度器、CFG和扩散步骤的数量,可能会极大地影响质量。

总结

生成模型为有趣的应用(如AI Lenses)和商业应用(如更好的搜索引擎、副驾驶员和广告)开辟了新的应用领域。与此同时,公司争相推出产品,消费者对新功能的兴奋有时会忽视技术中明显的问题。

虽然有一个普遍的推动将模型的基准测试更透明化,通过发布大规模开源数据集、训练代码和评估结果,但也有对大规模AI模型进行更严格监管的呼声。在理想的世界中,两者都不会走向极端,而是相互帮助,使AI更安全、更有趣。

喜欢作者吗?保持联系!

我有遗漏的地方吗?请随时在LinkedIn或Twitter上留言或直接给我发消息!

深度图像质量评估

深入研究全参考图像质量评估。从主观图像质量实验到深度客观评估…

towardsdatascience.com

深度图像恢复的感知损失

从均方误差到GAN – 什么是一个好的感知损失函数?

towardsdatascience.com

Leave a Reply

Your email address will not be published. Required fields are marked *