人工智能
稳定扩散面临的三大挑战

这个 释放 stability.ai 的稳定扩散 潜在扩散 几周前的图像合成模型可能是最重要的技术披露之一 自1999年DeCSS以来;这无疑是自 2017 年 深度造假代码 被复制到 GitHub 并分叉成后来的样子 深度人脸实验室 与 换脸,以及实时流媒体deepfake软件 深脸直播.
一下子, 用户沮丧 在 内容限制 DALL-E 2 图像合成 API 中的一些功能被忽略了,因为 Stable Diffusion 的 NSFW 滤镜可以通过更改 唯一一行代码。 以色情为中心的 Stable Diffusion Reddits 几乎立即兴起,但很快就被砍掉了,而开发者和用户阵营在 Discord 上分为官方社区和 NSFW 社区,Twitter 开始充斥着奇幻的 Stable Diffusion 创作。
目前,采用该系统的开发人员似乎每天都会带来一些惊人的创新,插件和第三方附件正在匆忙编写。 粉笔, Photoshop中, Cinema4D, 混合器,以及许多其他应用平台。
在此期间, 即时工艺 – 如今已成为职业的“人工智能私语”艺术,可能最终成为自“Filofax 活页夹”以来最短的职业选择——它已经成为 商业化,而稳定扩散的早期货币化正在发生 会员级别,对于那些不愿意导航的人来说,肯定会有更复杂的产品出现 基于Conda 源代码的安装,或基于 Web 的实施的规定性 NSFW 过滤器。
开发速度和用户自由探索的欲望如此之快,令人眼花缭乱,难以预见未来。本质上,我们还不知道我们究竟在面对什么,也不知道所有的限制或可能性究竟是什么。
尽管如此,让我们来看看快速形成和快速发展的稳定扩散社区所面临并希望克服的三个最有趣和最具挑战性的障碍。
1:优化基于图块的管道
由于硬件资源有限且训练图像分辨率受到硬性限制,开发人员很可能会找到解决方法来提高稳定扩散输出的质量和分辨率。 许多此类项目都涉及利用系统的局限性,例如其原始分辨率仅为 512×512 像素。
与计算机视觉和图像合成计划的一贯情况一样,稳定扩散在平方比图像上进行训练,在本例中重新采样为 512×512,以便源图像可以被正则化并能够适应 GPU 的约束训练模型。
因此,稳定扩散算法(如果它真的能思考的话)是以 512×512 的维度来“思考”的,而且肯定是以正方形的维度来思考。许多目前正在探索系统极限的用户报告称,稳定扩散算法在这个相当受限的纵横比下能够产生最可靠、故障最少的结果(参见下文“极端情况处理”)。
尽管各种实现都具有通过以下方式进行升级的功能 真实ESRGAN (并且可以通过修复渲染不佳的面孔 GFPGAN) 一些用户目前正在开发将图像分割成 512x512px 部分并将图像拼接在一起以形成更大的合成作品的方法。

这个 1024×576 渲染通常是不可能在单个稳定扩散渲染中实现的分辨率,它是通过从 多吉特X 将 Stable Diffusion(实现基于图块的升级的版本)分叉到另一个分叉中。 来源:https://old.reddit.com/r/StableDiffusion/comments/x6yeam/1024x576_with_6gb_nice/
尽管此类举措的一些举措正在使用原始代码或其他库,但 txt2imghd 端口 GOBIG(需要 VRAM 的 ProgRockDiffusion 中的一种模式)将很快向主分支提供此功能。 虽然 txt2imghd 是 GOBIG 的专用端口,但社区开发人员的其他努力涉及 GOBIG 的不同实现。

原始 512x512px 渲染图中的抽象图像(左侧和左起第二张);由 ESGRAN 放大,现在基本在所有稳定扩散分布中都原生呈现;并通过 GOBIG 实现给予“特别关注”,从而产生细节,至少在图像部分的范围内,看起来放大效果更好。S来源:https://old.reddit.com/r/StableDiffusion/comments/x72460/stable_diffusion_gobig_txt2imghd_easy_mode_colab/
上述抽象示例具有许多细节的“小王国”,适合这种唯我论的升级方法,但可能需要更具挑战性的代码驱动解决方案,才能产生非重复的、有凝聚力的升级,而不会 看 就像是由许多部分组装起来的一样。尤其是在人脸识别中,我们对像差或“不和谐”的伪影异常敏感。因此,人脸识别最终可能需要一个专门的解决方案。
稳定扩散目前缺乏像人类优先处理面部信息那样在渲染过程中将注意力集中到面部的机制。尽管 Discord 社区的一些开发者正在考虑实现这种“增强注意力”的方法,但目前在初始渲染完成后手动(最终实现自动)增强面部效果要容易得多。
人脸具有内部完整的语义逻辑,这种逻辑在(例如)建筑物底角的“瓷砖”中是找不到的,因此目前可以在稳定扩散输出中非常有效地“放大”并重新渲染“粗略”的脸部。

