Active Learning from Imperfect Labelers @ NIPS読み会・関西

Post on 16-Apr-2017

211 views 2 download

Transcript of Active Learning from Imperfect Labelers @ NIPS読み会・関西

Ac#ve  Learning  from  Imperfect  Labelers

NIPS読み会・関西11/12    

大阪大学生命機能研究科M1,都築拓  @tsukamakiri

・自己紹介

・都築拓(@tsukamakiri) ・大阪大学生命機能研究科M1  

細胞の状態推定,予測 実験プロトコル最適化    @Robo#c  Biology  Ins#tute

・理化学研究所Qbic生化学シミュレーションチーム研究生  

・今回話すこと

①Ac#ve  learningのざっくりとした紹介    ②その研究動向の中で本論文     Ac#ve  Learning  from  Imperfect  Labelers    は何を,どのようなアプローチで明らかにしたか?      

・今回話さないこと

・本論文    Ac#ve  Learning  from  Imperfect  Labelers   中で出てくる定理,事実の証明の詳細  

・Ac#ve  learningの詳細な分類,歴史,理論的背景          (Burr  SeHlesによるサーベイ論文  Ac#ve  Learning  Literature  Surveyが詳しい)    (理論的な背景は S  Hanneke  の  Theore#cal  Founda#on  of  Ac#ve  Learning)      

Active Learningとは何か?

・Ac#ve  learningとは何か?

データを分類する分離面をどう引くか?

:データ

・Ac#ve  learningとは何か?

教師あり学習の場合

すべてのデータにラベルをつける 超大変

Labeler

・Ac#ve  learningとは何か?

ラベル付けをサボるにはどうするか?

・できるだけ少ないラベルで,うまく分類したい….

Labeler

・Ac#ve  learningとは何か?

方針1:適当に選んでラベル付けしてみる

・この場合,分離面をどう引きますか?

Labeler

テキトー

・Ac#ve  learningとは何か?

方針1:適当に選んでラベル付けしてみる

こうかな?

・Ac#ve  learningとは何か?

方針1:適当に選んでラベル付けしてみる

残念,ハズレ

・Ac#ve  learningとは何か?

方針2: “実験”しながらラベル付けする

Labeler

こいつに聞こう!

・Ac#ve  learningとは何か?

方針2: “実験”しながらラベル付けする

Labeler

ここは何?

・Ac#ve  learningとは何か?

方針2: “実験”しながらラベル付けする

Labeler

じゃあここは?

黄色

・Ac#ve  learningとは何か?

方針2: “実験”しながらラベル付けする

Labeler

黄色

ここは?

・Ac#ve  learningとは何か?

方針2: “実験”しながらラベル付けする

Labeler

ここは?

・Ac#ve  learningとは何か?

方針2: “実験”しながらラベル付けする

Labeler

黄色

ここは?

・・・・・・ Labeler

・Ac#ve  learningとは何か?

方針2: “実験”しながらラベル付けする

Labeler

・この場合,分離面をどう引きますか?

・Ac#ve  learningとは何か?

方針2: “実験”しながらラベル付けする

Labeler

こうかな?

・Ac#ve  learningとは何か?

方針2: “実験”しながらラベル付けする

Labeler

バッチリ!!

・Ac#ve  learningのコンセプト

・できるだけ少ないラベルで,良い性能の学習したい  →  アノテーションは重労働だし,お金もかかる.

・Labelerに”質問”(query)して,          効率的に,ラベル付きデータを集めよう!  

Labeler

g(x,θ )Model

Query  (質問)

Answer

質問は少ないほうが良い

・Ac#ve  learningの適用例

・がん細胞の病理診断の自動化

お医者さんを雇うのは高いし,数も多くない

機械が判断に困る画像だけ,医者に送って教えてもらう [Kutsuna  Net  et al.  2012]

・Ac#ve  learningの適用例

