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
アノテーションツール_Label_Studio_の紹介.pdf
Search
nasuka
May 20, 2022
Programming
0
630
アノテーションツール_Label_Studio_の紹介.pdf
NLP Hacks vol.4で発表したLTのスライドです。
Label Studioというアノテーションツールについて
https://connpass.com/event/243929/
nasuka
May 20, 2022
Tweet
Share
Other Decks in Programming
See All in Programming
安いハードウェアでVulkan
fadis
0
510
ベクトル検索のフィルタを用いた機械学習モデルとの統合 / python-meetup-fukuoka-06-vector-attr
monochromegane
2
470
AI 開発合宿を通して得た学び
niftycorp
PRO
0
150
社内規程RAGの精度を73.3% → 100%に改善した話
oharu121
13
8.2k
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.1k
Vuetify 3 → 4 何が変わった?差分と移行ポイント10分まとめ
koukimiura
0
150
20260315 AWSなんもわからん🥲
chiilog
2
160
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
300
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
150
技術検証結果の整理と解析をAIに任せよう!
keisukeikeda
0
130
Codex の「自走力」を高める
yorifuji
0
1.2k
クライアントワークでSREをするということ。あるいは事業会社におけるSREと同じこと・違うこと
nnaka2992
1
350
Featured
See All Featured
Become a Pro
speakerdeck
PRO
31
5.8k
From π to Pie charts
rasagy
0
150
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
640
Rails Girls Zürich Keynote
gr2m
96
14k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
250
How Software Deployment tools have changed in the past 20 years
geshan
0
33k
Deep Space Network (abreviated)
tonyrice
0
92
How to Ace a Technical Interview
jacobian
281
24k
What's in a price? How to price your products and services
michaelherold
247
13k
Abbi's Birthday
coloredviolet
2
5.4k
Building Adaptive Systems
keathley
44
3k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
240
Transcript
アノテーションツール 「Label Studio」の紹介 NSK @naohachi89 1
aaa 自己紹介 • 経歴 ◦ 機械学習エンジニア@リクルート ◦ 機械学習エンジニア、プロダクトマネージャー @ベンチャー企業 •
趣味 ◦ 🍺 ◦ ストリートダンス・ダブルダッチ ◦ 機械学習コンペ ▪ 最近はKaggle Days Championshipという Kaggler天下一武道会的なイベントにハマってます 2
aaa 今日お話すること • アノテーションの重要性と自然言語データにおけるアノテーションについて • アノテーションツール「Label Studio」について 3
aaa 機械学習プロジェクトのライフサイクルとアノテーション • 機械学習プロジェクトにおいてデータ収集は欠かせない要素 ◦ プロジェクトによってはアノテーションは必要ないケースもあるが、そうでない場合は教師 あり学習を行う上でアノテーションは必須 • モデルの性能を向上させるには、良い学習データを収集することが重要 ◦
アルゴリズムの改善よりも、データの収集と品質改善をすることによって大幅に精度を向 上した事例が報告されている[1] ◦ -> 機械学習モデルの精度を向上させる上でアノテーションは非常に重要 4 データ収集 プロジェクトの スコープ定義 モデル学習 デプロイ MLOps: From Model-centric to Data-centric AI より引用
• Spreadsheetで問題ないケースも多分にある ◦ 以下のようなケースでは恐らくspreadsheetでも十分 ▪ 数クラスのテキスト分類タスクのアノテーション ▪ レビューを行わない/複数人のアノテーターが共同作業しないケース • 一方で、専用のアノテーションツールを使ったほうが効率的
な場合もある ◦ クラス数が膨大な分類タスクのアノテーション ◦ 系列ラベリングタスクのような複雑な構造のラベルのアノテーション ◦ アノテーション結果のレビューを行うなど、複数人で共同作業するケース 5 Q. アノテーションが大事なのはわかったけど、Spreadsheetじゃだめなの?
aaa 自然言語処理における主要なアノテーションタスク例 タスク 概要 応用例 分類/ラベリング テキストに対して 1:1 ないし 1:N
で クラス/ラベルを付与する ニュースのカテゴリ分 類 系列ラベリング テキストを単語などから成る系列とみなし、 系列の構成要素に対してラベルを付与す る 固有表現抽出 Seq2Seq テキストを単語などから成る系列とみなし、 与えられた系列に対して異なる系列を付与 する 機械翻訳 要約 Text2SQL 6
aaa アノテーションツール「Label Studio」とは • OSS(&SaaS)の様々なデータ形式に対応するアノテーションツール ◦ テキスト、音声、画像、時系列、マルチモーダルに対応 • 導入が容易 ◦
コマンド一つでインストール可能 • ビジネスユースに必要な機能を用意 ◦ ユーザー管理、権限管理、etc • その他便利機能多数 ◦ 豊富なアノテーションテンプレート、クラウドストレージ連携、 Active Learning、 Webhook連携、etc 7
aaa 製品プランと特徴 • Community/Team/Enterprise という3種の料金体系 • Communityは無償 & self hosted
• Team/Enterpriseは有償 & SaaS形式で提供 https://heartex.com/ より引用。テキスト翻訳にgoogle翻訳を利用。 8
aaa デモ動画 9 こちらの動画をご覧ください https://www.youtube.com/watch?v=nfI0qWY8JZw
aaa Label Studioを用いたアノテーションプロセス 1. プロジェクトの作成 2. アノテーションインターフェースの設定 3. データのインポート 4.
アノテーション 5. (アノテーションのレビュー) 6. アノテーションされたデータのエクスポート 7. (Active Learningによるアノテーションすべきデータのサジェスト) 8. -> 4に戻る ※()付きはEnterprise版でのみ利用可能な機能 10
aaa 1. プロジェクトの作成 • アノテーションのプロジェクトを作成する • 複数のプロジェクトを作成し、 プロジェクト単位でアノテーションするタスク・ データを切り替えられる 11
aaa 2. アノテーションインターフェースの設定 • Label Studio内で作成するプロジェクト単位で インターフェースを設定可能 • インターフェースの記述はXMLで設定 ◦
スクラッチでも記述可能だが、恐らく後述のテンプ レートをカスタマイズするのが基本 • 豊富なテンプレートが用意されており、 テンプレートベースでの設定も可能 ◦ NLPであればテキスト分類・質問応答・ 固有表現抽出・機械翻訳・要約・関係抽出 などのテンプレートが用意されている 12
aaa 3. データのインポート • ファイルアップロード or Cloud Storage連携 or URL指定を行い、プロジェクトに
データをインポートできる • Cloud StorageはAWS・GCP・Azureなどの主要なパブリッククラウドで連携可能 13
aaa 4-1. アノテーション: 基本的な操作 • 設定したアノテーションインターフェー スに基づいてアノテーションを実施 • アノテーション前・最中にガイドラインを 表示することが可能
• 判断に迷った場合はスキップ可能 ◦ スキップしたタスクをフィルタして 後からアノテートすることも可能 14
aaa 4-2. アノテーション: ショートカットによる効率化 • ショートカットを利用し、効率的にアノテーションを進めることが可能 ◦ スクショの固有表現抽出の例では、 {1, 2,
3, 4}といったショートカットキーを押すと固有 表現のラベルが選択できる 15
aaa 5. アノテーションのレビュー(Enterprise版のみ) • アノテーション済みのデータ(タスク)を他のアノテーターがレビューできる ◦ タスクに対してレビュー担当者を割り当てられる • なぜアノテーションのレビューが必要か? ◦
アノテーションの品質を担保できる ◦ 判別が難しいデータをスキルの高いアノテーターにアサインできる ◦ アノテーターの教育が出来る 16
aaa 6. アノテーションされたデータのエクスポート • アノテーション済みデータを様々なフォーマットで 出力可能 ◦ JSON、CSVなどの汎用的なものから、CoNLL2003 などのタスク依存のものも用意 •
(本筋とは関係ないが) 使いたいフォーマットがない場合のフィードバック先の動線 があるのがgood 17
aaa 7-1. Active Learningによるサジェスト(Enterpriseのみ) • Active Learningとは ◦ 機械学習モデルの精度を効率的に向上させるために、アノテーションすべきデータを 選定・優先順位づけする技術
• 機械学習モデルをホスティングする ML backend を設定すると、Active Learningを用いて アノテーションすべきデータがサジェストされる 18 https://labelstud.io/guide/active_learning.html#mainより引用
aaa 7-2. Active Learningに関する補足: サンプリング戦略 • 不確実性サンプリング ◦ モデルが確信を持って予測できていないデータを優先的にサンプルする戦略 ▪
e.g. クラス分類でconfidenceの最大値が最も低いデータをサンプルする ◦ Label Studioにはこの戦略が搭載されている ◦ 決定境界を学習しやすいが多様性に欠けるリスクがある。また、モデルに依存してデータに バイアスがかかるリスクがある • 多様性サンプリング ◦ 学習データが多様になるようにサンプルする戦略 ▪ e.g. multi lingual なデータセットにおいて多様な言語のデータをサンプルする ◦ 多様性は向上しやすいが決定境界が学習しにくくなる • それぞれ一長一短あり、上記の戦略とランダムサンプリングを組み合わせるのが 良いらしい[2] 19
aaa その他のアノテーションツールについて 20 ツール名 特徴 提供体系 doccano ・チームコラボレーション機能 ・主要な自然言語タスクの他、画像分類もサ ポート
・TIS社が開発 OSS prodigy ・チームコラボレーション機能 ・主要な自然言語タスクの他、画像・動画・音 声など様々なデータ形式に対応 ・spaCyを提供するExplosion社が開発 Personal: $390(買い切り) Company: $490 ~ 買い切り・無償アップグレードは 12ヶ月まで
aaa まとめ • 自然言語データにおけるアノテーションについて紹介した ◦ タスクによってはSpreadsheetを用いたアノテーションが非効率なため、 専用のアノテーションツールを利用する方が効率的 • アノテーションツール「Label Studio」の機能・特徴について紹介した
◦ アノテーションを効率的に行うための便利機能を備えている他、ビジネスユースを意 識した機能も搭載されている 21
aaa 参考文献 • [1] Andrew Ng, MLOps: From Model-centric to
Data-centric AI, https://www.deeplearning.ai/wp-content/uploads/2021/06/MLOps-From-M odel-centric-to-Data-centric-AI.pdf • [2] Robert Monarch, Human-in-the-Loop Machine Learning, https://www.manning.com/books/human-in-the-loop-machine-learning 22