左图为 Stable Diffusion 的初始作品,主题为“克里斯蒂娜·亨德里克斯身穿雨衣走进人群聚集场所的全身彩色照片;佳能 50 相机,眼神接触,高细节,高面部细节”。右图为改进后的面部图像,通过使用 Img2Img 将第一次渲染中模糊且粗略的面部图像重新输入到 Stable Diffusion 中,使其完全呈现(见下方动画)。
在没有专门的文本反转解决方案(见下文)的情况下,这仅适用于名人图像,其中相关人物已经在训练稳定扩散的 LAION 数据子集中得到了很好的体现。 因此,它将适用于汤姆·克鲁斯、布拉德·皮特、詹妮弗·劳伦斯等人,以及源数据中大量图像中存在的有限范围的真正媒体名人。

生成一张可信的新闻图片,提示为“克里斯蒂娜·亨德里克斯身穿雨衣进入拥挤场所的全身彩色照片;佳能 50,眼神交流,高细节,高面部细节”。
对于职业生涯长久且持久的名人,稳定扩散通常会生成该人最近(即较年长)年龄的形象,并且有必要添加及时的附加物,例如 '年轻的' or “在 [YEAR] 年” 以产生看起来更年轻的图像。

女演员詹妮弗·康纳利 (Jennifer Connelly) 拥有近 40 年的杰出、出镜率很高、始终如一的职业生涯,是 LAION 中为数不多的允许稳定扩散 (Stable Diffusion) 代表各个年龄段的名人之一。 来源:prepack Stable Diffusion,本地,v1.4 检查点; 与年龄相关的提示。
这主要是因为从 2000 年代中期开始,数字(而不是昂贵的、基于乳剂的)新闻摄影的普及,以及后来由于宽带速度的提高而导致图像输出量的增长。

渲染的图像传递到 Stable Diffusion 中的 Img2Img,其中选择一个“焦点区域”,并且仅对该区域进行新的、最大尺寸的渲染,从而允许 Stable Diffusion 集中所有可用资源来重建脸部。

将“高关注度”的人脸合成回原始渲染图。除了人脸之外,此过程仅适用于具有潜在已知、内聚且完整外观的实体,例如原始照片中带有独特物体(例如手表或汽车)的部分。例如,放大墙壁的一部分会导致重新组装后的墙壁看起来非常奇怪,因为拼贴渲染在渲染时没有为这块“拼图”提供更广泛的背景信息。
数据库中的一些名人在时间上处于“预先冻结”状态,要么是因为他们英年早逝(例如玛丽莲·梦露),要么是他们只是昙花一现地成为主流名人,在有限的时间内产生了大量的照片。轮询稳定传播可以说为现代和老一辈的明星提供了一种“当前”人气指数。对于一些老一辈和现役的明星,源数据中没有足够的照片来获得很好的相似度,而某些早已去世或已淡出舞台的明星经久不衰的人气则确保了他们可以从系统中获得合理的相似度。

稳定扩散渲染可以快速揭示哪些著名面孔在训练数据中得到了很好的体现。 尽管在撰写本文时米莉·鲍比·布朗 (Millie Bobby Brown) 作为一名年龄较大的青少年非常受欢迎,但当 LAION 源数据集从网络上被删除时,米莉·鲍比·布朗 (Millie Bobby Brown) 还更年轻,知名度也较低,这使得稳定扩散的高质量相似度目前存在问题。
在数据可用的情况下,稳定扩散中基于图块的高分辨率解决方案可以比追踪面部更进一步:它们可以通过分解面部特征并调动本地 GPU 的全部力量来实现更准确和更详细的面部在重新组装之前,单独提供有关显着特征的资源——目前该过程仍然是手动的。
这不仅限于面部,而且仅限于至少可预测地放置在宿主对象的更广泛上下文中的对象部分,并且符合人们可以合理期望在超大规模中找到的高级嵌入数据集。
真正的限制是数据集中可用的参考数据量,因为最终深度迭代的细节将变得完全“幻觉”(即虚构)并且不那么真实。
这种高水平的颗粒放大对詹妮弗·康纳利来说很有效,因为她在各个年龄段都有很好的代表性。 LAION-美学 (的主要子集 莱昂5B 稳定扩散使用的)并且通常在整个 LAION 中都是如此;在许多其他情况下,准确性会因缺乏数据而受到影响,需要进行微调(额外训练,参见下面的“定制”)或文本反转(参见下文)。
平铺是稳定扩散产生高分辨率输出的一种强大且相对便宜的方式,但是这种算法平铺升级,如果缺乏某种更广泛、更高级别的关注机制,可能会达不到预期的效果。适用于各种内容类型的标准。
2:解决人类四肢问题
在描绘人类肢体的复杂性时,“稳定扩散”名不副实。手可以随机增生,手指可以合并,第三条腿会不请自来地出现,现有的肢体也会消失得无影无踪。要说“稳定扩散”的问题,它和它的“同门兄弟”——当然,和“DALL-E 2”——也存在同样的问题。
Stable Diffusion 粉丝希望即将推出的 1.5 检查点(经过更严格训练的模型版本,具有改进的参数)能够解决肢体混乱问题,但可能会失望。 新车型将于 大约两周的时间,目前正在商业 stable.ai 门户网站上首映 梦想工作室,默认使用 1.5,用户可以将新输出与本地或其他 1.4 系统的渲染进行比较:

