Slide 1

Slide 1 text

シンプルなHITL機械学習と様々なタスクにおけるHITL機械学習 @ 第8回 Data-Centric AI勉強会 NSK@naohachi89

Slide 2

Slide 2 text

自己紹介・略歴 2 2015/04 リクルート 機械学習を活用したプロダクト改善とシステム開発に従事 2017/10 PKSHA Technology チャットボットを始めとした B2B SaaS開発とAI活用コンサルティングに従事 2022/07 旅行 海外旅行に従事。旅行しながら HITL本を翻訳。 2023/03 Axcreator 株式会社Axcreatorを設立。機械学習に関するコンサルティングと開発、 LLM コンペプラットフォームの開発に従事。 角野為耶 (NSK) @naohachi89

Slide 3

Slide 3 text

本書の構成 ● 【第I部 概要】 ● 第1章 Human-in-the-Loop機械学習の概要 ● 第2章 Human-in-the-Loop機械学習を始める ● 【第II部 能動学習】 ● 第3章 不確実性サンプリング ● 第4章 多様性サンプリング ● 第5章 高度な能動学習 ● 第6章 能動学習をさまざまな機械学習タスクに適用する ● 【第III部 アノテーション】 ● 第7章 アノテーターとの協働 ● 第8章 アノテーションの品質管理 ● 第9章 高度なアノテーションとデータ拡張 ● 第10章 さまざまな機械学習タスクにおけるアノテーション品質 ● 【第IV部 機械学習のためのヒューマン-コンピュータインタラクション】 ● 第11章 データアノテーションのためのインターフェース ● 第12章 Human-in-the-Loop機械学習を組み込んだアプリケーション

Slide 4

Slide 4 text

角野担当章 ● 【第I部 概要】 ● 第1章 Human-in-the-Loop機械学習の概要 ● 第2章 Human-in-the-Loop機械学習を始める ● 【第II部 能動学習】 ● 第3章 不確実性サンプリング ● 第4章 多様性サンプリング ● 第5章 高度な能動学習 ● 第6章 能動学習をさまざまな機械学習タスクに適用する ● 【第III部 アノテーション】 ● 第7章 アノテーターとの協働 ● 第8章 アノテーションの品質管理 ● 第9章 高度なアノテーションとデータ拡張 ● 第10章 さまざまな機械学習タスクにおけるアノテーション品質 ● 【第IV部 機械学習のためのヒューマン-コンピュータインタラクション】 ● 第11章 データアノテーションのためのインターフェース ● 第12章 Human-in-the-Loop機械学習を組み込んだアプリケーション

Slide 5

Slide 5 text

発表の構成について ● HITL機械学習システムのMVPの構築(2章) ○ シンプルなタスクを題材に、HITL機械学習の全体像を紹介 ● 様々な機械学習タスクにおける HITL機械学習の適用方法(6, 10章より一部抜粋) ○ 物体検出等のタスクにおいて、能動学習の適用方法やアノテーション結果の品質管理方 法について紹介する

Slide 6

Slide 6 text

2章: Human-in-the-Loop機械学習を始める HITL (Human-in-the-Loop) 機械学習システムのMVPの構築 章のテーマ ケーススタディのタスク ケーススタディを通じて機械学習システムを構築する流れを学ぶ ニュース記事の二値分類 ・ニュース記事の見出しに対して、災害に関するニュースか否かを分類する ・「災害関連」タグを自動で付けることで、検索性の改善や災害対応に役立てる ID 見出し ラベル 1 今朝、東京都で震度5の地震が発生しました 1 2 Human in the Loop機械学習に関する勉強会が昨 夜開催されました 0 3 昨夜、竜巻が発生しました 1

Slide 7

Slide 7 text

HITL機械学習システムの全体像 以下のプロセスを反復的に実施する ● アノテーション対象の サンプリング ● アノテーション ● モデルの学習 ● ラベル付けされていない データに対する予測 プロセス

Slide 8

Slide 8 text

①評価データの作成 ● 最初に評価データを作成する ● 評価データはランダムサンプリングする

Slide 9

Slide 9 text

