Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

深層学習入門

41,052 views

Published on

Deep Learning Tutorial, 深層学習の入門

Published in: Engineering
  • Hi there! Essay Help For Students | Discount 10% for your first order! - Check our website! https://vk.cc/80SakO
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

深層学習入門

  1. 1. 深層学習 ダヌシカ ボレガラ
  2. 2. 深層学習 Deep Learning
  3. 3. 概要 • 応用 • 理論 • 実践 3
  4. 4. 深層学習 • 英語ではDeep Learning • 特徴の数段の組み合わせを考慮することでより複雑 な現象を学習する仕組み • 神経網回路(ニューラル・ネットワーク)の層を重ねる ことで学習することが殆ど • 人間の脳の仕組みに似ている? • とにかく,様々な認識タスクで大幅に良い精度を示 しており,Google, Facebook,Microsoft,…など多くの企 業が研究開発をしている. 4
  5. 5. イメージ図 5 ピクセル 色特徴線認識形認識物体認識 教師信号
  6. 6. 6 報道 Deep Learning in the News 13! Researcher Dreams Up Machines That Learn Without Humans 06.27.13 Scientists See Promise in Deep-Learning Programs John Markoff November 23, 2012 Google!taps!U! of!T!professor! to!teach! context!to! computers! 03.11.13! slide credit: Bengio KDD’14
  7. 7. ヒントン先生(Google) 7 報道 Deep Learning in the News 13! Researcher Dreams Up Machines That Learn Without Humans 06.27.13 Scientists See Promise in Deep-Learning Programs John Markoff November 23, 2012 Google!taps!U! of!T!professor! to!teach! context!to! computers! 03.11.13! slide credit: Bengio KDD’14
  8. 8. 8 報道 Deep Learning in the News 13! Researcher Dreams Up Machines That Learn Without Humans 06.27.13 Scientists See Promise in Deep-Learning Programs John Markoff November 23, 2012 Google!taps!U! of!T!professor! to!teach! context!to! computers! 03.11.13! ベンジオ先生 Montreal大学 slide credit: Bengio KDD’14
  9. 9. 9 報道 Deep Learning in the News 13! LeCun先生 (Facebook) Researcher Dreams Up Machines That Learn Without Humans 06.27.13 Scientists See Promise in Deep-Learning Programs John Markoff November 23, 2012 Google!taps!U! of!T!professor! to!teach! context!to! computers! 03.11.13! slide credit: Bengio KDD’14
  10. 10. 応用
  11. 11. 深層学習の実世界応用 • 画像認識 • 物体認識 • 情報検索 • 画像検索,機械翻訳,類似検索 • 音声 • 音声認識,話者同定 • ロボット工学 • 自動運転, ゲーム 11
  12. 12. 認識タスクの概要 12 How$is$computer$percep>on$done?$ How$is$computer$percep>on$done?$ How$is$computer$percep>on$done?$ How$is$computer$percep>on$done?$ 入力低次元特徴学習アルゴリズム How$is$computer$percep>on$done?$ How$is$computer$percep>on$done?$ Image$ LowTlevel$ vision$features$ Recogni>on$ Object$ detec>on$ Input Data Learning Algorithm Low-level features Slide$Credit:$Honglak$Lee$ Audio$ classifica>on$ Audio$ LowTlevel$ audio$features$ Speaker$ iden>fica>on$ Image$ LowTlevel$ vision$features$ Recogni>on$ Object$ detec>on$ Input Data Learning Algorithm Low-level features Slide$Credit:$Honglak$Lee$ Audio$ classifica>on$ Audio$ LowTlevel$ audio$features$ Speaker$ iden>fica>on$ Image$ LowTlevel$ vision$features$ Recogni>on$ Object$ detec>on$ Input Data Learning Algorithm Low-level features Slide$Credit:$Honglak$Lee$ Audio$ classifica>on$ Audio$ LowTlevel$ audio$features$ Speaker$ iden>fica>on$ 物体認識 低次元画像特徴認識 Image$ LowTlevel$ vision$features$ Recogni>on$ Object$ detec>on$ Input Data Learning Algorithm Low-level features Slide$Credit:$Honglak$Lee$ Audio$ classifica>on$ Audio$ LowTlevel$ audio$features$ Speaker$ iden>fica>on$ Image$ LowTlevel$ vision$features$ Recogni>on$ Object$ detec>on$ Input Data Learning Algorithm Low-level features Slide$Credit:$Honglak$Lee$ Audio$ classifica>on$ Audio$ LowTlevel$ audio$features$ Speaker$ iden>fica>on$ Image$ LowTlevel$ vision$features$ Recogni>on$ Object$ detec>on$ Input Data Learning Algorithm Low-level features Slide$Credit:$Honglak$Lee$ Audio$ classifica>on$ Audio$ LowTlevel$ audio$features$ Speaker$ iden>fica>on$ 話者同定 低次元音声特徴同定 slide credit: Honglak Lee
  13. 13. 画像特徴量 13 Computer$vision$features$ SIFT$ Spin$image$ HoG$ RIFT$ Textons$ GLOH$ Slide$Credit:$Honglak$Lee$
  14. 14. 音声特徴量 14 Audio$features$ Spectrogram$ MFCC$ Flux$ ZCR$ Rolloff$
  15. 15. 画像認識 Krizhevsky+ NIPS’12 • デモ:http://deeplearning.cs.toronto.edu/ Figure 4: (Left) Eight ILSVRC-2010 test images and the five labels considered The correct label is written under each image, and the probability assigned 15
  16. 16. 類似画像検索 16 images and the five labels considered most probable by our model. and the probability assigned to the correct label is also shown Right) Five ILSVRC-2010 test images in the first column. The Krizhevsky+ NIPS’12 今は20層の深層学習 by Google!
  17. 17. 衛星写真から道の推定 17 Predic>ng$Roads$from$ Satellite$Images$ (Mnih$and$Hinton, ICML 2012)!
  18. 18. 衛星写真から道の推定 18 Predic>ng$Roads$from$ Satellite$Images$ (Mnih$and$Hinton, ICML 2012)!
  19. 19. アナロジー問題 • 単語の意味をどのように表すか • 他の単語との共起頻度を要素とするベクトルで表す • 分布説 • 単語の意味はその周辺単語で決まる • 単語の意味表現学習する問題を「ある単語の周辺 に出現する他の単語を推定する」問題として解釈す る. • v(king) - v(man) + v(woman) が v(queen)と似ている! 19
  20. 20. 理論
  21. 21. 深層学習の歴史 • ニューラル・ネットワークは1950年代から あった • 一層のニューラル・ネットワークでは線で分 類できるものしか認識できない • ミンスキー 1960年ころ 21
  22. 22. パーセプトロン • Perceptronは単一層からなるニューラル・ネットワークである 22 x1 x2 x3 xn + … w1 w2 wn wn
  23. 23. パーセプトロン • Perceptronは単一層からなるニューラル・ネットワークである 23 x1 x2 x3 xn + … w1 w2 wn wn s = x1w1 + x2w2 + … + xnwn if s > 0: return 1 else: return 0 ロジスティクス関数 1.5 1 0.5 -2.4 -2 -1.6 -1.2 -0.8 -0.4 0 0.4 0.8 1.2 1.6 2 2.4 -0.5 -1 -1.5
  24. 24. 線型分離可能性とは 24 + + + + + + + - - - - - - - - - - - - 2次元では線ですが,多次元だと平面となる. ax + by +c = 0
  25. 25. 線型分離不可能な問題 25 XOR (排他的論理和) x=0 x=1 y=0 0 1 y=1 1 0 x y - + - + + - - - - - - - + + + + + +
  26. 26. 線型分離不可能な問題 26 XOR (排他的論理和) x=0 x=1 y=0 0 1 y=1 1 0 x y - + - + + - - - - - - - + + + + + +
  27. 27. 線型分離不可能な問題 27 XOR (排他的論理和) x=0 x=1 y=0 0 1 y=1 1 0 x y - + - + + - - - - - - - + + + + + +
  28. 28. 線型分離不可能な問題 28 XOR (排他的論理和) x=0 x=1 y=0 0 1 y=1 1 0 x y - + - + + - - - - - - - + + + + + + どう頑張っても線を引いて分離不可能!
  29. 29. そんな単純なこともできないの? • XORは至るところで現るロジック • そんな単純なものも表現できないなら何の約にも立たない • 複数の層にすれば扱えるが重みの学習をどうして良いか 分からない • error backpropagation (誤差逆伝播法)が1980年代に考案 され,使われる • しかし,複数層で学習すると「過学習になりやすい」し遅い. そんなに沢山のパラメータが学習できるほどデータがない. • ニューラル・ネットワークの暗黒時代 29
  30. 30. 過学習 (over-fitting) • 学習データに当てはめすぎて,汎化できなくなる現象 • 学習時:高精度,テスト時:低精度 • 原因 • モデルの自由度が高すぎる • 学習データの量が少なすぎる 30
  31. 31. 過学習 31 Non-linearities: Why they’re needed 同じ10個の点を多項式 を使って説明する場合 (多項式を当てはまる場合) できるだけ小さい次元の多項式 を使った方が過学習になり難い. !問題は次元数よりも, 特徴の値の変化である. !オッカムのカミソリ 同じ現象を説明するならより 簡単な仮説の方が望ましい For$logis>c$regression:$map$to$probabili>es$ Here:$func>on$approxima>on,$$ g.,$regression$or$classifica>on$ Without$non;lineari>es,$deep$neural$networks$ can’t$do$anything$more$than$a$linear$transform$ • Extra$layers$could$just$be$compiled$down$into$ a$single$linear$transform$ Probabilis>c$interpreta>on$unnecessary$except$in$ the$Boltzmann$machine/graphical$models$ • People$oen$use$other$non;lineari>es,$such$as$ tanh,$as$we’ll$discuss$in$part$3$
  32. 32. 深層学習の長点 • 特徴を自分で考えなくて良い,基本特徴量さえ 作成しておけば,その有効な組み合わせが自動 的に学習できる. • ラベル無しのデータからでもこの「有効な組 み合わせ」が学習可能 • 大域的な表現が可能 (distributed representations) • 深層学習(大域的な表現学習)vs. クラスタリ ング(局所的な表現学習) 32
  33. 33. 局所的 vs. 大域的表現 33 Local$vs.$Distributed$Representa>ons$ • $Clustering,$Nearest$ Neighbors,$RBF$SVM,$local$ density$es>mators$$$ Learned$ prototypes$ Local$regions$ • $RBMs,$Factor$models,$ PCA,$Sparse$Coding,$ Deep$models$ C1=1$ C1=0$ C2=1$ C1=1$ C2=1$ C2=0$ C1=0$ C2=0$ C1$ C2$ C3$ • $Parameters$for$each$region.$ • $#$of$regions$is$linear$with$$$$$$$ $$#$of$parameters.$ Bengio, 2009, Foundations and Trends in Machine Learning! slide credit: Salakhutdinov KDD’14
  34. 34. 局所的 vs. 大域的表現 Local$vs.$Distributed$Representa>ons$ • $Clustering,$Nearest$ Neighbors,$RBF$SVM,$local$ density$es>mators$$$ slide credit: Salakhutdinov KDD’14 34 Learned$ prototypes$ Local$regions$ C1=1$ C3=0$ C1=0$ C3=0$ C3=0$ C2=1$ C1=1$ C2=1$ C2=0$ C1=0$ C2=0$ C3=0$ C1=1$ C2=1$ C3=1$ C1=0$ C2=1$ C3=1$ C1=0$ C2=0$ C3=1$ • $RBMs,$Factor$models,$ PCA,$Sparse$Coding,$ Deep$models$ • $Parameters$for$each$region.$ • $#$of$regions$is$linear$with$$$$$$$ $$#$of$parameters.$ C1$ C2$ C3$ Bengio, 2009, Foundations and Trends in Machine Learning!
  35. 35. 深層学習の大発見! • 層を重ねることでより表現豊なニューラル・ ネットワークが学習できることが分かってい たが,いかに過学習を避けるかが課題だった • 貪欲法(greedy layer-wise training) • 2つの層だけで学習を行い,そのように学習 させた2つずつの層を重ねるとよい! • A Fast Learning Algorithm for Deep Belief Nets, Hinton et al., Neural Computing, 2006. 35
  36. 36. Layer-wise Unsupervised Learning input … 40!
  37. 37. Layer-Wise Unsupervised Pre-training … … features input 41!
  38. 38. Layer-Wise Unsupervised Pre-training … of input = … … reconstruction features input ? … input 42!
  39. 39. Layer-Wise Unsupervised Pre-training … … features input 43!
  40. 40. Layer-Wise Unsupervised Pre-training More abstract … … … features features input 44!
  41. 41. Layer-Wise Unsupervised Pre-training Layer-wise Unsupervised Learning reconstruction of features = More abstract … … … features features input ? …… … 45!
  42. 42. Layer-Wise Unsupervised Pre-training More abstract … … … features features input 46!
  43. 43. 教師なし事前学習 (unsupervised pre-training) Layer-wise Unsupervised Learning More abstract … … … features features input … Even more abstract features 47!
  44. 44. 教師有り事後学習(supervised post-training) Supervised Fine-Tuning More abstract … … … features features input … Even more abstract features Output f(X) six ? Target = Y two! • AddiMonal!hypothesis:!features!good!for!P(x)!good!for!P(y|x)! 48! slide credit: Bengio KDD 2014
  45. 45. 深層学習手法 • 大きく分けて2種類の有名な手法がある • 自己符号化器 (Autoencoders AE) • 数学が簡単 • 実装が簡単 • 理論的な解析がし難い • 制限ボルツマンマシン(Restricted Boltzman Machine RBM) • 確率モデルに基づく • 一部の条件ではAEと同じ最適化を行っている 45
  46. 46. 深層学習手法 • 大きく分けて2種類の有名な手法がある • 自己符号化器 (Autoencoders AE) • 数学が簡単 • 実装が簡単 • 理論的な解析がし難い • 制限ボルツマンマシン(Restricted Boltzman Machine RBM) • 確率モデルに基づく • 一部の条件ではAEと同じ最適化を行っている 46
  47. 47. 自己符号化器 Autoencoder 47 特徴表現 入力 Encoder (符号化器) Decoder (復号化器)
  48. 48. 自己符号化器 Autoencoder 48 特徴表現 入力 y = f(Wx + b) Encoder (符号化器) Decoder (復号化器) y x z = f(WTy+ b’) 誤差=||x-z||2
  49. 49. 自己符号化器 49 隠れ層 y1 y2 y3 +1 x1 x2 x3 +1 入力層
  50. 50. 自己符号化器 50 隠れ層 y1 y2 y3 +1 x1 x2 x3 +1 入力層 wij : xj —> yi b3 W32 符号化器の部分
  51. 51. 詳細 • 復号化器の行列W’は符号化器の行列Wの転置とすること で学習すべきパラメータ数を減らす • bとb’はバイヤス項と呼ばれており,入力の値がどの基 本レベルを中心に変動しているかを表わしている. • 常にONとなっている(+1)特徴が存在すると仮定し,それ に対する重みとしてバイヤスを解釈することができる. • 関数fはそれぞれの次元毎に何らかの非線形な演算を 行っている.これがなければ主成分分析(PCA)と同じ く,線形な関係しか扱うことができない! 51
  52. 52. 基本的な流れ 1. 入力xを符号化器で符号化する. 1. Wx + bを計算し,それをfに入力する 2. (1)の出力yを復号化器に入力させて,入力を再現する. 1. WTy+ b’を計算し,それをfに入力する 3. (2)の結果zと元の入力xを比較する. 1. 誤差関数を問題依存する.実数特徴ならば自乗誤差,バイナリな らば交差エントロピー誤差を使う. 4. (3)の誤差を最小となるようにパラメータ(W, b, b’)を調整する. 1. 誤差をパラメータで微分し,それをゼロとなるようなパラメータ 値を求める.(確率的勾配法) 52
  53. 53. 確率的勾配法 • 英語:Stochastic Gradient Descent (SGD) • 誤差が最小となる方向(勾配と逆向き)へ少しずつ移動する 53 x(t+1) = x(t)

×