見出し画像

Building a Large Japanese Web Corpus for Large Language Models

https://arxiv.org/pdf/2404.17733.pdf
下記の文章は論文のアブストラクトをChatGPTに解釈させたものであり、正確性は保証しません。

Q1 何に関する論文か、詳しく説明してください。

この論文は、大規模な日本語ウェブコーパスの構築と、そのコーパスを利用した大規模言語モデル(LLM)の事前学習に関する研究について述べています。具体的には、2020年から2023年にかけてクロールされた約634億ページのCommon Crawlアーカイブからテキストを抽出・精錬し、約3121億文字(約1億7300万ページ)に及ぶ、日本語LLMのトレーニングコーパスとしては最大規模のコーパスを構築しました。これは、CC-100、mC4、OSCAR 23.10などの既存のコーパスを大きく上回るものです。

研究チームは、この新たに構築したコーパスの質を検証するため、既存のベースLLM(Llama 2 7B, 13B, 70B, Mistral 7B v0.1, および Mixtral 8x7B Instruct)に対して継続的な事前学習を行い、日本語のベンチマークデータセットにおいて一貫した改善(6.6~8.1ポイント)を達成しました。特にLlama 2 13Bモデルにおいては、他の既存コーパスから得られる改善よりも大きな改善が確認されました。

また、論文では将来の研究方向として、LLMの安全性に関する取り組み(差別、排除、有害な生成物(トキシシティ)、幻覚発生の削減など)や、日本語LLMの事前学習のための有害なテキストを除去するより堅牢なフィルタリング方法の確立、日本語LLMをゼロからトレーニングするためのコーパスの評価、そしてLLMの「一般的な知能」を測定するための方法についての検討が提案されています。さらに、LLMをトレーニングするためには膨大な計算が必要となるため、LLMを構築せずに事前学習コーパスの有効性を評価する軽量な方法を探求することを目指しています。

Q2 研究目的とその背景について、詳しく説明してください。

この研究の主な目標は、大規模な日本語ウェブコーパスを構築し、そのコーパスを用いて日本語の大規模言語モデル(LLM)を継続的に事前学習することで、ベンチマークデータセットにおけるパフォーマンスを向上させることでした。具体的には、2020年から2023年にかけてクロールされた約634億ページのコモンクロールアーカイブからテキストを抽出・精錬し、約3121億文字(約1億7300万ページ)に及ぶコーパスを構築しました。これは、日本語LLMの訓練コーパスとしては最大規模です。

背景や動機としては、以下の点が挙げられます:

  1. 日本語ウェブページの大量のデータを活用することで、より実世界に即した日本語テキストの理解を可能にするため。

  2. 既存のコーパスを使用した事前学習では、日本語特有の表現や文化的背景を十分に反映できていない可能性があるため、より質の高い日本語コーパスの必要性。

  3. 言語モデルの性能向上には大規模な訓練データが必要であり、特に日本語においてはそのようなコーパスの構築が遅れていたため。

この研究では、Llama 2 7B、13B、70B、Mistral 7B v0.1、Mixtral 8x7B InstructといったベースLLMに対して、構築したコーパスを用いた継続的事前学習を行い、日本語ベンチマークデータセットにおいて一貫した改善(6.6~8.1ポイントの向上)を示し、各モデルサイズ(7B、13B、8x7B、70B)における最先端のパフォーマンスを確立しました。また、Llama 2 13Bモデルにおけるこのコーパスからの改善が他の既存コーパスからのそれよりも大きかったことも観察されました。

将来的な方向性としては、LLMの安全性に対する取り組み、例えば有害な生成物(差別、排除、有毒性、幻覚など)の削減、より堅牢なフィルタリング方法の確立、日本語LLMの事前学習のための有害なテキストの除去などが挙げられています。さらに、この研究は継続的事前学習の設定に焦点を当てていましたが、スクラッチから日本語LLMを訓練することによるコーパスの評価も行いたいと考えています。また、質問応答や要約などのダウンストリームタスクでLLMを評価していますが、「一般的な知能」を測定できているかは疑問が残るため、LLMの事前学習コーパスの有効性を評価するための軽量な方法を探求したいとしています。

Q3 本研究で用いた手法について、詳しく説明してください。

