[논문 리뷰] CCNet: Extracting High Quality Monolingual Datasets from Web Crawl Data
CCNet은 Common Crawl에서 대규모 고품질 단일언어 코퍼스를 자동으로 추출하는 확장 가능한 파이프라인을 제시하며, 언어 식별과 Wikipedia에 기반한 도메인 유사성에 의한 새로운 단일언어 필터링 단계를 포함합니다.
Pre-training text representations have led to significant improvements in many areas of natural language processing. The quality of these models benefits greatly from the size of the pretraining corpora as long as its quality is preserved. In this paper, we describe an automatic pipeline to extract massive high-quality monolingual datasets from Common Crawl for a variety of languages. Our pipeline follows the data processing introduced in fastText (Mikolov et al., 2017; Grave et al., 2018), that deduplicates documents and identifies their language. We augment this pipeline with a filtering step to select documents that are close to high quality corpora like Wikipedia.
연구 동기 및 목표
- 다수의 언어(저자원 언어 포함)에서 사전 학습을 위한 고품질 대규모 단일언어 코퍼라의 필요성을 자극한다.
- Common Crawl의 문서 구조를 보존하고 중복을 제거하는 엔드투엔드 전처리 파이프라인을 기술한다.
- Wikipedia와 같은 고품질 소스에 근접한 도메인 특화 언어 모델을 사용하는 단일언어 필터링 단계를 도입한다.
- Common Crawl 스냅샷을 처리하기 위한 확장성 세부 정보와 자원 추정치를 제공한다.
- 파이프라인 재현 및 다양한 언어 대상에 맞춘 도구 및 데이터 세트를 공유한다.
제안 방법
- WET 파일을 5GB 샤드로 묶고 각 웹 페이지를 JSON의 엔트리로 표현하여 Common Crawl 스냅샷을 처리한다.
- 샤드 내에서 단락을 64비트 SHA-1 해시를 사용해 중복 제거하여 보일러플레이트 및 비콘텐츠 텍스트를 감소시킨다.
- fastText 언어 식별기를 사용하여 문서 수준의 언어를 0.5 점 임계값으로 식별한다.
- 예: Wikipedia와 같은 대상 도메인에서 각 언어별로 SentencePiece 토크나이저와 5-그램 KenLM 모델을 사용해 언어 모델을 훈련시키고, 단락별 perplexity를 품질 척도로 계산한다.
- 각 언어의 데이터를 품질 수준을 근사하기 위해 perplexity를 기반으로 상위/중간/하위의 세 부분으로 나눠 자원을 보존하면서도 쓸 수 있는 콘텐츠를 유지한다.
- 전체 파이프라인을 실행하지 않고도 URL 목록에서 출력을 재구성하는 재현 도구를 제공한다.
- ],
- research_questions([
- Can a scalable pipeline extract high-quality monolingual corpora from vast web crawl data across many languages, including low-resource ones?
- Does an explicit quality filtering step based on similarity to high-quality domains (via language-model perplexity) improve downstream representation learning?
- How does deduplication order (deduplicate before LID vs LID before deduplication) affect language coverage, especially for low-resource languages?
- What are the resource and performance trade-offs (time, RAM) for processing large Common Crawl snapshots?
- Do corpora filtered by the proposed method improve downstream language model performance (e.g., BERT-like models) compared to Wikipedia or unfiltered data?
실험 결과
연구 질문
- RQ1다수의 언어(저자원 언어 포함)에 걸친 방대한 웹 크롤 데이터에서 확장 가능한 파이프라인으로 고품질의 단일언어 코퍼스를 추출할 수 있는가?
- RQ2고품질 도메인과의 유사도(언어 모델 perplexity 기반)에 기반한 명시적 품질 필터링 단계가 다운스트림 표현 학습을 개선하는가?
- RQ3중복 제거 순서(먼저 LID 여부를 제거하는가 vs LID를 먼저 제거하는가)가 특히 저자원 언어에서 언어 커버리지에 어떤 영향을 미치는가?
- RQ4대규모 Common Crawl 스냅샷 처리의 자원 및 성능 트레이드오프(시간, RAM)는 무엇인가?
- RQ5제안된 방법으로 필터링된 코퍼스가 Wikipedia 또는 비필터링 데이터에 비해 다운스트림 언어 모델 성능을 향상시키는가?
주요 결과
- 파이프라인은 2019년 2월의 Common Crawl 스냅샷에서 174개 언어에 걸친 압축 문서 3.2 TB를 산출한다.
- 영어만으로 처리 후 약 7억 개의 문서와 5320억 개의 토큰이 차지한다.
- 언어별 perplexity 기반 필터링은 더 높은 품질 블록(head)과 다운스트림 표현(예: 더 빠르고 강한 fastText 임베딩; XNLI에서 CCNet 데이터로 학습된 BERT-BASE 모델이 Wikipedia 기반 학습보다 다수의 언어에서 우수)을 보인다.
- 언어 식별 이전에 중복 제거를 수행하는 것이 반대 순서에 비해 저자원 언어의 문서 수를 크게 개선한다.
- CCNet 데이터를 사용해 Wikipedia와 비교할 만한 데이터 양으로 BERT-BASE를 학습하면 XNLI 성능이 향상되며, 특히 우르두의 경우 CCNet을 사용했을 때 Wikipedia 대비 7포인트 개선된다.
- 이 접근 방식은 CCNet이 다국어 사전학습을 확장 가능하게 하고 여러 언어에서 Wikipedia 사용보다 품질을 향상시킨다는 것을 보여준다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.