# Summary **一句话总结**:Common Crawl 是互联网的"公共图书馆",为 AI 研究提供了训练大型语言模型所需的海量真实网页数据,几乎所有现代 LLM(GPT、LLaMA、T5 等)都使用它作为训练语料的一部分。 **Common Crawl** 是一个非营利 501(c)(3) 组织,负责爬取网页并免费向公众提供其档案和数据集 Common Crawl 构建并维护一个开放的网页爬取数据仓库,任何人都可以访问和分析 ## 核心特点 ### 1. **规模惊人** Common Crawl 的网页档案包含自 2008 年以来收集的 PB 级数据,大约每月完成一次爬取 这是一个由超过 500 亿个网页组成的网页爬取数据语料库 ```Java 数据量:PB 级别(1 PB = 1000 TB) 网页数:500+ 亿 时间跨度:2008 年至今 更新频率:每月一次 ``` ### 2. **完全免费、开放** 爬取数据对来自任何地方的任何人都是免费的。数据由亚马逊网络服务的开放数据集赞助计划托管 **访问方式**: - AWS S3: `s3://commoncrawl/` - HTTPS: `https://data.commoncrawl.org/` - 可以在 AWS 云中处理或通过 HTTP(S) 免费下载 --- ## 数据格式 Common Crawl 目前使用 Web ARChive (WARC) 格式存储爬取数据 ### 三种文件类型 |格式|全称|内容|大小| |---|---|---|---| |**WARC**|Web ARChive|原始 HTML + HTTP 请求/响应|最大| |**WAT**|Web Archive Transformation|元数据(链接、HTTP 头等)JSON 格式|中等| |**WET**|Web Extracted Text|提取的纯文本|最小| ```python # WARC 文件示例结构 WARC/1.0 WARC-Type: response WARC-Target-URI: http://example.com/page.html Content-Length: 1234 HTTP/1.1 200 OK Content-Type: text/html <html> <body>网页内容...</body> </html> ``` --- ## 语言分布 在 2023 年 3 月版本的 Common Crawl 数据集中,英语是 46% 文档的主要语言。接下来最常见的主要语言是德语、俄语、日语、法语、西班牙语和中文,每种语言的文档比例不到 6% ```Java 英语:46% 德语、俄语、日语、法语、西语、中文:各 <6% 其他语言:剩余部分 ``` --- ## 典型应用场景 ### 1. **训练大型语言模型(LLM)** 几乎所有主流 LLM 都使用 Common Crawl 数据: |模型|使用的数据集|基于 Common Crawl| |---|---|---| |**GPT-3**|WebText|✅| |**T5**|C4 (Colossal Clean Crawled Corpus)|✅| |**BERT**|BooksCorpus + Wikipedia|部分 ✅| |**LLaMA**|Common Crawl + 其他|✅| |**GPT-4**|未公开,但很可能包含|✅| Google 的 Common Crawl 版本称为 Colossal Clean Crawled Corpus(简称 C4),它是为 2019 年训练 T5 语言模型系列而构建的 --- ### 2. **NLP 研究** - 词向量训练(GloVe、Word2Vec) - 多语言模型训练 - 文本分类、情感分析数据集构建 --- ### 3. **网络安全研究** Common Crawl 数据集可以帮助快速发现额外的攻击面,并识别敏感信息的暴露 ```sql -- 示例:查找暴露的数据库备份文件 SELECT url FROM "ccindex"."ccindex" WHERE crawl = 'CC-MAIN-2022-27' AND fetch_status=200 AND content_mime_detected = 'application/x-sql' ``` --- ### 4. **搜索引擎研究** ChatNoir 是由 Webis 研究组开发的网络搜索引擎,基于 ClueWeb09、ClueWeb12 和 Common Crawl 数据集 --- ## Common Crawl vs 其他数据源 |数据源|规模|质量|成本|适用场景| |---|---|---|---|---| |**Common Crawl**|极大|中等(需清洗)|免费|LLM 预训练| |**Wikipedia**|中等|高|免费|知识密集型任务| |**Reddit/Twitter**|大|较低|部分免费|对话/社交文本| |**Books Corpus**|中等|高|有版权限制|长文本理解| |**自己爬取**|可控|可控|高(技术+法律成本)|特定领域| ## 历史与发展 Common Crawl 由 Gil Elbaz 创立,亚马逊网络服务于 2012 年通过其公共数据集项目开始托管 Common Crawl 的档案 **时间线**: - **2008**:开始收集数据 - **2012**:AWS 开始托管,免费开放 - **2013**:改用 Apache Nutch 爬虫 - **2019**:Google 基于 CC 创建 C4 数据集(用于 T5) - **至今**:每月持续更新 --- ## 总结 |特性|说明| |---|---| |**是什么**|全球最大的开放网页爬取数据集| |**规模**|500+ 亿网页,PB 级数据| |**访问**|完全免费,AWS S3/HTTPS| |**格式**|WARC/WAT/WET| |**更新**|每月一次| |**主要用途**|训练 LLM、NLP 研究、搜索引擎| |**在 CS336 中**|Assignment 4 的核心数据源|