数据集:

jainr3/diffusiondb-pixelart

许可:

cc0-1.0

预印本库:

arxiv:2210.14896

源数据集:

modified

批注创建人:

no-annotation

语言创建人:

found

大小:

n>1T

计算机处理:

multilingual

语言:

en
英文

DiffusionDB-Pixelart

数据集概述

这是DiffusionDB 2M数据集的子集,已经转化为像素艺术风格。

DiffusionDB是第一个大规模的文本到图像提示数据集。它包含由真实用户指定提示和超参数生成的1400万张图像。

DiffusionDB可以在此公开获得。

支持的任务和排行榜

这个通过人为驱动的数据集的前所未有的规模和多样性为研究者提供了在理解提示和生成模型之间的相互作用、检测深度伪造和设计人工智能交互工具以帮助用户更轻松地使用这些模型方面的有趣研究机会。

语言

数据集中的文本主要是英文。也包含其他语言,例如西班牙语、中文和俄语。

子集

DiffusionDB提供了两个子集(DiffusionDB 2M和DiffusionDB Large)以支持不同的需求。像素化的数据是从DiffusionDB 2M中提取的,只包含2000个示例。

DiffusionDB-pixelart中的图像以png格式存储。

数据集结构

我们使用模块化的文件结构来分发DiffusionDB。DiffusionDB-pixelart中的2k张图像被分成文件夹,每个文件夹包含1000张图像和一个将这1000张图像与其提示和超参数关联起来的JSON文件。

这些子文件夹的名称为part-0xxxxx,每个图像都有一个由 UUID Version 4 生成的唯一名称。子文件夹中的JSON文件与子文件夹的名称相同。每个图像都是一个PNG文件(DiffusionDB-pixelart)。JSON文件包含将图像文件名与其提示和超参数进行映射的键值对。

数据实例

例如,下面是part-000001.json中ec9b5e2c-028e-48ac-8857-a52814fd2a06.png的图像及其键值对的示例。

{
  "ec9b5e2c-028e-48ac-8857-a52814fd2a06.png": {
    "p": "doom eternal, game concept art, veins and worms, muscular, crustacean exoskeleton, chiroptera head, chiroptera ears, mecha, ferocious, fierce, hyperrealism, fine details, artstation, cgsociety, zbrush, no background ",
    "se": 3312523387,
    "c": 7.0,
    "st": 50,
    "sa": "k_euler"
    },
}

数据字段

  • key:唯一图像名称
  • p:文本

数据集元数据

为了方便您在不下载所有Zip文件的情况下访问图像的提示和其他属性,我们在DiffusionDB-pixelart中包含了metadata.parquet的元数据表。

两个表共享相同的模式,每一行表示一张图像。我们将这些表存储在Parquet格式中,因为Parquet是基于列的:您可以有效地查询单个列(例如提示)而不需要读取整个表。

下面是metadata.parquet中的三行随机数据。

image_name prompt part_id seed step cfg sampler width height user_name timestamp image_nsfw prompt_nsfw
0c46f719-1679-4c64-9ba9-f181e0eae811.png a small liquid sculpture, corvette, viscous, reflective, digital art 1050 2026845913 50 7 8 512 512 c2f288a2ba9df65c38386ffaaf7749106fed29311835b63d578405db9dbcafdb 2022-08-11 09:05:00+00:00 0.0845108 0.00383462
a00bdeaa-14eb-4f6c-a303-97732177eae9.png human sculpture of lanky tall alien on a romantic date at italian restaurant with smiling woman, nice restaurant, photography, bokeh 905 1183522603 50 10 8 512 768 df778e253e6d32168eb22279a9776b3cde107cc82da05517dd6d114724918651 2022-08-19 17:55:00+00:00 0.692934 0.109437
6e5024ce-65ed-47f3-b296-edb2813e3c5b.png portrait of barbaric spanish conquistador, symmetrical, by yoichi hatakenaka, studio ghibli and dan mumford 286 1713292358 50 7 8 512 640 1c2e93cfb1430adbd956be9c690705fe295cbee7d9ac12de1953ce5e76d89906 2022-08-12 03:26:00+00:00 0.0773138 0.0249675
元数据模式

metadata.parquet模式:

Column Type Description
image_name string Image UUID filename.
text string The text prompt used to generate this image.

警告:虽然稳定扩散模型具有自动模糊用户生成的非法的图片的NSFW过滤器,但这个NSFW过滤器不是完美的——DiffusionDB仍然包含一些NSFW图片。因此,我们使用最先进的模型计算并提供图片和提示的NSFW分数。下面是这些分数的分布。请在使用DiffusionDB之前确定一个适当的NSFW分数阈值来过滤掉NSFW图片。

数据拆分

对于DiffusionDB-pixelart,我们将2k张图像拆分成每个文件夹包含1000张图像和一个JSON文件。

加载数据子集

DiffusionDB非常庞大!但是,通过我们的模块化文件结构,您可以轻松加载所需数量的图像及其提示和超参数。在这个笔记本中,我们演示了加载DiffusionDB子集的三种方法。以下是一个简要总结。

方法1:使用Hugging Face Datasets Loader

您可以使用Hugging Face库轻松加载DiffusionDB中的提示和图像。我们根据实例数预定义了16个DiffusionDB子集(配置)。您可以在 Dataset Preview 中查看所有子集。

