数据集:
conceptual_12m
任务:
图生文子任务:
image-captioning语言:
en计算机处理:
monolingual大小:
10M<n<100M语言创建人:
found批注创建人:
found源数据集:
original预印本库:
arxiv:2102.08981许可:
other概念12M(CC12M)是一个包含1200万个图像-文本对的数据集,专门用于视觉和语言的预训练。其数据收集流程是Conceptual Captions 3M(CC3M)中使用的流程的放松版本。
默认情况下,此数据集不会将图像下载到本地。而是提供了图像的URL。使用以下代码获取图像:
from concurrent.futures import ThreadPoolExecutor from functools import partial import io import urllib import PIL.Image from datasets import load_dataset from datasets.utils.file_utils import get_datasets_user_agent USER_AGENT = get_datasets_user_agent() def fetch_single_image(image_url, timeout=None, retries=0): for _ in range(retries + 1): try: request = urllib.request.Request( image_url, data=None, headers={"user-agent": USER_AGENT}, ) with urllib.request.urlopen(request, timeout=timeout) as req: image = PIL.Image.open(io.BytesIO(req.read())) break except Exception: image = None return image def fetch_images(batch, num_threads, timeout=None, retries=0): fetch_single_image_with_args = partial(fetch_single_image, timeout=timeout, retries=retries) with ThreadPoolExecutor(max_workers=num_threads) as executor: batch["image"] = list(executor.map(fetch_single_image_with_args, batch["image_url"])) return batch num_threads = 20 dset = load_dataset("conceptual_12m") dset = dset.map(fetch_images, batched=True, batch_size=100, fn_kwargs={"num_threads": num_threads})
所有标题都为英文。
每个实例代表一张图像和一个标题:
{ 'image_url': 'http://lh6.ggpht.com/-IvRtNLNcG8o/TpFyrudaT6I/AAAAAAAAM6o/_11MuAAKalQ/IMG_3422.JPG?imgmax=800', 'caption': 'a very typical bus station' }
只有训练数据,共计12423374行。
概念12M共享与概念描述(CC3M)相同的流程,但放松了一些处理步骤。
来自论文:
为了得到CC12M,我们保持图像文本筛选不变,只放松了单模态筛选。首先,在基于图像的筛选中,我们将较大尺寸与较小尺寸的最大比率设置为2.5,而不是2。我们仍只保留大小大于400像素的JPEG图像,并仍然排除触发色情检测器的图像。其次,在基于文本的筛选中,我们允许3到256字之间的文本进行筛选。我们仍然舍弃没有名词或没有限定词的候选项,但允许没有介词的候选项。我们放弃了有关高独立词比率的启发式方法,该方法涵盖了各种POS标签和词的大写。我们将允许的词重复的最大比例设定为0.2。鉴于上述放松带来的更大文本池,我们将将词类型计为稀有词的阈值从5增加到20。
CC3M执行文本转换的主要动机是大部分候选标题包含细粒度实体(如专有名词(人名,场地,位置等)),因此极难作为图像字幕生成任务的一部分进行学习。相比之下,我们在图像字幕生成的最终任务上没有限制。我们的直觉是相对更困难的预训练数据会导致更好的可迁移性。因此,我们不执行上位化或数字替换。[...]唯一例外的是“尽可能保持原始的alt-text”规则是执行人名替换,我们认为这对保护这些图像中个人的隐私是必要的。为此,我们使用Google Cloud Natural Language API检测所有人名实体,并用一个特殊令牌替换它们。CC12M中大约25%的alt-text使用此方法进行了转换。
谁是源语言生成者?未指定。
注释与图像一起使用自动流程提取。
注释者是谁?未指定。
来自论文:
唯一例外的是“尽可能保持原始的alt-text”规则是执行人名替换,我们认为这对保护这些图像中个人的隐私是必要的。为此,我们使用Google Cloud Natural Language API检测所有人名实体,并用一个特殊令牌替换它们。CC12M中大约25%的alt-text使用此方法进行了转换。
[需要更多信息]
[需要更多信息]
[需要更多信息]
Soravit Changpinyo,Piyush Sharma,Nan Ding和Radu Soricut。
该数据集可自由用于任何目的,但如果能够标明数据源为Google LLC("Google")将不胜感激。该数据集按原样提供,没有任何明示或暗示的保证。Google不对使用数据集导致的任何直接或间接损害承担任何责任。
@inproceedings{changpinyo2021cc12m, title = {{Conceptual 12M}: Pushing Web-Scale Image-Text Pre-Training To Recognize Long-Tail Visual Concepts}, author = {Changpinyo, Soravit and Sharma, Piyush and Ding, Nan and Soricut, Radu}, booktitle = {CVPR}, year = {2021}, }
感谢 @thomasw21 添加了这个数据集。