②学習データの作成とモデルの学習(1週目) ● 次に最初の学習データを作成し、モデルを学習する ● 学習データはランダムサンプリングする

Slide 10

Slide 10 text

③学習データの作成とモデルの学習(2週目以降) ● 追加の学習データを作成し、モデルを再度学習する ● 学習データは様々な手法を用いてサンプリングする

Slide 11

Slide 11 text

学習に用いるデータの候補をどのようにサンプリングすべきか? ● 学習データのサンプリングについては様々な手法が提案されている ○ 様々なサンプリング手法を組み合わせて活用することで、同じ件数の学習データで あってもモデルの予測性能を効率よく改善できる ● 本章では、ランダムサンプリングに加えて 最小確信度サンプリングと外れ値に基づくサン プリングを利用 最小確信度サンプリング ● 最も確信度の高いラベルの確信度が低い 順にデータをサンプリング ● 不確実性サンプリングの一種 外れ値に基づくサンプリング ● 既存の学習データと異なる特徴を持ったデータ ( = 単語の一致率が低いデータ )をサンプリング ● 多様性サンプリングの一種 ID 単語一致数の平均 10 5 200 2 243 3 382 4 450 0

Slide 12

Slide 12 text

なぜ評価データを最初にサンプリングすべきか? ● 評価データを最初に作成しないと、モデルの精度を正しく評価するのが難しくなる ● 能動学習を用いて学習データを作成した後に、残ったデータから 評価データを作成するとバ イアスがかかる ● e.g. ○ 確信度が低いデータを学習データとして作成した場合、モデルにとって簡単に予測でき るデータが残るため、残りのデータを評価データとすると モデルの精度が実際よりも高 く見える

Slide 13

Slide 13 text

アノテーションインターフェースについて ● アノテーションインターフェースは様々な面で重要となる ○ アノテーション効率に寄与する他、アノテーターのモチベーションにも影響する ● 本章の例ではテキストを分類するための簡単な CUIを利用する ○ 指示に従ってテキストを入力し、アノテーションを行う

Slide 14

Slide 14 text

2章まとめ ● ニュースの見出しが災害に関連するか否かを分類する機械学習システムを題材に、ケース スタディを実施 ● ケーススタディを通じてHITL機械学習においてどのような要素や過程が必要になるかを学 ぶ ○ 評価データの作成、学習データの作成、学習データのサンプリング手法、アノテーショ ンインターフェース、モデルの学習等 ● 本章で構築した機械学習システムはあくまで MVPであり、システムを構成する個別の要素に ついて、より洗練された手法は以降の章で学ぶ

Slide 15

Slide 15 text

角野担当章 ● 【第I部 概要】 ● 第1章 Human-in-the-Loop機械学習の概要 ● 第2章 Human-in-the-Loop機械学習を始める ● 【第II部 能動学習】 ● 第3章 不確実性サンプリング ● 第4章 多様性サンプリング ● 第5章 高度な能動学習 ● 第6章 能動学習をさまざまな機械学習タスクに適用する ● 【第III部 アノテーション】 ● 第7章 アノテーターとの協働 ● 第8章 アノテーションの品質管理 ● 第9章 高度なアノテーションとデータ拡張 ● 第10章 さまざまな機械学習タスクにおけるアノテーション品質 ● 【第IV部 機械学習のためのヒューマン-コンピュータインタラクション】 ● 第11章 データアノテーションのためのインターフェース ● 第12章 Human-in-the-Loop機械学習を組み込んだアプリケーション ここからは、HITL機械学習を様々なタスクに適 用する際のポイントを解説します

Slide 16

Slide 16 text

様々な機械学習タスクにおけるHITL機械学習 書籍で記載されている機械学習 タスクの例 ● 画像 ○ 物体検出、セマンティックセグメンテーション、インスタンスセグメンテーション ● テキスト ○ 系列ラベリング、テキスト生成、検索 ● 音声 ○ 分類、ASR ● 連続値を扱うタスク(回帰タスク) ● 5章までは単純な分類問題を題材にして能動学習技術について学んできた ● 一方、分類以外のタスクではこれまで学んだ技術をそのまま適用できるわけではない ○ 物体検出や系列ラベリングにおける不確実性の計算方法は自明ではない 分類以外のタスクでHITL機械学習をどう適用するかを抜粋してご紹介します

