Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
大規模言語データの前処理とLLM-as-a-Judge の活用
Search
yudai yamamoto
July 11, 2024
Technology
4
1.4k
大規模言語データの前処理と LLM-as-a-Judge の活用
yudai yamamoto
July 11, 2024
Tweet
Share
More Decks by yudai yamamoto
See All by yudai yamamoto
安全性を高めるAzure AI Content Safety について
yyo616
1
250
コンテンツモデレーション入門の入門
yyo616
2
140
2024年における生成AIエンジニアとは何者か
yyo616
11
3.6k
Docusaurus を使った開発ドキュメントの作成と運用
yyo616
0
460
Playwrightでテストを楽に実装したい
yyo616
0
61
Other Decks in Technology
See All in Technology
Amazon Route 53, 待ちに待った TLSAレコードのサポート開始
kenichinakamura
0
170
【JAWS-UG大阪 reInvent reCap LT大会 サンバが始まったら強制終了】“1分”で初めてのソロ参戦reInventを数字で振り返りながら反省する
ttelltte
0
140
re:Invent 2024のふりかえり
beli68
0
110
Cloudflareで実現する AIエージェント ワークフロー基盤
kmd09
0
290
東京Ruby会議12 Ruby と Rust と私 / Tokyo RubyKaigi 12 Ruby, Rust and me
eagletmt
3
870
月間60万ユーザーを抱える 個人開発サービス「Walica」の 技術スタック変遷
miyachin
1
140
AWS re:Invent 2024 recap in 20min / JAWSUG 千葉 2025.1.14
shimy
1
100
.NET AspireでAzure Functionsやクラウドリソースを統合する
tsubakimoto_s
0
190
AWS re:Invent 2024 re:Cap Taipei (for Developer): New Launches that facilitate Developer Workflow and Continuous Innovation
dwchiang
0
160
30分でわかる「リスクから学ぶKubernetesコンテナセキュリティ」/30min-k8s-container-sec
mochizuki875
3
450
AWS Community Builderのススメ - みんなもCommunity Builderに応募しよう! -
smt7174
0
180
DMMブックスへのTipKit導入
ttyi2
1
110
Featured
See All Featured
It's Worth the Effort
3n
183
28k
Typedesign – Prime Four
hannesfritz
40
2.5k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.3k
Optimising Largest Contentful Paint
csswizardry
33
3k
Agile that works and the tools we love
rasmusluckow
328
21k
Code Review Best Practice
trishagee
65
17k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
Embracing the Ebb and Flow
colly
84
4.5k
Become a Pro
speakerdeck
PRO
26
5.1k
The World Runs on Bad Software
bkeepers
PRO
66
11k
Transcript
⼤規模⾔語データの前処理と LLM-as-a-Judge の活⽤ 2024/07/11 ChatGPT Meetup Tokyo #8 Yudai Yamamoto
(@yyo616)
👦 ⾃⼰紹介 ⼭本 雄⼤ (@yyo616) AIエンジニア - NTT Communications -
Moderation 周りの研究開発とプロダクト開発 - 4⽉まで Cybozu でフロントエンドエンジニア - 最近は刃⽛にハマり中 @yyo616
少し前まで GENIAC 松尾研 LLM開発プロジェクトに参加 今⽇はその際に取り組んだ内容をもとに話します💪
🧐 松尾研 LLM開発プロジェクト とは GENIAC 松尾研 LLM開発プロジェクト
🧭 LLMの開発⼯程 1 データセットの整備 ⼤量のテキストデータを収 集し、品質の⾼いデータを 得るための前処理を⾏う 2 モデルの構築・学習 3
指⽰チューニング 様々なタスクのデータを指⽰ と回答のようなつながった⽂ 章として⾔語モデルに与え追 加学習させることで、⾔語モ デルの対話性能を向上させる ⼤量のテキストデータを利⽤ し、学習を⾏うことで⾔語理 解能⼒を獲得させる
🧭 データセットの整備チームに所属 • それぞれの⼯程ごとにサブチームに分かれることになった • ⾃分はデータセットの整備チームに所属 • チームの活動内容としてはデータの選定、ライセンス調査、前処理など 1 データセットの整備
⼤量のテキストデータを収 集し、品質の⾼いデータを 得るための前処理を⾏う 2 モデルの構築・学習 ⼤量のテキストデータを利⽤ し、学習を⾏うことで⾔語理 解能⼒を獲得させる 3 指⽰チューニング 様々なタスクのデータを指⽰ と回答のようなつながった⽂ 章として⾔語モデルに与え追 加学習させることで、⾔語モ デルの対話性能を向上させる 担当
💪Try, Cleaning その頃は⽬の前に⽴ちはだかる⾼い壁を知るよしもなかった...
😩 ⼤規模⾔語コーパスは汚い • 事前学習では Common Crawl や C4 のようなデータセットを⽤いることが多い •
ある程度の前処理は⾏われているデータセットもあるが実際は結構汚い • データの品質はモデル性能に関わるので磨き上げたい Textbooks Are All You Need The RefinedWeb Dataset for Falcon LLM: Outperforming Curated Corpora with Web Data, and Web Data
🧹 定番の前処理を実施 • まず論⽂やブログによく書いてあるようなルールベースの前処理を実施 • テキスト正規化、テキストチャンキング、重複削除など • 性的・差別的・暴⼒的などの有害カテゴリのコンテンツ除去 • 個⼈情報のマスキング
A Survey of Large Language Models
💻 実装には HojiChar を利⽤ • 前処理コードの実装には主に HojiChar を利⽤ • Common
Crawl のようなデータに対しての前処理⽤ライブラリ • 処理操作のシーケンスを宣⾔的に記⼊できる • ⽇本語にも対応
📊 結果 • 前処理したデータの質がイマイチに⾒えた • 多様なデータに対してルールベースの 前処理は厳しい 登録されている NGワードが⽂章中に⼀定以上の割合で 含まれる場合に排除する
→ 逆にNGワードリストに含まれない単語には対応できない 有害コンテンツを排除するためのモジュール例
🧐 機械学習ベースのフィルタリングを試みる
🧭 機械学習ベースのフィルタリング • どのような⼿段でフィルタリングするか • 分類器による分類 • フィルタリング⽤のAPIの利⽤ • Perplexity
を利⽤した判定 → LLM as a judge「Ask LLM」という⼿法を採⽤
🧠 Ask LLM とは • 事前学習データを代理LLMを利⽤し品質フィルタリング • 事前学習データセットC4に対して、サンプリング20%でも下流タスクの性能を 33%向上 •
Flan-T5-XL(3B)という⽐較的⼩さな代理LLMでも有効 How to Train Data-Efficient LLMs
🧠 Ask LLM とは Ask-LLM論⽂紹介: How to Train Data-Efficient LLMs
🧭 Ask LLM の採⽤理由 • 品質フィルタリングとして他⼿法に⽐べて優秀 • いくつかの予備実験で⽇本語データにおける有効性が確認できた • フィルタリングに要する時間が現実的な範囲に収まった
• 他チームとの差別化 • メンバー(@susumuota)の尽⼒ Ask-LLM論⽂紹介: How to Train Data-Efficient LLMs
📊 品質フィルタリングの結果とPJの感想 • 結果としては定性的にはうまくいっていそう • 時間とコストの都合上、定量的に測ることはできなかった • 今後もデータエンジニアリングにLLMを利⽤する事例は増えていく • 広告系のテキストを低品質データとみなすかどうか
• 広告系のテキストは全データのうち、結構な割合を占める • 有害とまでは⾔い切れないが、⽣成能⼒に悪影響を与える可能性は考えられそう • 結局LLMにとっての良いデータセットの基準がよくわからない • 現状は良さそうなデータを⼈間基準で選んでいる状況 • 多くの場合、選定に明確な根拠があるわけではない • しかも前処理の効能を学習結果から測るのはLLMの学習コストの点から⼤変
ご清聴ありがとうございました 🙇