ArabicWeb24:创建一个高质量的纯阿拉伯语网络预训练数据集

TL;DR
我们讨论了如何预处理大量的阿拉伯语网络内容,并将其转化为 ArabicWeb24,这是一个我们发布的干净的网络数据阿拉伯语预训练数据集。我们记录了通过训练不同消融模型进行的评估,以及不同的过滤流程如何影响模型的输出。我们公开了执行数据处理的代码。
数据可以在这里找到。
您可以在网站这里查看完整的博客文章。
目录
- 数据预处理流程
- 消融模型训练
- 评估
- 额外信息
- 引用
本项目由梅·法哈特和赛义德·塔加杜伊尼共同完成。
1. 数据预处理流程
ArabicWeb24 是从 6.5 TB 压缩 WARC 文件中提取尽可能多的有价值信息的结果。这项专门的网络爬取旨在从未开发的来源收集全面的阿拉伯语内容,解决 Common Crawl 在更具代表性地捕获阿拉伯语数据方面的不足。
鉴于我们需要处理的数据量巨大,我们选择了开源库 datatrove,它旨在通过并行化工作负载来执行大规模文本数据处理、过滤和去重。
在本节中,我们讨论了构建 ArabicWeb24 的主要步骤。
我们首先进行基本过滤,使用 URL 和 Gopher 质量过滤器、语言标注器和过滤器,并通过 Trafilatura 模块从 HTML 页面中提取文本。由于数据集非常大,我们无法对整个数据集进行去重。出于计算考虑,我们将数据集分成 4 部分,对每个部分单独应用 MinHash 去重。这种方法通过对所有文档进行相似性搜索并标记被认为是重复的文档,然后删除至少 75% 相似的文档。随后是句子去重模块,以消除整个数据集中的重复句子。
为了进一步保持一致性,我们选择了额外的过滤流程,例如 C4 脏话过滤器,以去除冒犯性词语(我们的列表包括阿拉伯语和英语的禁用词),以及 FineWeb 过滤器,以去除短行、列表、导航栏和其他不必要的网页元素。此外,我们还使用了格式化程序来去除符号行和图像占位符,从而生成了一个高质量、干净的预训练数据集,包含 280 亿个标记(AraGPT2 分词器标记)。
有关我们如何调整和设计这些过滤器以适应阿拉伯语要求的更多详细信息,您可以查看此处的博客文章。
2. 消融模型训练
在消融模型中,我们使用了 Mamba2 架构,序列长度为 1024,因为平均标记数约为 750。我们将全局批处理大小设置为 1040,模型维度 (d_model) 为 2304,深度为 18。选择更宽的模型是出于训练效率的考虑,同时将性能退化降至最低。词汇量设置为 64k,我们使用 AraGPT2 分词器。我们的消融模型都有 9 亿个参数。我们还使用了余弦衰减学习率调度器,并有 10% 的预热。
由于不确定过滤效果和最佳过滤策略,我们创建了 5 个具有不同流程的独立数据集,如下表所示。请注意,我们在 MinHash 去重过程之后开始了消融实验,我们认为 MinHash 去重在所有情况下都是必需的。
数据集版本 | 数据集 V1 | 数据集 V2 | 数据集 V4 | 数据集 V5 |
---|---|---|---|---|
句子去重 | ✅ | ✅ | 🚫 | 🚫 |
C4 脏话过滤器 | ✅ | ✅ | ✅ | ✅ |
FineWeb 过滤器 | ✅ | 🚫 | 🚫 | ✅ |
格式化程序 | ✅ | ✅ | ✅ | ✅ |
标记数 (GT) | 28 | 45 | 78 | 39 |
为了进行经验测试,我们训练了 5 个具有相同配置的消融模型。唯一的区别是它们训练所使用的数据。
我们还在一个名为 V3 的开源数据集上训练了一个基线模型。101 亿阿拉伯语单词数据集是基于 Common Crawl 构建的,专门用于预训练大型语言模型,以更好地生成阿拉伯语内容。
3. 评估
评估基于两个方面
- 定性评估
- 零样本评估基准
3.1 定性评估
为了判断在 5 个数据集版本上训练的不同模型的质量,我们建立了三个定性指标,并相应地评估了不同提示的输出
- 流畅性:生成的文本在语法上是否正确和自然。
- 连贯性:生成的文本在逻辑上是否一致和上下文是否适当。
- 相关性:生成的文本与提示或任务的契合程度。
结果
在 V1 数据上训练的模型,经过广泛过滤,产生了最佳输出,表现出流畅性、相关性和适当性,没有任何成人或垃圾内容。
在 V2 和 V4 上训练的模型,由于缺乏 FineWeb 过滤器,生成了带有无关字符和列表式内容的嘈杂输出,这强调了 FineWeb 过滤器在保持输出质量方面的重要性。
句子去重减少了记忆内容的生成并降低了计算成本。然而,在我们的实验中,它对输出质量的影响很小。
3.2 零样本评估基准
- TOP3 和 TOP10 准确度指标
我们使用开放获取的 ultimate_arabic_news 数据集评估了这些模型,从中我们选择了来自 Al-Arabiya、Al-Youm Al-Sabea (Youm7) 和 Google News 等来源的 6100 万个阿拉伯语新闻文本标记。
评估重点关注 TOP3 和 TOP10 标记准确度,如图所示,因为它有助于检测模型不仅能生成连贯的输出,还能在多大程度上在预测的前 3 或前 10 名中出现答案。
我们可以在下面的图中可视化结果


