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.6k
大規模言語データの前処理と 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
340
コンテンツモデレーション入門の入門
yyo616
2
160
2024年における生成AIエンジニアとは何者か
yyo616
11
4k
Docusaurus を使った開発ドキュメントの作成と運用
yyo616
0
510
Playwrightでテストを楽に実装したい
yyo616
0
72
Other Decks in Technology
See All in Technology
成立するElixirの再束縛(再代入)可という選択
kubell_hr
0
390
Create a Rails8 responsive app with Gemini and RubyLLM
palladius
0
130
新規プロダクト開発、AIでどう変わった? #デザインエンジニアMeetup
bengo4com
0
480
上長や社内ステークホルダーに対する解像度を上げて、より良い補完関係を築く方法 / How-to-increase-resolution-and-build-better-complementary-relationships-with-your-bosses-and-internal-stakeholders
madoxten
13
7.8k
本部長の代わりに提案書レビュー! KDDI営業が毎日使うAIエージェント「A-BOSS」開発秘話
minorun365
PRO
14
1.9k
型システムを知りたい人のための型検査器作成入門
mame
15
3.9k
Long journey of Continuous Delivery at Mercari
hisaharu
1
220
SFTPコンテナからファイルをダウンロードする
dip
0
420
マルチテナント+マルチプロダクト SaaS への AI Agent の組み込み方
kworkdev
PRO
2
370
菸酒生在 LINE Taiwan 的後端雙刀流
line_developers_tw
PRO
0
240
“プロダクトを好きになれるか“も QAエンジニア転職の大事な判断基準だと思ったの
tomodakengo
0
190
AIエージェントの継続的改善のためオブザーバビリティ
pharma_x_tech
6
1.3k
Featured
See All Featured
Visualization
eitanlees
146
16k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
480
What's in a price? How to price your products and services
michaelherold
245
12k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Unsuck your backbone
ammeep
671
58k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
YesSQL, Process and Tooling at Scale
rocio
172
14k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
Embracing the Ebb and Flow
colly
86
4.7k
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の学習コストの点から⼤変
ご清聴ありがとうございました 🙇