Slide 17

Slide 17 text

HITL機械学習を様々なタスクで適用する際の論点 論点の例 ● 能動学習をどう適用するか? ○ 不確実性や多様性をどのように計算するか? ○ 不確実性や多様性をサンプリングする際にどのように組み込むのか? ● アノテーションの品質をどのように管理するか? ○ アノテーション結果をどのようにレビューするのか? ○ アノテーションの一致度をどのように計算するか? ○ アノテーション精度をどのように計算するか?

Slide 18

Slide 18 text

物体検出における能動学習: 物体検出とは? 画像中に含まれている物体の「位置」と「種類」を検出するタスク 物体検出は以下の2つのタスクで構成される 物体検出とは ● ローカリゼーション ○ 画像中のバウンディングボックスを推定するタスク ● ラベリング ○ バウンディングボックスのラベルを推定するタスク 物体検出を構成するタスク ※バウンディングボックス = 画像中の物体を囲んだ領域のこと

Slide 19

Slide 19 text

物体検出における不確実性 物体検出においてはそれぞれのタスクで不確実性が計算される ● ラベリングの不確実性は分類問題と同様に計算可能 ● ローカリゼーションの不確実性は、アンサンブル手法を用いて計算可能 ○ 詳細は次ページに記載 Q. 不確実性サンプリングにおいてどちらの不確実性を優先すべきか? A.どちらを優先すべきかはケースバイケース ● 自動車の交通量を計測するアプリにおいてはラベリングの精度が重要 ● 衝突を予測するようなアプリにおいてはローカリゼーションが重要 単一の不確実性のみを考慮してサンプルすることも、組み合わせてサンプルすることも可能

Slide 20

Slide 20 text

ローカリゼーションにおける不確実性 ● アンサンブル手法を用いて計算することが可能 ○ 本書籍ではこちらが紹介されているが、あくまで一例である点に注意 ● アンサンブル手法では、複数の予測を行い、予測のばらつきを不確実性とする ○ 複数の予測を行う方法の例 ■ ハイパーパラメータを変えた複数のモデルで予測を行う ■ 単一のモデルにドロップアウトを適用して複数回の予測を行う ローカリゼーションにおける予測のばらつきが小さい例(左)と大きい例(右)

Slide 21

Slide 21 text

物体検出における品質管理: アノテーション結果のレビュー方法の例 ● バウンディングボックスが正しいか否かを確認することでレビューを実施 ○ バウンディングボックスのアノテーションに対して、この方式のレビューは 作業時間が短い ■ ➔ 全体の作業時間を大きく増やさずに品質を管理できる ● レビューを実施することで効率的に品質の高いデータを作成可能 ○ 非専門家のアノテーターがアノテーションを実施する ○ 専門家がレビューと編集を行うことで効率よく品質の高いデータを作成できる

Slide 22

Slide 22 text

物体検出における品質管理: ローカリゼーションにおける一致度 ● 一致度を計算しておくことで、下記のような用途で利用できる( 8章参照 ) ○ データセットの信頼性評価、アノテーターの信頼性評価、ガイドラインの改善等 ● ローカリゼーションにおけるアノテーションの一致度は、バウンディングボックスの IoU で計算さ れる ○ アノテーション結果が3つ以上ある場合は各ペアの IoU の平均を一致度とする

Slide 23

Slide 23 text

まとめ ● シンプルなタスクを題材にHITL機械学習システムを構築する流れについて ● 物体検出について、HITL機械学習をどう適用するかについて ○ 特に、不確実性サンプリングと品質管理手法の一部に絞って紹介した 紹介した内容 ● 多様性サンプリング ● モデルを用いた半自動アノテーション ● データ拡張 ● 転移学習 ● 不確実性サンプリング(物体検出のみ紹介) ● 品質管理手法(物体検出のみ一部紹介) 紹介しなかった内容 以下の内容については、書籍では言及されていますが本発表では紹介しませんでした。 ご興味ある方はぜひ原著をお手にとってみてください!

Slide 24

Slide 24 text

