丹青:一个最新的大规模中文视觉-语言预训练数据集 DanQing: An Up-to-Date Large-Scale Chinese Vision-Language Pre-training Dataset
构建1亿中文图文对数据集,通过系统化清洗流程显著提升中文视觉-语言预训练性能
前置知识
CLIP对比学习框架
CLIP(Contrastive Language-Image Pre-training)是OpenAI提出的双塔架构模型,由图像编码器和文本编码器组成。给定一批图文对,模型通过对比学习目标拉近匹配的图文对在嵌入空间中的距离,同时推远不匹配的图文对。具体来说,对于batch大小为$B$的图文对,标准CLIP使用softmax交叉熵损失:$$\mathcal{L} = -\frac{1}{B}\sum_{i=1}^{B}\log\frac{\exp(\text{sim}(v_i, t_i)/\tau)}{\sum_{j=1}^{B}\exp(\text{sim}(v_i, t_j)/\tau)}$$其中$v_i$和$t_i$分别是L2归一化的图像和文本嵌入,$\tau$是温度参数。这种范式使得模型在零样本分类、跨模态检索等任务上展现出强大的泛化能力。
本文的DanQing数据集正是用于训练此类CLIP风格模型,理解对比学习框架是理解本文训练目标和评估指标的基础。
SigLIP/Sigmoid损失
SigLIP是Google提出的CLIP变体,核心创新在于用sigmoid损失替代标准的softmax交叉熵损失。具体形式为:$$\mathcal{L} = -\sum_{i,j}\left[I_{i=j}\log\sigma(s_{ij}) + I_{i\neq j}\log(1-\sigma(s_{ij}))\right]$$其中$s_{ij} = (v_i \cdot t_j)/\tau + b$是带偏置的缩放相似度,$\sigma$是sigmoid函数。SigLIP2进一步引入了多项改进。与CLIP的softmax损失相比,sigmoid损失将每个图文对视为独立的二分类任务,避免了batch内全局归一化的需求,从而在大规模分布式训练中更加高效,支持更大的batch size。
本文选择SigLIP2作为基础模型进行继续预训练,损失函数的选择直接影响训练效率和模型性能,是理解本文实验设计的关键。
大规模图文数据集构建流程
大规模图文数据集通常从互联网(如Common Crawl)抓取,原始数据包含大量噪声。典型的构建流程包括:数据源选择(过滤低质量网站)、文本清洗(语言检测、去重、格式化)、视觉质量过滤(分辨率、模糊度、安全内容)、跨模态对齐过滤(利用预训练模型计算图文相似度)等步骤。每个阶段都需要在数据质量和数据规模之间权衡,过于严格的过滤会导致数据多样性下降,而过于宽松则会引入噪声。
本文的核心贡献之一就是设计了一套针对中文图文数据的系统化清洗流程,理解通用流程有助于认识本文的创新之处。
Common Crawl
Common Crawl是一个非营利组织,定期抓取互联网上的公开网页内容并免费提供给研究社区使用。其数据以WARC(Web ARChive)格式存储,包含数十亿网页的HTML内容、文本和元数据。许多大规模数据集(如LAION-400M、COYO-700M)都基于Common Crawl构建,通过解析HTML中的image标签和alt-text属性来提取图文对。由于互联网内容的开放性,Common Crawl数据不可避免地包含大量低质量、重复甚至有害的内容。
DanQing数据集的原始来源就是Common Crawl 2024-2025版本,理解数据源特性有助于理解后续清洗步骤的必要性。
FTS5全文检索与语义搜索
FTS5是SQLite的全文检索扩展,通过倒排索引实现高效的关键词匹配搜索。与之相对的是基于嵌入的语义搜索,通常使用ChromaDB等向量数据库,将文本编码为稠密向量后通过余弦相似度或L2距离进行近似最近邻搜索。语义搜索能够捕捉词汇层面的同义关系和语义相似性,弥补了传统关键词搜索的不足。
理解搜索机制有助于理解本文对数据集中文本语义多样性和质量的分析方法。
BERTopic主题建模
BERTopic是一种基于BERT嵌入的主题建模方法,流程包括:首先用预训练语言模型(如Chinese-CLIP)提取文本的稠密嵌入向量;然后通过UMAP(Uniform Manifold Approximation and Projection)降维到低维空间;接着用HDBSCAN进行密度聚类识别主题簇;最后通过基于类别的TF-IDF提取每个主题的代表性关键词。与传统LDA相比,BERTopic能够捕捉更丰富的语义信息,生成更具可解释性的主题。
本文使用BERTopic分析DanQing数据集的主题分布,以展示其语义多样性,理解该工具有助于解读相关实验结果。
研究动机
中文视觉-语言预训练面临严重的数据瓶颈问题。尽管以CLIP为代表的英文VLP模型受益于LAION-400M、DataComp-1B等大规模数据集,中文VLP的发展却严重滞后。现有中文图文数据集存在三个核心问题:首先是时效性差,最近的中文数据集R2D2距今已超过三年,无法覆盖2024-2025年的新概念和新语义;其次是数据衰减严重,大量图片URL已失效,严重影响模型训练和可复现性——例如Wukong数据集的成功率约为85%,Zero数据集仅约60%;最后是规模和质量受限,现有最大的中文数据集Zero包含250M对但质量参差不齐,而高质量的WudaoMM仅有5M对。这种数据匮乏直接制约了中文跨模态表征的学习能力,使得中文VLP模型在零样本分类、跨模态检索等任务上与英文模型存在显著差距。
本文的目标是本文的具体目标是构建一个大规模、高质量、时效性强的中文图文数据集DanQing,包含约1亿(100M)来自Common Crawl 2024-2025年的图文对。作者希望通过系统化的数据清洗流程,从10亿原始数据中筛选出高质量子集,使数据集同时具备以下特性:100%的图片可用率(避免数据衰减问题)、均衡的语义分布(缓解长尾效应)、较高的语义密度和文本质量、以及对新概念的理解能力。最终目标是通过在DanQing上的继续预训练,显著提升SigLIP2模型在零样本分类、跨模态检索和中文多模态大模型任务上的性能。
与已有工作不同的是,本文的独特切入角度体现在三个方面。第一,时效性优势:DanQing是首个基于2024-2025年数据的中文图文数据集,能够捕捉最新的语义趋势和新兴概念(如"黑神话:悟空"、"小米SU7"等)。第二,系统化清洗流程:不同于以往数据集主要依赖单一过滤方法,DanQing设计了四阶段流水线——数据源选择、文本精炼、视觉多样化、跨模态跨批次过滤——每个阶段针对不同类型的数据噪声。第三,全面的分析视角:本文不仅报告下游任务性能,还深入分析了数据质量(语义密度、困惑度)、扩展能力(数据规模和模型规模)、语义平衡性等多个维度,为数据集构建提供了系统性的方法论。
核心方法
DanQing的数据构建方法遵循"粗筛-精炼-多样性保证-对齐过滤"的四阶段流水线设计。整体思路是先从海量互联网数据中进行初步筛选,然后分别从文本和视觉两个维度进行质量提升,最后通过跨模态对齐确保图文语义一致性。具体而言,作者从Common Crawl 2024-2025版本出发,通过语言标签筛选获取约10.5亿中文图文对;经过粗粒度筛选(网站黑名单、文本长度、内容安全)后保留7.06亿对;下载成功后获得4.75亿对可访问数据;再经过文本精炼(语言检测、格式标准化、质量过滤)保留3.97亿对;视觉多样化处理(分辨率、清晰度、去重)后保留1.78亿对;最后通过跨模态对齐过滤和跨批次去重,最终产出约1亿高质量图文对。整个流程的过滤率高达90.46%,体现了对数据质量的严格把控。
本文的核心创新在于系统化的多阶段过滤流程设计,与已有方法的本质区别体现在三个方面。首先是分而治之的策略:不同类型的噪声需要不同的处理方式,DanQing将过滤分为文本和视觉两个并行通道,每个通道内部再细分为多个子步骤,避免了单一过滤器的局限性。其次是阈值设计的精细化:例如跨模态对齐阶段,作者不是简单地过滤低相似度样本,而是同时设置了上下界(L2距离在[1.06, 1.24]区间),下界过滤弱语义相关,上界过滤OCR主导的文本(这类文本虽然图文距离小但缺乏描述性语义)。最后是跨批次去重:由于数据分七个批次并行处理,需要在批次间进行全局去重以消除冗余,这在以往的数据集构建中较少被关注。
方法步骤详情
数据构建流程包含四个主要阶段,每个阶段都有明确的输入输出和具体操作。第一阶段是数据源选择:从Common Crawl 2024-2025提取"zho"语言标签的图文对,得到10.5亿对;通过网站黑名单排除低质量来源;过滤文本长度在5-60个中文字之间的样本;使用1M参数的二分类器过滤不安全内容。此阶段保留67%,即7.06亿对,下载成功率67%后获得4.75亿可访问对。第二阶段是文本精炼:使用FastText进行语言识别保留中文文本,OpenCC统一为简体中文;丢弃缺少名词或SigLIP2分词后含超过5个[UNK]的样本;去除表情符号和特殊字符,应用熵过滤$H = -\sum_{i=0}^{L} P(c_i)\log_2 P(c_i)$,阈值$H < 6 \times 10^{-4}$的样本被剔除;使用20M参数NSFW检测器和百度DataBuilder服务过滤广告和敏感内容。此阶段从4.75亿降至3.97亿(保留83.6%)。第三阶段是视觉多样化:保留宽高比1:3到3:1且最小边大于100像素的图片;过滤像素强度方差$\sigma < 2$的无信息图片;要求拉普拉斯方差至少1000以去除模糊样本;图像复杂度熵阈值为3;使用Chinese-CLIP-L14提取嵌入并计算余弦距离,阈值$\beta = 0.1$以下的图片通过Union-Find算法归为同一集合,仅保留中心图片;使用86M参数NSFW模型过滤高风险内容。此阶段从3.97亿降至1.78亿(保留44.8%)。第四阶段是跨模态跨批次过滤:使用Chinese-CLIP-L14计算L2距离,保留[1.06, 1.24]区间的样本;在七个批次间进行全局去重,消除5400万冗余对。最终产出99,892,381个高质量图文对。
技术新颖性
本文的技术新颖性主要体现在以下几个方面。第一,过滤阈值的双重边界设计:在跨模态对齐阶段,以往方法通常只设置单侧阈值(如LAION-400M仅过滤低相似度),而DanQing同时设置了上下界,有效过滤了OCR主导的文本(这类文本L2距离可能很高但缺乏描述性语义)。第二,跨批次全局去重机制:数据分七个批次并行处理以提高效率,但批次间可能存在重复,作者在最终阶段进行跨批次感知和语义去重,消除了5400万冗余对,这在以往数据集构建中较少被明确处理。第三,针对中文的特殊处理:包括OpenCC简繁转换、FastText中文语言识别、中文CLIP嵌入的使用等,使流程专门适配中文数据的特性。第四,熵过滤的双重应用:在文本层面使用token熵过滤低信息密度文本,在视觉层面使用像素熵过滤低复杂度图像,从两个模态同时保证信息质量。
实验结果
本文的实验结果全面验证了DanQing数据集的有效性。在零样本分类任务中(Table 2),使用DanQing继续预训练SigLIP2模型,在B/32、B/16和L/16三个架构上分别实现了7.6%、7.8%和7.7%的平均性能提升。与Wukong数据集相比,DanQing在三种架构上平均提升1.9%;与Zero数据集相比,分别提升0.5%、1.0%和0.5%。特别值得注意的是,在Caltech101、CIFAR-10、Food101等基准上,DanQing训练的模型达到了最高或次高分数。在跨模态检索任务中(Table 3),DanQing在Flickr30K-CN、MSCOCO-CN和MUGE三个短描述数据集上,相比Wukong和Zero分别实现2.4%和2.4%的平均提升。更令人惊喜的是在长描述检索任务中(Table 4),DanQing展现出显著优势:使用SigLIP2-L/16@256模型,在DCI-CN和DOCCI-CN数据集上,相比Wukong提升12.8%,相比Zero提升9.0%,相比TaiSu提升8.9%。这一优势主要源于DanQing更高的语义密度和更高质量的文本比例。在中文多模态大模型任务中(Table 5),将DanQing预训练的SigLIP2-L/16作为LLaVA-NeXT的视觉编码器,在MMBench-CN、MMBench-EN、MME-RW CN、CMMMU和OCRBench五个基准上平均得分50.1%,超越所有基线数据集。此外,扩展性分析表明,DanQing在数据规模从10M增长到100M时持续提升性能,而Wukong在30M后趋于饱和;在模型规模从86M扩展到1B参数时,DanQing展现出更陡峭的扩展曲线。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 零样本图像分类(SigLIP2-B/32@256) | 15个数据集平均准确率 | 65.4% | Wukong 63.5%, Zero 64.9%, TaiSu 59.5% | 相对Wukong +1.9%, 相对Zero +0.5% |
| 零样本图像分类(SigLIP2-L/16@256) | 15个数据集平均准确率 | 72.9% | Wukong 71.0%, Zero 72.4%, TaiSu 65.5% | 相对Wukong +1.9%, 相对Zero +0.5% |
| 短描述跨模态检索(SigLIP2-L/16@256) | Flickr30K-CN/MSCOCO-CN/MUGE平均R@1 | 84.3% | Wukong 81.6%, Zero 81.5%, TaiSu 84.9% | 相对Wukong +2.7%, 相对Zero +2.8% |
| 长描述跨模态检索(SigLIP2-L/16@256) | DCI-CN/DOCCI-CN平均R@1 | 57.3% | Wukong 46.4%, Zero 49.9%, TaiSu 50.2% | 相对Wukong +10.9%, 相对Zero +7.4% |
| 中文多模态大模型(LLaVA-NeXT + Qwen2-7B) | 5个中文基准平均分 | 50.1% | Wukong 49.5%, Zero 49.1%, TaiSu 49.3% | 相对Wukong +0.6% |
局限与改进
尽管DanQing在多个任务上取得了优异成绩,但仍存在一些局限性。首先,数据集的规模(100M)仍然显著小于英文数据集如LAION-5B(50亿)和DataComp-1B(10亿),这可能限制了模型性能的进一步提升。其次,过滤率高达90.46%意味着大量数据被丢弃,过滤阈值的选择在一定程度上依赖经验,可能存在次优情况。第三,数据集仅涵盖2024-2025年的数据,虽然保证了时效性,但也意味着对更早期的知识覆盖可能不足。第四,在跨模态检索任务中,DanQing在短描述检索上表现略逊于TaiSu(后者使用合成标题进行增强),说明原始网络数据的文本质量仍然存在提升空间。此外,作者使用Chinese-CLIP-L14作为过滤的专家模型,这可能引入了一定的偏差,使得过滤后的数据分布偏向于该模型的偏好。最后,评估基准主要集中在中文任务上,缺乏跨语言泛化能力的验证。
独立分析的弱点
本文存在几个值得深入分析的弱点。第一,专家模型偏差问题:整个清洗流程依赖Chinese-CLIP-L14作为跨模态对齐的专家模型,这可能导致最终数据集的分布偏向于该模型的偏好,过滤掉一些对其他模型架构可能有价值的样本。改进方向是引入多个异构的专家模型进行集成过滤,或者使用自训练策略迭代优化过滤阈值。第二,文本质量提升有限:虽然DanQing的语义密度高于Wukong和Zero,但在短描述检索上仍逊于使用合成标题的TaiSu,说明原始网络文本的描述质量仍有较大提升空间。可以考虑引入大语言模型对原始文本进行改写或增强。第三,数据多样性验证不够充分:作者使用BERTopic进行了主题分析,但仅展示了6个主要主题,缺乏对长尾类别、细粒度语义分布的深入分析。第四,过滤阈值缺乏理论支撑:许多关键阈值(如熵阈值$6 \times 10^{-4}$、L2距离区间[1.06, 1.24])是经验确定的,缺乏消融实验验证其最优性。第五,缺乏与英文数据集的直接对比:虽然作者引用了英文数据集的结果,但由于训练设置不同,无法进行公平比较。
未来方向
基于本文的成果,未来研究可以在多个方向展开。首先,数据集规模扩展:当前100M的规模仍有提升空间,可以探索更大规模(如500M或1B)的中文图文数据集构建,同时保持数据质量。其次,多语言融合:将DanQing与英文数据集结合,探索跨语言视觉-语言预训练的可能性。第三,数据质量持续优化:引入大语言模型进行文本增强或质量评估,或者开发更先进的过滤模型替代固定的阈值策略。第四,动态数据集:建立持续更新机制,定期抓取和清洗新数据,使数据集保持时效性。第五,任务特化数据集:针对特定下游任务(如文档理解、细粒度分类)构建专用子集。第六,数据效率研究:探索在更少数据上达到相近性能的方法,如主动学习、课程学习等。最后,跨模态理解深化:不仅关注图文匹配,还可以引入区域级别的对齐、关系推理等更细粒度的语义理解。
复现评估
本文在可复现性方面做得较好。作者明确声明将按照CC-BY-NC 4.0协议开源DanQing数据集,并提供了多个访问渠道:GitHub仓库(https://github.com/deepglint/DanQing)、ModelScope(https://www.modelscope.cn/datasets/deepglint/DanQing)和HuggingFace(https://huggingface.co/datasets/DeepGlint-AI/DanQing100M)。训练细节也较为详尽:使用16块A800 80G GPU、AdamW优化器、学习率1e-5、batch size 768×16、训练2个epoch。然而,完整复现数据清洗流程的门槛较高,因为需要处理10亿级别的原始数据,涉及大量的下载、存储和计算资源。此外,部分依赖的外部服务(如百度DataBuilder)可能对非商业用户不可用。数据集本身可以直接使用,但重新执行完整的清洗流程需要显著的计算投入。
论文图表