本研究では、Common Crawlアーカイブから日本語ウェブコーパスを構築し、その新しく構築されたコーパスを用いて大規模言語モデル(LLM)の事前学習を行っています。以下にその方法論について詳細に説明します。

  1. コーパス構築:

    • Common Crawlアーカイブからテキストデータを抽出するために、Criterion 4を適用しています。

    • 不要なドキュメントを除外し、ドキュメント内のテキストを変更せずにフィルタリングを行っています。

    • テキストの編集は最小限に留め、句読点の正規化(西洋式の句読点を日本式に置き換える)とフッターのトリミング(Trafilaturaによって残されたフッターを削除する)を行っています。

    • このプロセスにより、文字数は312,674,522,606から312,093,428,689に減少しました。

  2. テキストの精錬:

    • ウェブページに含まれる機能語や製品名、サービス名などを基にしたルールに基づいてフィルタリングを行っています。

    • 有害な内容を排除するために、NG表現のリストを手動で作成し、これに基づいてテキストを除外しています。

  3. 重複除去:

    • MinHashを使用して重複テキストを削除し、LLMの記憶を減らし、事前学習の効率を向上させています。

    • 重複と認識されたドキュメントのペアからは、最近クロールされたものを保持し、古いものを削除しています。

  4. ホスト名によるフィルタリング:

    • UT1ブロックリストに含まれるホスト名や、特定の基準に基づいて作成されたブロックリストを用いて不適切なコンテンツを除外しています。

  5. LLMの事前学習:

    • 人気のあるLLM(Llama 2 7B, 13B, 70B, Mistral 7B v0.1, Mixtral 8x7B Instruct v0.1)に対して、構築したコーパスを用いて連続的な事前学習を行い、日本語の知識とスキルが向上するかを評価しています。

    • 事前学習データは、構築したコーパス、日本語版Wikipedia、RefinedWeb、The PileのarXivコンポーネントを混合したものです。

    • 事前学習に使用するトークンの割合は、日本語と英語が9:1で、特定の比率でトレーニングデータを準備しています。

    • ベースモデルのアーキテクチャは変更せず、AdamWを使用してハイパーパラメータを設定し、学習率の再温めと再減衰を行っています。

  6. 評価:

    • 構築したコーパスの有用性を評価するために、様々なベンチマークデータセットを用いてLLMのパフォーマンスを報告しています。

この研究は、日本語の大規模言語モデルを構築するための新しいコーパスの有用性を評価することを目的としており、言語の知識を必要とするテキスト品質の評価が含まれています。また、計算リソースの大量使用を避けるために、LLMをゼロからトレーニングするのではなく、既存のモデルに連続的な事前学習を適用する方法を選択しています。

Q4 本研究の成果と限界について、詳しく説明してください。

この研究では、日本語の大規模言語モデル(LLM)の事前学習のためのコーパスを構築し、その有用性を評価するために実験を行いました。まず、Webから収集されたテキストデータに対して、品質フィルタリングを行い、不要なウェブページ(例えばeコマースサイトなど)を除去しました。フィルタリングプロセスには、文の長さや省略記号の使用頻度などのルールが用いられ、また、日本語ページに特有の問題を取り除くために、手動で作成されたNG表現リストを使用しています。加えて、重複するウェブページの除去(デデュプリケーション)、ホスト名に基づくフィルタリング、抽出テキストのクリーニングといった処理が行われました。

実験では、LLMの事前学習において、構築されたコーパスを用いて継続的なトレーニングを行い、日本語に対するモデルの知識とスキルが向上するかを検証しました。トレーニングデータには、日本語のWikipedia、RefinedWeb、arXivの一部などが含まれており、日本語と英語のトークンの比率を調整しながらトレーニングが行われました。また、異なるモデルアーキテクチャに対しても同様の手法が適用されました。

研究の限界点として、コーパス構築手順の各ステップに関するアブレーション研究(個々の手順の影響を調べる研究)が、LLMのトレーニングに必要な大規模な計算リソースの要求により実施できなかったことが挙げられます。そのため、コーパス構築の各ステップのパフォーマンスはセクション3で報告されています。

また、この研究は日本語に焦点を当てており、他の言語のコーパス構築は範囲外です。英語に関しては、既に開発されている高品質なコーパスを利用するのが良い戦略かもしれませんが、テキスト品質の評価には言語の知識が必要であるため、異なる国の研究者が自国のためのコーパスを構築する仕事を共有する方がよいでしょう。

倫理的な側面に関しては、著作権法第30条の4項に基づき、著作権者の許可なしに著作物を使用することが許されているため、提示されたコーパスとLLMの構築が正当化されています。研究者はコーパスをできるだけ無害で偏りのないものにするための措置を講じましたが、提示されたコーパスでトレーニングされたLLMによる直接的な倫理的な影響については認識していません。

再現性については、この研究で開発されたモデル(Llama 2 7B、13B、70B、Mistral 7B v0.1、およびMixtral 8x7B Instructの継続的な事前トレーニング)はすでにHugging Face上で公開されており、使用されたベンチマークデータセットも公開されているため、実験結果を再現することは容易です。