来源:Local 1.4 prepack 和 https://beta.dreamstudio.ai/

来源:Local 1.4 prepack 和 https://beta.dreamstudio.ai/

来源:Local 1.4 prepack 和 https://beta.dreamstudio.ai/
通常情况下,数据质量很可能是主要原因。
为稳定扩散和 DALL-E 2 等图像合成系统提供支持的开源数据库能够为人类个体和人类之间的行为提供许多标签。 这些标签与其相关图像或图像片段共生地进行训练。

Stable Diffusion 用户可以通过查询 LAION-aesthetics 数据集来探索模型中训练的概念。该数据集是 LAION 5B 数据集的一个子集,为 Stable Diffusion 系统提供支持。图像的排序不是按字母标签排序,而是按“美学评分”排序。 来源:https://rom1504.github.io/clip-retrieval/
A 良好的层次结构 有助于描绘人类手臂的各个标签和类别的数量类似于 身体>手臂>手>手指>[小指+拇指]>[数字段]>指甲.

对手部各部分的细粒度语义分割。即使是这种异常详细的解构,也将每个“手指”视为一个单独的实体,而没有考虑手指的三个部分和拇指的两个部分。 资料来源:https://athitsos.utasisites.cloud/publications/rezaei_petra2021.pdf
实际上,源图像不太可能在整个数据集中得到如此一致的注释,并且无监督标记算法可能会停止在 更高 例如“手”的级别,并将内部像素(技术上包含“手指”信息)保留为未标记的像素块,从中可以任意得出特征,并且可能在以后的渲染中表现为不和谐的元素。

由于标签资源有限,或者此类标签的架构利用(如果数据集中确实存在),它应该如何(右上,如果不是上切),以及它往往如何(右下)。
因此,如果潜在扩散模型能够渲染手臂,那么它几乎肯定会至少渲染手臂末端的手,因为 手臂>手 是必需的最低层次,在建筑学所了解的“人体解剖学”中处于相当高的位置。
此后,“手指”可能是最小的分组,尽管在描绘人类手时还需要考虑 14 个手指/拇指子部分。
如果这一理论成立,那么就没有真正的补救措施,因为整个行业缺乏手动注释的预算,并且缺乏足够有效的算法来实现自动化标记,同时产生较低的错误率。 实际上,该模型目前可能依赖人体解剖学一致性来掩盖其训练数据集的缺点。
一个可能的原因是 不能 靠这个,最近 建议 在稳定扩散不和谐的问题上,模型可能会对(现实的)人手应该拥有的正确手指数量感到困惑,因为为其提供动力的 LAION 衍生数据库具有可能拥有更少手指的卡通人物(这本身就是 省力捷径).

Stable Diffusion 及类似模型中“缺失手指”综合征的两个潜在元凶。下方是来自 LAION-aesthetics 数据集(为 Stable Diffusion 提供支持)的卡通手部示例。 来源:https://www.youtube.com/watch?v=0QZFQ3gbd6I
如果这是真的,那么唯一明显的解决方案是重新训练模型,排除不现实的基于人类的内容,确保真正的遗漏案例(即截肢者)被适当地标记为例外。 仅从数据管理角度来看,这将是一个相当大的挑战,特别是对于资源匮乏的社区工作而言。
第二种方法是应用过滤器,在渲染时排除此类内容(即“三指/五指手”)的显示,这与 OpenAI 在某种程度上的做法非常相似, 过滤 GPT-3 和 达尔-E 2,这样就可以调节它们的输出,而无需重新训练源模型。

