8.2K Views
August 24, 23
スライド概要
2023/8/24
Deep Learning JP
http://deeplearning.jp/seminar-2/
DL輪読会資料
DEEP LEARNING JP [DL Papers] 事前学習用データセットについて Keno Harada, D1, the University of Tokyo http://deeplearning.jp/
2
目次 • 主要なデータセットについて、どのような構成でどのくらいデータ量があるか • • C4, mC4, MassiveText, RefineWeb, Dolma データセットを作る際にどのように品質を保証するか、品質はどのように学習 の質に影響するか • Quality at a Glance: An Audit of Web-Crawled Multilingual Datasets • A Pretrainer's Guide to Training Data: Measuring the Effects of Data Age, Domain Coverage, Quality, & Toxicity 3
“Dolma: An Open Corpus of 3 Trillion Tokens for Language Model Pretraining Research” Dolma | 最大級の公開データセット • Allen Institute for AIが現在作成中の言語モデルOLMo用の学習データセット • 英語に特化した 3 Trillion トークン数のデータセット 4
“Dolma: An Open Corpus of 3 Trillion Tokens for Language Model Pretraining Research” Dolma | 他データセットとの比較 • データセット最大, フィルタリングも既存の論文に基づき”best practice”を実践 5
“Asynchronous Pipeline for Processing Huge Corpora on Medium to Low Resource Infrastructures” OSCAR • 2018年11月分のCommonCrawl snapshot(20TB)を元に作られたデータセット • fastTestでの前処理を元にpipelineを構築、多言語 6
CommonCrawl | 大規模コーパスの大元データセット • 定期的にWebサイトを巡回し、ページを取得 7
“Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer” C4 | 大規模データセットでの事前学習の始まり • 2019年4月のCommonCrawlをもとに作られた英語データセット(156B token) • 前処理 • 「 . 」 「 ! 」 「 ? 」 「 “ ] のような句読点で終わる行のみを採用 • 5文以下のWebページを削除、3単語以上ある行を残す • 禁止単語リストの単語を含むページを削除 • 「Javascript」を含む行を削除 • 「lorem ipsum」を含むページを削除 • プログラミングにまつわる記号である 「 { 」を含むページを削除 • 3文単位で重複判定し、重複分を削除 • langdetectを使用し英語以外のページを削除 8
“Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer” 事前学習用データセットの質・量と下流タスクの性能の関係性 • ベースモデル: 220M params, 34B tokenでの 学習 前処理の効果(あまり違いない?) さらなるクオリティフィルタ の効果(あまり違いない) ダブりがない ほど良い Token数多いと性能良い 9
“Documenting Large Webtext Corpora: A Case Study on the Colossal Clean Crawled Corpus” C4中の課題: machine generated textが含まれる可能性 • C4中で一番token数の多いURLであるPatentsの書類のうち10%はUS外から申請されたもの • US外では母語での提出の後機械翻訳の使用も許可 • OCRをかけて読み込まれた書類もあり 10
“Documenting Large Webtext Corpora: A Case Study on the Colossal Clean Crawled Corpus” C4中の課題: 性能を測るベンチマークのデータセットが含まれる 11
“Documenting Large Webtext Corpora: A Case Study on the Colossal Clean Crawled Corpus” C4中の課題: フィルタリングによって除外されたデータセットが有用な場合も • フィルタで除外された文書で大部分がSexualな文書は31% • 残り69%の中には科学, 医学, 法律などにまつわる文書も • 特定の性的指向をもつ人の文書も除外されている 12
“mT5: A Massively Multilingual Pre-trained Text-to-Text Transformer” mC4 | C4のパイプラインを参考に作成したマルチリンガルデータセット https://huggingface.co/stabilityai/japanese-stablelm-base-alpha-7b https://github.com/allenai/allennlp/discussions/5265 https://huggingface.co/matsuo-lab/weblab-10b • CommonCrawlの71snapshotから抽出、101言語からなるデータセット • 英語圏の句読点を元にしたフィルタを外す • 新たに200文字以上からなる文が3つ以上ある場合ページを残すフィルタを追加 • cld3という言語判定機を用いて70%以上の閾値で言語判定 13
“Quality at a Glance: An Audit of Web-Crawled Multilingual Datasets” mC4データセットの課題 • 各言語のデータセットからランダムにサンプルして質を評価 • mC4は言語コードと異なるデータ(WL)が15%, 文字として意味がないもの(NL)が11% • 日本語(ja)はCC(良いデータ)が89% 14
“Scaling Language Models: Methods, Analysis & Insights from Training Gopher” MassiveText | 2T token超えの巨大データセット(非公開) • 英語に絞る • SafeSearch (not bad word list) 1.4B params 5GB of textでの実験 行、段落、n-gram の繰り返しが多い 書類を削除 HTMLのtree構造に 注目した抽出 以下の条件に合致しないもの を除外 • 50~100,000単語のページ • 単語の平均文字数3~10文字 • ハッシュ記号または省略記 号の記号対単語の比率 < 0.1 • 箇条書きで始まる行 < 0.9 • 省略記号で終わる行 < 0.3 • 単語の80%以上にアルファ ベットが含まれる • ストップワード(the, be etc) を少なくとも2つ含む 書類間のダブりを無くすために Exact + Fuzzyでダブりを除外 評価データとの ダブりを除外 • Filteringによって性能向上を確認 • Gopherは300B tokenで学習 15
“The RefinedWeb Dataset for Falcon LLM: Outperforming Curated Corpora with Web Data, and Web Data Only” CommonCrawlのみから5T tokenのデータセットを構築 • 同じパイプラインを通せば、CCのみから0.5 T tokenの日本語データが手に入りそう 16
“A Pretrainer's Guide to Training Data: Measuring the Effects of Data Age, Domain Coverage, Quality, & Toxicity” Filteringの効果をQAタスクやtoxic判定/生成で検証 | Trade offが存在 • C4, pileに対して追加のダブり削除、Quality/toxic filtering施す • どちらのfilteringも分類器から出力されるスコアをもとに実施 • 1.5 B paramsで検証 17
“Llama 2: Open Foundation and Fine-Tuned Chat Models” Pretrain時には多様性を確保しつつ、fine-tuningでsafetyを調整 18
“Dolma: An Open Corpus of 3 Trillion Tokens for Language Model Pretraining Research” Dolma | 最大級の公開データセット • Pipelineの実装も一部公開 • https://github.com/allenai/dolma/tree/main 19
本発表のまとめ 事前学習データセットについてどのように集められ、より良い学習のための工 夫の概観を掴んだ 実際に前処理して学習させてみたくなってきましたよね??? そんなあなたへ: LLM講義の演習・課題で思う存分楽しめます 20