実験計画立案の自動化(Op#mal  Experimental  Design)  Robot  Scien#st  [R.  D.  King  et  al.  1999~2016]  

酵母の遺伝子に,実験を通して”機能”をアノテーション  

Query(質問)=実験操作 と考えている.  

Active Learning from Imperfect Labelers

今回の論文

・Ac#ve  learningの登場人物

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

・Ac#ve  Learning  from  Imperfect  Labelers  

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

今回問題となるところ

・Ac#ve  Learning  from  Imperfect  Labelers  

Labeler ・本当にLabelerは”正しい”か?

・Ac#ve  Learning  from  Imperfect  Labelers  

Labeler ・本当にLabelerは”正しい”か?

No!!  現実問題として,アノテーション自体の精度  が低い例はいくらでもある.

クラウドソーシング,データが難解,etc

そもそもアノテーションが不可能なデータ  が含まれていることも

・例:画像のDetec#on課題とAc#ve  Learning

[C  Kading  CVPR  2015]  

Query に対して「分からない」と回答することで性能向上

自動で切り出してきた領域を  分類する課題

分類不可能なデータが  多数含まれる  

適当にラベルつけるくらい  なら何もしないほうが良い  

学習の収束に必要な  データ数が少なくなった  

・今回の論文の論点

Imperfect  Labelers Labelerの性質として

①noise   →際どい質問に関して間違ったラベル付けを行う    ②abstain   →際どい質問に関して回答を拒否する

の2点を仮定したとき

Labeler

学習が収束する保証はあるか?   

収束するなら,どのくらいのデータ数が必要か?   

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

・今回の論文で理論的に示したこと

d次元データの  2クラス  分類問題

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

・今回の論文で理論的に示したこと

d次元データの  

2クラス  分類問題

間違ったり,  回答しなかったり  するLabeler  

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

・今回の論文で理論的に示したこと

d次元データの  2クラス  分類問題

間違ったり,  回答しなかったり  するLabeler  

(適当なアルゴリズムを仮定したとき)  1:学習が収束する  2:収束に必要なデータ数の    上界と下界を与えた  

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

・今回の論文で理論的に示したこと

d次元データの  2クラス  分類問題

間違ったり,  回答しなかったり  するLabeler  

(適当なアルゴリズムを仮定したとき)  1:学習が収束する  2:収束に必要なquery数の    上界と下界を与えた  

ここがスゴイ!!

・今回の論文の何がすごいか?

学習の収束に必要なqueryの数の下界を示した

「どんな分類機を持ってきても,  どんな最適化アルゴリズムを使っても,  ある精度を持つ分類機を作るためには  最低限これだけのデータが必要です」

ということを言っている.

学習機設計するとき,どの程度データ集めるか  の目安になる可能性がある.  

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

・今回の論文で理論的に示したこと

d次元データの  2クラス  分類問題

間違ったり,  回答しなかったり  するLabeler  

(適当なアルゴリズムを仮定したとき)  1:学習が収束する  2:収束に必要なデータ数の    上界と下界を与えた  

・d次元2クラス分類問題をどう定義するか?

・Taskの設定

d次元のデータ空間に,d-­‐1次元の超平面を引いて,  その片方に1,もう片方に0と返す問題  

0

1

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

・今回の論文で理論的に示したこと

d次元データの  2クラス  分類問題

間違ったり,  回答しなかったり  するLabeler  

(適当なアルゴリズムを仮定したとき)  1:学習が収束する  2:収束に必要なデータ数の    上界と下界を与えた  

・Labelerの設定

“間違ったり,回答しなかったりする”をどう表現するか?  

本論文では3通りの設定を考えている  

・Labelerの設定

L Labeler

In

Out

回答しない(ラベル付けない)  を意味する

・Labelerの設定

Condi#on1:  

本論文で最も緩い制約

データが真の決定境界  g*  に近づくほど,  Labelerが回答しない確率P(±|x)が上昇

データの位置に関わらず,Labelerは,  一定確率で誤ったラベルをつける  

・Labelerの設定

Condi#on2:  

Condi#on1に誤りに関する設定を加えた

データが真の決定境界  g*  に近づくほど,  Labelerが回答しない確率P(±|x)が上昇

Labelerがデータに誤ったラベルをつける確率も,  真の決定境界g*  に近づくにつれ,上昇    

・Labelerの設定

Condi#on3:  

データが真の決定境界  g*  に近づくほど,  Labelerが回答しない確率P(±|x)が上昇

P(±|x)は,真の決定境界 g*  に近づくにつれ,  単調に増加  

Condi#on1に,P(±|x)の単調増加を仮定

・Labelerの設定

Condi#on3:  

Condi#on1に,P(±|x)の単調増加を仮定

Condi#on1のみ Condi#on1+Condi#on3

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

・今回の論文で理論的に示したこと

d次元データの  2クラス  分類問題

間違ったり,  回答しなかったり  するLabeler  

(適当なアルゴリズムを仮定したとき)  1:学習が収束する  2:収束に必要なデータ数の    上界と下界を与えた  

・「モデルの学習が収束した」状態をどう定義するか?

真の決定境界 g* と,その推定値  g  の間の誤差  ||g  –  g*||を以下のように定義する

アプリオリに与えた誤差ε,危険率δに対して,  確率  1-­‐δ  で  

|| g− g* || < εが成立する時,モデルgは収束したと定義する  

・query,学習アルゴリズムをどのように設定したか?

・分割探索みたいな  ことをやってる

・大変なので,省略  

学習アルゴリズムA→

入力:誤差ε      危険率δ

出力:分類境界  g  

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

・今回の論文で理論的に示したこと

d次元データの  2クラス  分類問題

間違ったり,  回答しなかったり  するLabeler  

(適当なアルゴリズムを仮定したとき)  1:学習が収束(consistent)する  2:収束に必要なデータ数の    上界と下界を与えた  

・Condi#on1より,学習が収束すること(consistent)      を示すことができる.

データが真の決定境界  g*  に近づくほど,  Labelerが回答しない確率P(±|x)が上昇

データの位置に関わらず,Labelerは,  一定確率で誤ったラベルをつける  

Condi#on1

|| g− g* || < ε with  prob  at  least  1-­‐δ/2

先述のアルゴリズムで最適化

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

・今回の論文で理論的に示したこと

d次元データの  2クラス  分類問題

間違ったり,  回答しなかったり  するLabeler  

(適当なアルゴリズムを仮定したとき)  1:学習が収束する  2:収束に必要なデータ数の    上界と下界を与えた  

・Condi#on1と2の条件において,学習が収束するための,   query数の下界が導出できる.  

データが真の決定境界  g*  に近づくほど,  Labelerが回答しない確率P(±|x)が上昇

Labelerがデータに誤ったラベルをつける確率が,  真の決定境界g*  に近づくにつれ,上昇    

Condi#on1+2

任意の学習アルゴリズムに対して.query数の下界が導出できる

・Condi#on1と3の条件において,学習が収束するための,   query数の下界が導出できる.  

データが真の決定境界  g*  に近づくほど,  Labelerが回答しない確率P(±|x)が上昇

P(±|x)は,真の決定境界  g*  に近づくにつれ,  単調に増加    

Condi#on1+2

任意の学習アルゴリズムに対して.query数の下界が導出できる

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

・今回の論文で理論的に示したこと

d次元データの  2クラス  分類問題

間違ったり,  回答しなかったり  するLabeler  

(適当なアルゴリズムを仮定したとき)  1:学習が収束する  2:収束に必要なデータ数の    上界と下界を与えた  

・今回の研究から得られた知見

・ノイジーなラベルを返すくらいなら,「わからない」と  言った方が,学習の収束が早い.

・Imperfect  Labelerを使った学習に一致性がある  

d次元データに対する2クラス分類を考えた時

・query  complexityの下界を与えた  

(・アルゴリズムを仮定すれば上界も)  

Noiseのみ Absteinあり

1次元の場合のquery  complexity

・疑問点など

・今後多クラス分類に拡張した手法などが出てくるんだろうか  ・Query  complexity  の下界の式に,危険率δが陽に入っていない             証明を追いきれていない....    ・わたしの時間(と戦闘力)が足りなかった感  

Labeler

g(x,θ )Model

Query  (質問)

Answer

Task

・今回の論文で示したこと

d次元データの  2クラス  分類問題

間違ったり,  回答しなかったり  するLabeler  

(適当なアルゴリズムを仮定したとき)  1:学習が収束する  2:収束に必要なデータ数の    上界と下界を与えた