对于稳定扩散,手指和四肢之间的语义区别可能会变得非常模糊,让人想起 1980 世纪 XNUMX 年代大卫·柯南伯格等人的“身体恐怖”系列恐怖电影。 资料来源:https://old.reddit.com/r/StableDiffusion/comments/x6htf6/a_study_of_stable_diffusions_strange_relationship/
然而,这需要的标签可能并不存在于所有受影响的图像中,这给我们带来了同样的后勤和预算挑战。
可以说,还有两条路可走:向问题投入更多数据,以及应用第三方解释系统,当向最终用户呈现此处描述的类型的物理错误时,该系统可以进行干预(至少,后者将为 OpenAI 提供一种方法来为“身体恐怖”渲染提供退款,如果该公司有动力这样做的话)。
3:定制
稳定扩散的未来最令人兴奋的可能性之一是用户或组织开发修订系统的前景; 允许将预训练 LAION 领域之外的内容集成到系统中的修改,理想情况下不会产生重新训练整个模型的不可控制的费用,也不会产生将大量新图像训练为现有的、成熟的和有能力的模型时所带来的风险模型。
打个比方:如果两个资优生加入一个有三十名学生的高级班,他们要么融入并迎头赶上,要么作为异类而失败;无论哪种情况,班级平均成绩可能不会受到影响。然而,如果有15名资优生加入,整个班级的成绩曲线可能会受到影响。
同样,在持续且昂贵的模型训练中建立起来的协同且相当微妙的关系网络可能会因过多的新数据而受到损害,在某些情况下甚至会被有效地破坏,从而全面降低模型的输出质量。
这样做的主要原因是你的兴趣在于完全劫持模型对关系和事物的概念理解,并将其用于专门制作类似于你添加的附加材料的内容。
因此,训练 500,000 辛普森 框架到现有的稳定扩散检查点最终可能会给你带来更好的结果 辛普森 模拟器比原始构建所能提供的要好,假设有足够广泛的语义关系在该过程中幸存下来(即 荷马·辛普森吃热狗,这可能需要关于热狗的材料,这些材料不在你的附加材料中,但已经存在于检查点中),并且假设你不想突然从 辛普森 创作内容 格雷格·鲁特科斯基 (Greg Rutkowski) 的美妙风景 – 因为您的后期训练模型的注意力已被大量转移,并且不再像以前那样擅长做这种事情。
一个值得注意的例子是 waifu扩散,已成功 训练后的 56,000 张动漫图像 进入一个已完成并经过训练的稳定扩散检查点。然而,对于业余爱好者来说,这是一个艰难的前景,因为该模型需要至少 30GB 的显存,这远远超出了 NVIDIA 即将推出的 40XX 系列消费级显卡的可用容量。

通过 waifu-diffusion 将自定义内容训练为稳定扩散:模型需要两周的后期训练才能输出这种级别的插图。 左侧的六张图像显示了随着训练的进行,模型在根据新的训练数据生成主题一致的输出方面的进展。 资料来源:https://gigazine.net/gsc_news/en/20220121-how-waifu-labs-create/
这类稳定扩散检查点的“分叉”可能会耗费大量精力,最终却因技术债务而受阻。官方 Discord 上的开发者已经表示,后续的检查点版本不一定会向后兼容,即使之前的版本可能支持提示逻辑,因为他们的主要兴趣在于获得尽可能最佳的模型,而不是支持遗留的应用程序和流程。
因此,决定将检查点分支为商业产品的公司或个人实际上没有回头路;此时,他们的模型版本就是“硬分叉”,并且无法从 stability.ai 的后续版本中获得上游利益——这是一项相当大的承诺。
当前,对稳定扩散的定制的更大希望是 文本倒装,用户在少数情况下进行训练 CLIP- 对齐图像。

特拉维夫大学和 NVIDIA 合作,文本反转可以训练离散和新颖的实体,而不会破坏源模型的功能。 来源:https://textual-inversion.github.io/
文本倒置的主要明显限制是推荐的图像数量非常少——只有五个。 这有效地产生了一个有限的实体,该实体对于风格转换任务可能比插入真实感对象更有用。
尽管如此,目前正在各种稳定扩散不和谐中进行实验,这些实验使用更多数量的训练图像,并且该方法的有效性还有待观察。 同样,该技术需要大量 VRAM、时间和耐心。
由于这些限制因素,我们可能需要等待一段时间才能看到稳定扩散爱好者进行的一些更复杂的文本反转实验 - 以及这种方法是否可以以比 Photoshop 剪切粘贴更好的方式“将你放入图片中”,同时保留官方检查点的惊人功能。
首次发布于 6 年 2022 月 XNUMX 日。














