作者:Max Woolf机器之心编译
编辑:悉闲
在这篇博客文 章中,美国数字媒体公司 B uzzFeed 的数据科学家 Max Woolf 做了一项实验,证明 Negative Prompt 可以改善 Stable Diffusion 2.0 的图像生成质量。
StabilityAI 前段时间发布了 StableDiffusion2.0 。这一全新版本的出现颠覆了整个 AI 生态系统。从架构上看, Stable Diffusion 2.0 与之前的 V1 版本基本相同,只是采用了新的文本编码器(OpenCLIP 而非 OpenAI 的 CLIPText)。Stability AI 宣称 Stable Diffusion 2.0 在算力方面的表现更为优异,但艺术始终是主观的。
使用 Stable Diffusion 2.0 生成的图像示例,图像分辨率为 768x768在发布后的 24 小时内,Reddit 和 Twitter 用户注意到,在完全相同的输入 prompt 和设置下,新模型的性能比 Stability Diffusion 1.5 要差。一些用户还注意到,输入GregRutkowski等在世艺术家的名字对输出结果没有任何影响(Greg Rutkowski 的名字是一个著名的文本 prompt,之前可以让 Stable Diffusion迅速生成Rutkowski风格的绘画,这遭到了Greg Rutkowski本人的质疑)。Greg Rutkowski说,“我在AI工具上遇到的问题是缺乏版权。没有人问他们是否可以用我的工作来训练这些程序。我认为这些工具不应该使用在世艺术家的作品。这是一种不受控制或监管的版权侵犯,是对人权的侵犯。我听说风格是不能有版权的,但我认为在某种程度上应该有。”一些人指出,新模型的训练样本减少了NSFW(NotSuitableForWork)图像的数量,因而导致了这些变化(因为新模型使用NSFW filter 过滤掉一些不可描述的内容)。但在我看来,主要问题在于新版本使用了 OpenCLIP。采用新的文本编码器意味着适用 Stable Diffusion 早期版本的一些假设和 prompt hack 可能失效。另一方面,这又可能引发新的 prompt hack。比如,Stability AI 首席执行官 Emad Mostaque 提到,考虑到模型训练的方式,否定形式的 prompt(negative prompt)应该会更有效。尽管这仍是理论,但真正的实践效果往往更好。
我之前没怎么在 Stable Diffusion 上弄过negative prompt,尽管有传言称这是某些知名商用 Stable Diffusion 服务背后的秘籍。在用 SD 2.0 对negative prompt 进行大量实验之后,我发现,negative prompt 对于从模型中获取良好结果着实意义重大。而最令人惊讶的是,negative prompt 可能远远优于传统 prompt addition。什么是negative prompt?首先我们简单解释一下什么是 negative prompt。与正常的文本到图像 prompt 类似,Negative Prompting 表示你不希望在结果图像中看到的术语。这个强大的功能允许用户从原始生成的图像中删除任何对象、样式或异常。尽管 Stable Diffusion 以人类语言的形式接受被称为 prompt 的输入,但它很难理解否定词,如「no, not, except, without」等。因此,用户需要使用 negative prompting 来完全控制 prompt。再就是关于 prompt 权重的问题。Prompt 权重是 Stable Diffusion 支持的一项技术,可以让用户精细地控制他们的 prompt。使用 prompt 权重,用户可以告诉 Stable Diffusion 哪里应该多关注,哪里应该少关注。
例如 Prompt :柴犬和北极熊(占 0.7)的混合体。由于给北极熊赋予了更多权重,所以在输出图像中看到北极熊特征占主导地位。
我们用 Stable Diffusion 2.0 来测试一下。先回到我的 VQGAN+CLIP prompt(参见:https://minimaxir.com/2021/08/vqgan-clip/),看看它生成的达利风格的赛博朋克森林是个什么样子:
prompt:cyberpunk forest
注:达利是西班牙超现实主义画家,代表作品有《记忆的永恒》等。达利代表作品《记忆的永恒》。假如你想删除树或某种颜色(如绿色),那么这两者(trees、green)就是在 negative prompt 中要写的内容。例如下图中,prompt 为「cyberpunk forest by Salvador Dali」;negative prompt 为 「trees, green」。 prompt:cyberpunk forest by Salvador Dali;negative prompt: trees, green