Q5 本研究で何を明らかにしたか、詳しく説明してください。

この研究では、大規模な日本語ウェブコーパスを構築し、そのコーパスを用いて大規模言語モデル(LLMs)の連続的な事前学習を行い、日本語ベンチマークデータセットにおける性能向上を実証しました。具体的な新しい知見や結論は以下の通りです。

  1. 大規模日本語ウェブコーパスの構築: Common Crawlアーカイブから抽出・精錬したテキストを用いて、約3121億文字(約1億7300万ページ)にも及ぶ大規模な日本語ウェブコーパスを構築しました。これは、既存の日本語LLMs用トレーニングコーパスと比較しても最大規模です。

  2. 日本語LLMsへの影響の実証: 構築したコーパスを用いて、Llama 2 7B、13B、70B、Mistral 7B v0.1、Mixtral 8x7B Instructなどの基本モデルに対して連続的な事前学習を行い、日本語ベンチマークデータセットにおける性能が平均6.6〜8.1ポイント向上することを確認しました。

  3. モデルサイズ別の最先端性能の確立: 実験により、構築したコーパスを用いた連続的な事前学習が、各モデルサイズ(7B、13B、8x7B、70B)において最先端の性能を達成することを示しました。

  4. 他のコーパスとの比較: Llama 2 13Bに対する連続的な事前学習において、本研究で提示されたコーパスが他の既存コーパス(ClueWeb22、llm-jp-corpus v1.0.1)と比較して最も大きな性能向上(7.0ポイント)をもたらしたことが明らかになりました。

  5. LLMsの安全性に向けた今後の方向性: 本研究ではNG表現やホスト名のリストを用いて有害なテキストを除去する方法を採用していますが、より堅牢なフィルタリング方法を確立し、日本語LLMsの事前学習で有害なテキストを除去することが望ましいと結論付けています。

  6. 事前学習コーパスの有効性評価方法: LLMの「一般知能」を測定することができるかどうかは疑問が残りますが、事前学習コーパスの有効性を評価するためには巨大な計算が必要です。そのため、LLMsを構築することなく事前学習コーパスの効果を評価する軽量な方法を探求したいとしています。

これらの知見は、日本語の大規模言語モデルの開発において、より質の高いトレーニングデータが性能向上に寄与することを示し、今後の研究や実用化におけるデータセット構築の指針となります。また、日本語テキストの品質に特化したコーパスが、多言語コーパスの一部として開発されたものよりも優れた結果をもたらすことを示しています。

Q6 本研究で用いたデータセットを網羅的に列挙し、名前やURLなどがあればそれらも含めて詳しく説明してください。