import numpy as np
from datasets import load_dataset

# Load the dataset with the `2k_random_1k` subset
dataset = load_dataset('jainr3/diffusiondb-pixelart', '2k_random_1k')

数据集创建

策划原因

最近的扩散模型在通过自然语言编写的文本提示生成高质量且可控的图像方面取得了巨大的成功。自从这些模型发布以来,来自不同领域的人们迅速将它们应用于创建屡获奖的艺术作品、合成放射学图像,甚至是超真实的视频。

然而,生成带有所需细节的图像是困难的,因为它要求用户编写明确指定期望结果的适当提示。开发此类提示需要尝试和错误,并且通常会感觉到随机和无原则。Simon Willison将编写提示类比为向导学习“魔法咒语”:用户不理解为什么一些提示有效,但他们会将这些提示加入他们的“魔法咒书”中。例如,为了生成高度详细的图像,通常会在提示中添加特殊关键词,如“艺站上流行”和“虚幻引擎”。

在文本到文本生成的背景下,向导工程成为一个研究领域,研究人员系统地研究如何构建提示以有效地解决不同的下游任务。由于大型文本到图像模型相对较新,因此迫切需要了解这些模型对提示的反应,如何编写有效的提示,以及如何设计工具来帮助用户生成图像。为了帮助研究人员应对这些关键挑战,我们创建了DiffusionDB,这是第一个具有1400万真实提示-图像对的大规模提示数据集。

源数据

初始数据收集和规范化

我们通过在官方的稳定扩散Discord服务器上抓取用户生成的图像来构建DiffusionDB。我们选择稳定扩散,因为它是目前唯一的开源大规模文本到图像生成模型,并且所有生成的图像均具有CC0 1.0通用公共领域捐赠许可证,可放弃所有版权并允许任何目的使用。我们选择官方 Stable Diffusion Discord server ,因为它是公开的,并且对生成和共享非法、令人讨厌或NSFW(不适合工作,如涉及性和暴力内容)的图像有严格的规定。该服务器还禁止用户编写或共享包含个人信息的提示。

源语言生产者是谁?

语言生产者是官方 Stable Diffusion Discord server 的用户。

注释

数据集不包含任何其他注释。

注释过程

N/A

注释员是谁?

N/A

个人和敏感信息

作者从数据集中删除了Discord用户名。我们决定对数据集进行匿名处理,因为一些提示可能包括敏感信息:将其与创建者明确关联可能对创建者造成伤害。

使用数据的注意事项

数据集的社会影响

此数据集的目的是帮助发展对大型文本到图像生成模型的更好理解。人为驱动的这个前所未有的规模和多样性的数据集为研究者在理解提示和生成模型之间的相互作用、检测深度伪造以及设计人工智能交互工具帮助用户更轻松地使用这些模型方面提供了有趣的研究机会。

需要注意的是,我们从稳定扩散Discord服务器上收集图像及其提示。Discord服务器禁止用户生成或分享有害或NSFW(不适合工作,如涉及性和暴力内容)的图像。在服务器上使用的稳定扩散模型还具有一个NSFW过滤器,如果检测到NSFW内容,会对生成的图像进行模糊处理。然而,仍然有可能一些用户生成了未被NSFW过滤器检测到或服务器管理员删除的有害图像。因此,DiffusionDB可能包含这些图像。为了减少潜在的危害,我们在 DiffusionDB website 上提供了一个报告有害或不适当图像和提示的表单。我们将密切监控此表单,并从DiffusionDB中删除被报告的图像和提示。

偏差讨论

DiffusionDB中的1400万张图像具有各种风格和类别。然而,Discord可能是一个存在偏差的数据源。我们的图像来自于早期用户可以在发布之前使用稳定扩散的渠道。由于这些用户在模型公开之前开始使用稳定扩散,我们推测他们是AI艺术爱好者,并且很可能具有其他文本到图像生成模型的经验。因此,DiffusionDB中的提示风格可能不代表新手用户。同样,DiffusionDB中的提示可能不适用于需要特定知识的领域,如医学图像。

其他已知限制

泛化性。以前的研究表明,在一个生成模型上有效的提示在其他模型上可能不会给出最佳结果。因此,不同的模型可能需要用户编写不同的提示。例如,许多稳定扩散的提示使用逗号来分隔关键词,而在DALL-E 2或Midjourney的提示中很少见到这种模式。因此,我们警告研究人员,DiffusionDB的某些研究结果可能不适用于其他文本到图像生成模型。

其他信息

数据集策划者

DiffusionDB由 Jay Wang 等人创建。

许可信息

DiffusionDB数据集的许可证信息可在 CC0 1.0 License 中获得。本存储库中的Python代码可在 MIT License 下获得。

引用信息

@article{wangDiffusionDBLargescalePrompt2022,
  title = {{{DiffusionDB}}: {{A}} Large-Scale Prompt Gallery Dataset for Text-to-Image Generative Models},
  author = {Wang, Zijie J. and Montoya, Evan and Munechika, David and Yang, Haoyang and Hoover, Benjamin and Chau, Duen Horng},
  year = {2022},
  journal = {arXiv:2210.14896 [cs]},
  url = {https://arxiv.org/abs/2210.14896}
}

贡献

如果您有任何问题,请随时 open an issue 或联系原始作者 Jay Wang