结果
在数据集 V1 上训练的模型在 TOP3 和 TOP10 准确度上都达到了最高,其次是在 V5 上训练的模型。
过滤和去重提高了数据质量,尽管句子去重的影响很小。
放弃句子去重可以产生更多的训练标记并进一步改进。
困惑度
我们的困惑度研究(下图)表明,V1 模型优于其他模型,包括在 101B 词汇数据集上训练的基线模型。在我们的数据上训练的模型实现了更低、更相似的困惑度分数。然而,这些结果并非最佳,可能是由于模型规模有限(900M 参数)以及评估和训练数据集之间的差异所致。
101B 词汇数据集经过了特定的预处理,包括去除变音符号和消除非阿拉伯字符,这可能导致了这些差异。这表明,像传统 NLP 中那样执行经典数据处理在如今已经过时,并且在训练网络数据时只会损害性能。尽管如此,V1 模型在预测后续词汇方面的卓越性能表明其输出更具连贯性和上下文准确性,这与我们的定性分析结果一致。

- 零样本评估基准
我们使用 lm-evaluation-harness 库在零样本阿拉伯语基准上评估了消融模型。选择的基准包括 COPA-ar、HellaSwag-ar 和 PIQA-ar。选择这些基准是因为它们侧重于阿拉伯语,易于通过 lm-evaluation-harness 库使用,并且即使对于在少量十亿标记上训练的模型也能提供有意义的信号。这种方法使我们能够有效地评估小规模消融模型的性能。

零样本基准测试显示,与基线模型相比,在 ArabicWeb24 数据集上训练的模型性能显著提高。这表明 ArabicWeb24 数据集比 101B 阿拉伯语单词数据集质量更高。我们观察到不同 ArabicWeb24 版本之间的差异很小,这归因于模型大小和数据规模。
鉴于在如此小的规模下提取重要信号的挑战,定性评估成为我们除了验证指标之外的主要指标。为了获得更显著的结果,可以考虑对更大的数据集进行扩展训练并使用额外的基准测试集,但这些增强超出了本项目的范围。
4. 额外信息
在本节中,我们将详细介绍最终数据集(V1)中包含的数据源分布,以及 ArabicWeb24 创建过程中使用的计算资源。
- 数据分布
我们的实验揭示了模型输出中的一个模式:倾向于生成与新闻文章相似的文本。为了调查这一趋势,我们从文档中提取了 150 个最常出现的 URL。然后,使用 Llama 3 8B 注释和人工验证的两步方法对这些 URL 进行注释:我们向模型提供每个 URL 的摘录,并要求它将其分类为以下类别之一。
2. 百科全书
3. 艺术与娱乐
4. 体育
5. 社会与宗教
6. 垃圾邮件
7. 市场

这种分布显示了这些最常出现的 URL 中内容来源的多样性,其中明显侧重于新闻相关材料——约 76%,这解释了为什么模型倾向于生成新闻类文本。虽然此分析侧重于前 150 个 URL,可能无法代表整个数据集,但它表明当前事件和事实信息大量存在,同时还有一系列其他主题,增加了内容的丰富性。
- 计算资源
消融研究
- 平台:HPE Cray 节点
- 硬件:8 块 NVIDIA H100 GPU
- 云提供商:Orange Cloud Avenue
MinHash 去重
- 基础设施:MeluXina HPC 集群节点
数据预处理
- 云提供商:亚马逊网络服务 (AWS)
- 文本提取和基本过滤
- 实例类型:c7a.8xlarge
- 高级处理(句子去重、标记化、FineWeb 处理、URL 过滤和格式化)
- 实例类型:r7a.12xlarge
结论
我们正在从以前未开发的来源发布大量经过清理的数据,并在这篇博客文章中记录了这一过程。我们希望我们的努力能鼓励其他人为人工智能社区做出贡献,为致力于增强原生阿拉伯语模型的研究人员和开发人员提供宝贵资源。
- 偏见的讨论
我们通过 URL 级别的过滤,努力最大限度地减少数据集中的 NSFW(不适合工作)和有害内容。尽管做出了这些努力,最终数据集中仍有大量文档可能被认为是具有毒性或有害的。由于 ArabicWeb24 的数据源自整个网络,它可能会重现网上常见的有害偏见。
5. 引用
@misc{ArabicWeb24,
title={ArabicWeb24: Creating a High Quality Arabic Web-only Pre-training Dataset},
author={Farhat, May and Taghadouini, Said},
url={www.lighton.ai/lighton-blogs/arabicweb24},
year={2024}
}
联系我们
我们相信阿拉伯语应该成为一等公民。如果您想获取阿拉伯语数据、训练、微调或使用阿拉伯语的 LLM,请联系我们。对为您的语言进行自定义数据整理和处理感兴趣?请联系 LightOn 获取定制解决方案,阿拉伯语是主要示例。