この研究では、様々なデータセットが利用されており、それらはLLM(Large Language Models)の事前学習に適用可能な代表的なコーパスです。以下にそれぞれのデータセットの特徴と内容を、可能な限り提供されているウェブリンクと共に説明します。

  1. statmt.org/ngrams(Buck et al., 2014)

    • サイズ(en): 976億トークン

    • ソース: 2012年、2013年のWETフォーマットのテキスト

    • 言語検出: cld2

    • Dedup: MurmurHash(64ビット)を用いて完全に一致する行を削除

    • Clean: メールアドレスやHTMLフラグメントを削除し、句読点や大文字化を正規化(Moses truecaserを使用)

  2. CC-100 (CCNet)(Wenzek et al., 2020)

    • サイズ(en): 532億トークン、サイズ(ja): 26億レター

    • ソース: 2018年のWETフォーマットのテキスト

    • 言語検出: fastText

    • Dedup: SHA-1(64ビット)を用いて完全に一致する段落を削除

    • Clean: Wikipediaで学習した言語モデルによる高い確率で計算されたドキュメントのみを使用

  3. C4(Raffel et al., 2020)

    • サイズ(en): 156億トークン

    • ソース: 2019年4月のWETフォーマットのテキスト

    • 言語検出: langdetect

    • Dedup: 3文単位での完全一致を削除

    • Clean: 句読点で終わる行のみを保持し、1または2文のドキュメントを削除、4単語以下の行を削除など

  4. mC4(Xue et al., 2021)

    • サイズ(en): 2733億トークン、サイズ(ja): 240億レター

    • ソース: 71ヶ月間のWETフォーマットのテキスト

    • 言語検出: cld3

    • Dedup: C4と同様

    • Clean: C4と同様だが、C4の句読点フィルターが英語特有のため、テキストは少なくとも200文字以上で3行以上含む必要がある

  5. OSCAR 23.01(Abadji et al., 2022)

    • サイズ(en): 523億ワード、サイズ(ja): 74億レター

    • ソース: 2022年11月/12月のWETフォーマットのテキスト

    • 言語検出: fastText

    • Dedup: TLSHを使用

    • Clean: 有害コンテンツに関する言語モデルで計算された高い確率のドキュメントや、ブラックリストUT1に登録されたURLを含むドキュメントを削除

  6. Pile-CC(Gao et al., 2020)

    • サイズ: 2312億レター

    • ソース: 2013年から2020年のテキスト

    • 言語検出: cld2

    • Dedup: Jaccard係数のしきい値が約0.5のMinHashを使用

    • Clean: Redditスコアが3以上のドキュメントに類似したドキュメントをOpenWebText2に基づいてfastText分類器で使用

  7. ROOTS(Laurençon et al., 2023)

    • サイズ: 484億バイト

    • ソース: 539ドメインのオリジナルテキスト

    • 言語検出: fastText

    • Dedup: 6-gramを使用したSimHashLSH

    • Clean: 単語が少なすぎる、繰り返し文字の割合が高い、繰り返し単語の割合が高い、絵文字が多すぎる、機能語が少なすぎるなどのドキュメントを削除

  8. RefinedWeb(Penedo et al., 2023)

    • サイズ: 600億トークン

    • ソース: 2023年6月までのtrafilaturaによるオリジナルテキスト

    • 言語検出: fastText

    • Dedup: 文字5-gramを使用したMinHash(おおよそのしきい値0.8)

    • Clean: UT1ブラックリストによるURLフィルター、繰り返しの削除、ドキュメントごとのフィルター、行ごとの変更、50トークン以上一致する行の削除

  9. Dolma(Soldaini et al., 2023)

    • サイズ: 2415億トークン

    • ソース: 2020年5月から2023年6月までのWETフォーマットのテキスト

    • 言語検出: fastText

    • Dedup: 同一URLのドキュメントを削除し、ドキュメント内の同一段落を削除

    • Clean: MassiveWebの段落フィルタリング、C4の句読点ルールなど

  10. ClueWeb 22(Overwijk et al., 2022)

    • サイズ(en): 16.7兆トークン、サイズ(ja): 3301億トークン

    • ソース: 検索エンジンからのテキスト

    • 言語検出: BlingFire

    • Dedup と Clean: ページ訪問の分布に基づいて商用検索エンジンからサンプリングされたドキュメント

  11. RedPajama-Data-v2

    • サイズ: 20.5兆トークン

    • ソース: 全部で84ダンプのWETフォーマットのテキスト

    • 言語検出: fastText

    • Dedup: CCNetと同様

    • Clean: C4、RefinedWebなどによって使用されるテキスト品質推定ルール

この研究での生データ(This study (raw))とクリーンデータ(This study (clean)):
- サイズ(BL): 生データは3684億レター、クリーンデータは312億レター
- ソース: 2020年40週から2023年23週までのtrafilaturaによるオリジナルテキスト
- Dedup: 文字5-gramを使用したMinHash(Jaccard係数のしきい値は約0.9)
- Clean: RefinedWebの繰り返し検出と日本語テキスト専用に設計された品質フィルター

これらのデータセットは、LLMの事前学習に使用される際に、言語検出、重複削除、クリーニングなどのプロセスを経て選別され、品質が保証されたテキストデータを提供します。各リンクは、該当する研究やデータセットの情報を提供するウェブサイトにアクセスできるURLです。

7 本研究を特徴づけるキーワードを日本語で提案し、ハッシュタグとして列挙してください。(5個程度)

#大規模日本語ウェブコーパス - 本研究は、2020年から2023年にかけてクロールされた約634億ページのCommon Crawlアーカイブから抽出・精錬することで、約3121億文字(約1億7300万ページ)の大規模な日本語ウェブコーパスを構築したことを反映しています。

#言語モデルの事前学習 - 研究では、このコーパスを用いて、既存の大規模言語モデル(LLMs)に対して継続的な事前学習を行い、日本語のベンチマークデータセットで一貫した性能向上(6.6~8.1ポイント)を確認しています。

#品質改善 - 本研究で構築されたコーパスは、日本語テキストの品質に特化して作られたものであり、既存の多言語コーパスに比べて日本語の品質が向上していることを指しています。

#ベンチマークデータセット - 研究では、複数の日本語評価ベンチマークを用いて、構築したコーパスの有効性を検証しており、これには選択問題、質問応答、読解、自然言語推論などが含まれています。

#翻訳タスク - 研究では、日本語-英語および英語-日本語の翻訳タスクにおいても、継続的な事前学習の影響を評価しており、特に日本語から英語への翻訳性能向上に対しては今後の改善の可能性を探る余地があることを示唆しています。

この記事が気に入ったらサポートをしてみませんか?