宣伝 ● LLM専用のコンペティションプラットフォームを作っています ○ タスク・データに対して、プロンプト(及びプロンプトのパイプライン)をサブミットすると精 度評価が行われるプラットフォーム ○ Kaggle等と異なり自然言語の記述だけでソリューションをサブミットできる ● コンペティションへのデータ提供にご興味がある個人・企業の方がいらっしゃいましたら、ぜ ひ@naohachi89までご連絡ください! ● その他、HITL含む機械学習やNLP周りのコンサルティング・開発も行っているので、こちらも ご興味ある方がいらっしゃいましたらご連絡ください

Slide 25

Slide 25 text

Appendix

Slide 26

Slide 26 text

物体検出における精度: IoUの計算方法 ● ローカリゼーションの精度はIoU (intersection over union)で計算できる ● ローカリゼーションタスクにおける一致度や不確実性を示す指標としても利用できる 予測されたバウンディングボックス (①)と正しいバウンディングボックス(②)について、 IoUは「①と②の積集合の面積」を「①と②の和集合の面積」で割った値に等しい

Slide 27

Slide 27 text

系列ラベリングにおける能動学習: 系列ラベリングとは? ● テキスト等の系列データに対して、要素をラベリングするタスク ○ e.g. テキスト中に含まれる固有表現(病名、場所等)の抽出 ● 書籍ではNER(固有表現抽出)を題材に解説を記載 ○ NERにおいては、テキストをトークン単位に分割した上で IOBのタグ付けを行う ■ B: 固有表現の先頭(Beggining) ■ I : 固有表現の先頭以外のトークン (Inside) ■ O: 固有表現に該当しないトークン(Outside) ○ 固有表現に該当するスパン(テキスト中の部分系列)に対して、どの固有表現に該当するか をラベリングする 系列ラベリングとは

Slide 28

Slide 28 text

系列ラベリングにおける不確実性 ● スパン内部の不確実性 ○ トークン単体の不確実性 ○ スパン全体の不確実性 ● スパン外部の不確実性 ○ スパンに隣接するトークンの不確実性 系列ラベリングにおいては、様々な種類の不確実性が計算できる サンプリング時にどの不確実性をどのように組み込むかは応用先に依存する San Franciscoのうち、Sanのみ場所と判定されているが隣接する Franciscoも高い確信度となっている このようなケースを鑑みると、スパンに隣接するトークンまで含めて不確実性を計算したくなる 不確実性の種類

Slide 29

Slide 29 text

系列ラベリングにおける精度と一致度 ● トークン単位での精度評価 vs スパン単位での精度評価 ○ NERの場合は、通常スパン単位でF値を評価する ■ e.g. 「San Francisco」を地名として予測した場合は正解と判定するが、 supermarket まで含めて地名と予測した場合は不正解となる ○ アノテーターの評価においてはそれぞれ計測しておくことを推奨 ■ アノテーターの語用的な理解の問題とガイドラインの問題を分離するため ○ 一致度についても、同様にトークン単位・スパン単位で計算できる ● Oラベルを含めるか否か ○ NERの場合は通常は明示的にOラベルの精度は評価しない ■ F値で評価を行う場合、Oラベルと他のラベルの混同が考慮されるため ○ チャンスレートを考慮して精度評価を行う場合も、通常 Oラベルは除外する 精度や一致度の計算方法にオプションがある。どの方法を採用するかはタスクに依存。 評価方法の種類

Slide 30

Slide 30 text

固有表現認識におけるアノテーション結果の不一致 ● どこまでを固有表現とすべきか、認識が一致しにくい ○ Ney York Cityは固有表現として認識すべき? ■ NYCは地名としては一般的に使われている ○ San Francisco cityについてはどうすべきか? ■ SFCはNYCと比べると一般的な呼称ではない ○ 「The City」はSan Franciscoを指すことがあるが、これは地名として認識すべきか? ■ 小文字で記載されている場合はどう取り扱うべきか? ● 固有表現認識のアノテーションにおいては、上記のような認識のずれが発生しやすい ○ ➔アノテーターと連携してエラーを特定し、ガイドラインを更新していくことが重要 固有表現認識においてはアノテーション結果の不一致が起きやすい