Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Curriculum Learning (関東CV勉強会)

2015年5月30日第29回コンピュータビジョン勉強会@関東「有名論文を読む会」発表用資料。
Curriculum Learning [Bengio+, ICML 2009] とその後続を紹介。

  • Inicia sesión para ver los comentarios

Curriculum Learning (関東CV勉強会)

  1. 1. Curriculum Learning 牛久 祥孝 losnuevetoros
  2. 2. お前は誰だ? ~2014.3 博士(情報理工学)、東京大学 • 画像説明文の自動生成 • 大規模画像分類 2014.4~ NTT コミュニケーション科学基礎研究所
  3. 3. 大規模な画像の分類といえば Deepで深イイ深層学習の独壇場 [Krizhevsky+, NIPS 2013] [Mahendran+Vedaldi, CVPR 2015]
  4. 4. 2012年~:猫も杓子も Deep Learning 祭り 2012年の画像 認識タスクで ディープ勢が 2位以下に圧勝! 2012年の画像 認識タスクで ディープ勢が 2位以下に圧勝! 2012年の画像 認識タスクで ディープ勢が 2位以下に圧勝!
  5. 5. 2012年~:猫も杓子も Deep Learning 祭り [Tomohiro Mito, Deep learning, slideshare, 2013]
  6. 6. 2012年~:猫も杓子も Deep Learning 祭り [Tomohiro Mito, Deep learning, slideshare, 2013] ISIってなんだよどこのチームだよ 同webサイトをみると・・・ ぼくら Deep勢
  7. 7. ISIここだよ! (この勉強会の建物) 8Fあたり
  8. 8. Deep Learning 勢 Geoffrey Hinton, Yann LeCun, Yoshua Bengio
  9. 9. 今日紹介する論文 Geoffrey Hinton, Yann LeCun, Yoshua Bengio
  10. 10. 以下の疑問にお応えします。 • Curriculum Learning って? • どうやって学習するの? • どんな応用例があるの? • どうせ Deep Learning 用の研究なんでしょ?
  11. 11. 家庭教師 ツルとカメが合わせて10匹います。 足の数は合計24本でした。 ツルとカメはそれぞれ何匹ずついるでしょうか?
  12. 12. こんな家庭教師は嫌だ ツルとカメが合わせて10匹います。 足の数は合計24本でした。 ツルとカメはそれぞれ何匹ずついるでしょうか? ツルを𝑥1匹、カメを𝑥2匹とすれば、 1 1 2 4 𝑥1 𝑥2 = 10 24 だから、逆行列を左からかけて 𝑥1 𝑥2 = 1 1 2 4 −1 10 24 = 8 2 と解けるよね。
  13. 13. Curriculum Learning とは 10-☐=5 △÷3=4
  14. 14. Curriculum Learning とは 3𝑥 + 2𝑦 = 21 −4𝑥 + 𝑦 = 5
  15. 15. 2 −1 3 4 1 9 2 3 1 𝑥1 𝑥2 𝑥3 = 2 3 1
  16. 16. 人間の学習では • 最初は簡単な問題を解く。 • 時の経過とともに難しい問題も学ぶ。 計算機も見習うべきでは?! Curriculum Learning [Bengio+, ICML 2009]
  17. 17. ケース1:図形分類 • 自動生成された三角形、楕円、長方形の分類 • カリキュラム:簡単なデータも自動生成 – 正三角形、円、正方形 – グレーの濃さの種類も減らす • 5層ニューラルネットで学習 – 最初は簡単なデータで学習 – ある周 (switch epoch) から難しいデータで学習
  18. 18. ケース1:図形分類の実験結果 最初は簡単な図形を学ぶというカリキュラムの効果を確認した。 • 最初から難しいのも簡単なのも両方学習したらいいのでは? → そうした場合、switch epochが16のときと同程度の性能 (つまり、そこまで識別性能が高くならない) • 簡単なやつだけ学習すればいい性能が出るというオチ? → 簡単なやつだけだと poor な結果でした。(論文より)
  19. 19. ケース2:言語モデル • ある単語列から次の 単語を推定する • カリキュラム:語彙 を増やしていく – 最頻5000単語から 。 – 5000単語ずつ増やし、 20000単語のモデルを 学習。 • 右のニューラルネッ トで学習 次の単語をtheと仮定したときのスコア word2vecの 様なもの
  20. 20. ケース2:言語モデルの実験結果 Wikipedia から6億文節を抽出して学習 → curriculumなしに比べて有意に優れた性能
  21. 21. Curriculum Learning • 最初は簡単なサンプルのみを学習し、次第に難 しいものを学習する枠組み。 – 最適解への収束が早くなる! – 非凸でもより良い局所最適解に到達できる! かもしれない。 • ICMLでの発表(実験重視と言われること多し) にしてはconceptualな論文。 – Boosting と関連してそう。 – Active Learning と関連してそう。 – Transfer Learning と関連してそう。
  22. 22. 以下の疑問にお応えします。 • Curriculum Learning って? • どうやって学習するの? • どんな応用例があるの? • どうせ Deep Learning 用の研究なんでしょ? 最初は簡単なサンプルのみを学習し、 次第に難しいものを学習する枠組み
  23. 23. カリキュラムってどうやって定義するの? 先程の例はやたらハンドメイドだったけど・・・? →実際、お手製のカリキュラムも多い • [Basu+Christensen, AAAI 2013] – 機械の識別面を人に教示する手法 – カリキュラム=識別面からの距離 • [Spitkovsky+, NIPS 2009] – 構文解析(自然言語処理) – カリキュラム=短文ほど簡単 • [Lapedriza+, arXiv 2013] – 物体検出やシーン認識 – カリキュラム=Exemplar-SVM
  24. 24. 問題ごとに適切なカリキュラム考えるのが面倒だ・・・
  25. 25. Self-Paced Learning [Kumar+, NIPS 2010] カリキュラム𝒗:ある年齢𝜆で𝑖番目のサンプル(𝒙𝑖, 𝑦𝑖)を 学習するかどうかを示す0/1の値 𝒗 ∈ 0,1 𝑛 カリキュラム𝒗の下での学習: 𝒗によって選択されたサンプルのみで、モデルのパラ メータ𝒘を学習する min 𝒘 ℒ 𝒘 = 𝑖=1 𝑛 𝑣𝑖 𝐿 𝑦𝑖, 𝑓 𝒙𝑖, 𝒘 サンプル数 損失関数
  26. 26. SPL によるカリキュラム なら、 𝒘 だけじゃなくて 𝒗 も最適化すればいいじゃない。 min 𝒘,𝒗 ℒ 𝒘, 𝒗; 𝜆 = 𝑖=1 𝑛 𝑣𝑖 𝐿 𝑦𝑖, 𝑓 𝒙𝑖, 𝒘 − 𝜆 𝑖=1 𝑛 𝑣𝑖
  27. 27. SPL によるカリキュラム なら、 𝒘 だけじゃなくて 𝒗 も最適化すればいいじゃない。 min 𝒘,𝒗 ℒ 𝒘, 𝒗; 𝜆 = 𝑖=1 𝑛 𝑣𝑖 𝐿 𝑦𝑖, 𝑓 𝒙𝑖, 𝒘 − 𝜆 𝑖=1 𝑛 𝑣𝑖 負のℓ1正則化項:𝒗の各要素を次々と1にしようとする
  28. 28. SPL によるカリキュラム なら、 𝒘 だけじゃなくて 𝒗 も最適化すればいいじゃない。 min 𝒘,𝒗 ℒ 𝒘, 𝒗; 𝜆 = 𝑖=1 𝑛 𝑣𝑖 𝐿 𝑦𝑖, 𝑓 𝒙𝑖, 𝒘 − 𝜆 𝑖=1 𝑛 𝑣𝑖 でも𝒗の各要素が1になるほどこっちが大きくなる →𝐿の値が少ない(=簡単な)サンプル(𝒙𝑖, 𝑦𝑖)が選ばれる! 負のℓ1正則化項:𝒗の各要素を次々と1にしようとする
  29. 29. SPL による学習アルゴリズム 1. 初期化。なお𝒗はランダムに0/1で初期化。 2. 次の3ステップを収束するまで繰り返す。 1. カリキュラム𝒗を固定してパラメータ𝒘を更新。 min 𝒘 ℒ 𝒘; 𝜆 = 𝑖=1 𝑛 𝑣𝑖 𝐿 𝑦𝑖, 𝑓 𝒙𝑖, 𝒘 2. パラメータ𝒘を固定してカリキュラム𝒗を更新。 𝑣𝑖 = 1, 𝐿 𝑦𝑖, 𝑓 𝒙𝑖, 𝒘 < 𝜆 0, otherwise 3. 年齢𝜆を定数𝜇倍して大人の階段のぼる。
  30. 30. SPL with Diversity [Jiang+, NIPS 2014] 簡単かどうかだけじゃなくて、 Diverseな(色々な)タイプのサンプルを学習すべき。 動画認識コンペTRECVID内の「ロッククライミング」データによる例
  31. 31. SPLDでのdiversityの定義 特徴量𝑋 = (𝑥1, … , 𝑥 𝑛)は𝑏個のグループに分割可能とする。 • クラスタリング(本論文) • 階層型分類ならサブクラスもあり? Diversity: ブロック毎の𝒗(𝑗)による負のℓ2,1ノルム − 𝒗 2,1 = − 𝑗=1 𝑏 𝒗 𝑗 2 𝒗で値が1をとる要素の数が一定のとき: 多くのグループにバラけるほど値が小さくなる!
  32. 32. SPLDの定式化 min 𝒘,𝒗 ℒ 𝒘, 𝒗; 𝜆, 𝛾 = 𝑖=1 𝑛 𝑣𝑖 𝐿 𝑦𝑖, 𝑓 𝒙𝑖, 𝒘 − 𝜆 𝑖=1 𝑛 𝑣𝑖 − 𝛾 𝑗=1 𝑏 𝒗 𝑗 2 実際に選ばれた動画の例 3パターン 元のSPLSPLDDiversityのみ
  33. 33. SPLDのアルゴリズム • ほとんどSPLと同じ! – カリキュラム𝒗とパラメータ𝒘を交互に更新。 – パラメータ𝒘の更新は全く変化なし。 • カリキュラム𝒗の更新はちょっと変わる。
  34. 34. SPLDのカリキュラム選択 ココ(だけ)が新規!
  35. 35. 以下の疑問にお応えします。 • Curriculum Learning って? • どうやって学習するの? • どんな応用例があるの? • どうせ Deep Learning 用の研究なんでしょ? 最初は簡単なサンプルのみを学習し、 次第に難しいものを学習する枠組み 問題ごとにお手製のカリキュラムを用意するか、 Self-Paced Learningやその亜種を適用する。
  36. 36. Curriculum Learning 適用例:SPL原著 • 各種機械学習問題に適用 – 名詞句同一指示解析 – DNAの特定配列パターンの検索 – 手書き文字認識 – 物体検出 比較 CCCPSPL 1周目 3周目 4周目 最初は簡単な左側のゾウのみ学習している どちらも学習するようになり、 どちらもうまく検出できている。 最初から両方の画像を学習しているが、 最後まで右側の物体をうまく検出できていない 2周目
  37. 37. Curriculum Learning 適用例:SPLD原著 • 動画認識問題に適用 – TRECVID Multimedia Event Detection (MED) タスク
  38. 38. Curriculum Learning 適用例:SPLD原著 • 動画認識問題に適用 – Hollywood2、Olympic Sports データセット [Wang+, ICCV 2013]と特徴量は同じ。 機械学習手法のSVMも同じ。 SPLDによるサンプル選択の有無だけが違い。
  39. 39. Curriculum Learning 適用例:再掲 先程のスライドの再掲。 • [Basu+Christensen, AAAI 2013] – 機械の識別面を人に教示する手法 – カリキュラム=識別面からの距離 • [Spitkovsky+, NIPS 2009] – 構文解析(自然言語処理) – カリキュラム=短文ほど簡単 • [Lapedriza+, arXiv 2013] – 物体検出やシーン認識 – カリキュラム=Exemplar-SVM
  40. 40. Curriculum Learning 適用例:マルチメディア • [Xiao+, ACM MM 2014] – Deep Learning による画 像認識 – データが増えた際の新 規クラス学習に着目 • [Jiang+, ACM MM 2014] – SPLDと同じ研究室、同 じ主著者がSPLDより 1ヶ月ほど前に発表 – SPLとrank SVMによる マルチメディア検索の リランキング
  41. 41. 各種機械学習手法への適用例 • 識別面の教示 [Basu+Christensen, AAAI 2013] 線形分類 • 構文解析 [Spitkovsky+, NIPS 2009] EMアルゴリズム • 物体検出やシーン認識 [Lapedriza+, arXiv 2013] LDA、線形/非線形SVM • 新規クラスを含む物体認識 [Xiao+, ACM MM 2014] Deep Convolutional Neural Network • マルチメディア検索 [Jiang+, ACM MM 2014] SVM • SPL原著 [Kumar+, NIPS 2010] Latent SSVM • SPLD原著 [Jiang+, NIPS 2014] SVM
  42. 42. 以下の疑問にお応えしたハズ。 • Curriculum Learning って? • どうやって学習するの? • どんな応用例があるの? • どうせ Deep Learning 用の研究なんでしょ? 最初は簡単なサンプルのみを学習し、 次第に難しいものを学習する枠組み 問題ごとにお手製のカリキュラムを用意するか、 Self-Paced Learningやその亜種を適用する。 最近でも動画認識などの応用例が報告されている。 Deep Learning に限らない、一般的なフレームワーク!
  43. 43. 付録:SPLDのグルーピング方法による影響 • クラスタリング方法 • クラスタ数 によらず、SPLを上回る性能を得ている。

×