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.

画像認識のための深層学習

44,849 views

Published on

ゼミで発表した資料
ディープラーニングの中の一つのアプローチである畳み込みニューラルネットについての説明です

参考
岡谷 貴之(2013)「画像認識のための深層学習」『人工知能学会誌』28巻6号(2013年11月号)962pp

Published in: Technology
  • Be the first to comment

画像認識のための深層学習

  1. 1. 20140702 画像認識のための深層学習 ー深層学習の応用とCNNの基礎 長崎県立大学 国際情報学部 情報メディア学科 B2211017 片渕 小夜
  2. 2. 目次  Hinton(‘06)の手法-事前学習  DBMの学習に用いられる3つの方法  画像認識に適した方法  畳み込みニューラルネットワークとは  畳み込み層とプーリング層の構造  畳み込み層  局所受容野構造  プーリング層  次週
  3. 3. Hinton(‘06)の手法-事前学習  DBMはその多層構造がミソになる しかし,層が増えていくと過学習が避けられないとされる 過学習: 教師データに対してはよく学習できているが,その他の未知データに対しては学習がで きていないこと  学習を進める前に事前学習を進めてボルツマンマシンのノード,リンクの重み を初期値を定めておく 事前学習: 貪欲学習を用いる場合,多層に重なったRBMを1層ずつ切り離して学習を行い,両層の 間のリンクを学習した→前回のスライドを参照 過学習を回避,DBMを上手く学習する
  4. 4. DBMの学習に用いられる3つの方法 1. ドロップアウト,識別的プレトレーニング ドロップアウト: 隠れ層に存在するパラメータの一部を使わずに,入力データ毎にランダムに選別して学 習を行う. 識別的プレトレーニング: 層の浅い方向から深い方向へ,どんどん層を足しながら教師なし学習を重ねていく 2. 畳み込みニューラルネットワーク(CNN):後述 3. 学習サンプルのデータ数を増加させるようなデータ拡張 画像の場合,微小な変形(平行移動・回転・鏡像反転)を加える事で,限られた学習サン プルの数を水増しする
  5. 5. DBMを用いて画像認識の精度を上げた例  2012年6月,スタンフォード大のLeらが畳み込みニューラルネットワークを用 いて「おばあさん細胞」の再現に成功 おばあさん細胞: 特定の物体(画像)に選択的に反応するニューロン 9層のDBMを構築 学習データはYoutubeの動画からほぼ無作為に切り出した画像1000万枚
  6. 6. 画像認識に適した方法 音声認識の場合、1番目の方法が主流 しかし、画像認識では2番目の畳み込みニューラルネットワーク(CNN)が圧倒的な 存在感を持つ
  7. 7. 畳み込みニューラルネットワーク (CNN)とは  畳み込み層とプーリング層と呼ばれる2種類の層を交互に積み重ねた構造をも つ多層NN 畳み込み層: 画像上の各位置ごとに特徴抽出を行う(フィルタ処理) プーリング層(部分サンプリング層): 局所的な平行移動に対して不変な出力を行う  CNNは通常、多層であっても事前学習を必要とせず、最初から教師なし学習を 行うことができるが、現時点では教師なし学習は必須ではない  CNNの教師あり学習が高い評価を受けている
  8. 8. 畳み込み層とプーリング層の構造 𝐶1 𝑃1 𝑃2𝐶2 𝐹 𝐶1, 𝐶2: 畳み込み層の計算 𝑃1, 𝑃2: プーリング層の計算 2種類の計算を交互に行い、最終層に分類クラス数と同数のユニットをおいて、 直前のプーリングの結果を出力する層との間を、全結合ネットワークFで結ぶ
  9. 9. ある層において、𝑗番目のユニットにその直前の層の出力𝑦𝑖 𝑖 = 1, ⋯ , 𝑚 の重み付 き和にバイアスが加算された 𝑥𝑗 = 𝑏𝑗 + 𝑦𝑖 𝜔𝑖𝑗 𝑚 𝑖=1 が入力される この𝑥𝑗を活性化関数と呼ばれる非線形関数に入力したときの応答 𝑦𝑗 = 𝑓(𝑥𝑗) がこのユニットの出力になり、次の層のユニットに入力される 活性化関数: シグモイド関数や𝑓 𝑥𝑗 = max(𝑥𝑗, 0)といった関数がよくつかわれる 特に後者を採用したユニットをrectified linear unit(ReLU)と呼び、近年よく使用されている 収束性や学習速度の向上に貢献している
  10. 10. また、画像のクラス分類が目的の場合は、一番最後の出力に目的のクラス数と同 数のユニットn個を配置し、これらへのユニットへの入力𝑥𝑗(𝑗 = 1, ⋯ , 𝑛)を活性化 関数ではなく多項ロジスティック関数(もしくはソフトマックス関数) 𝑝𝑗 = 𝑒 𝑥 𝑗 𝑒 𝑥 𝑘𝑛 𝑘=1 ( 𝑝𝑗 = 1𝑛 𝑘=1 になる) を用いて出力とする 認識実行時には𝑝𝑗が最大値をとるユニットのインデックス𝑗 = 𝑎𝑟𝑔𝑚𝑎𝑥 𝑗 𝑝𝑗を推定ク ラスとする
  11. 11. 畳み込み層 入力される画像は𝑁枚 以降チャネルと呼ぶ ,サイズは𝑊 ∗ 𝑊 →以下ではこれをW*W*Nと表記する チャネル数は画像がグレースケールのときN=1 ,RGBカラー画像ではN=3になる W*W*Nの入力を𝑦𝑖𝑗𝑘( 𝑖, 𝑗, 𝑘 ∈ 1, 𝑊 , 1, 𝑊 , [1, 𝑁]と表記する. 𝑊 𝑊 ⋯ 𝑁 𝑦𝑖𝑗𝑘
  12. 12. 畳み込み層 畳み込み層では入力𝑦𝑖𝑗𝑘にフィルタを畳み込む計算を行う. 小サイズの画像を入力画像に二次元的に畳み込んで画像をぼかしたり(ガウシアン フィルタ) ,エッジを強調したり(鮮鋭化フィルタ)する処理と同じ フィルタは𝜔 ∗ 𝜔サイズで,入力画像のチャネルと同じ枚数用意する. このフィルタをℎ𝑖𝑗𝑘( 𝑖, 𝑗, 𝑘 ∈ 1, 𝜔 , 1, 𝜔 , 1, 𝑁 )と表記する. 𝑊 𝑊 ⋯ 𝑁 𝑦𝑖𝑗𝑘 * ⋯ 𝜔 𝜔 𝑁 ℎ𝑖𝑗𝑘
  13. 13. 通常は𝜔 ∗ 𝜔サイズの二次元フィルタを畳み込み,その結果を𝑁チャネルに渡って 加算していくのが一般的である この計算の結果は1チャネル分の出力となり,これを𝑥𝑖𝑗と書くと 𝑥𝑖𝑗 = 𝑦𝑖+𝑝,𝑗+𝑞,𝑘ℎ 𝑝𝑞𝑘 𝜔 𝑞=1 𝜔 𝑝=1 + 𝑏 𝑘 𝑁 𝑘=1 のように計算される. ・𝑏 𝑘はバイアスで,各チャネル𝑘ごとに全出力ユニット 𝑖, 𝑗 間で共通とする 𝑊 𝑊 ⋯ 𝑁 𝑦𝑖𝑗𝑘 * ⋯ 𝜔 𝜔 𝑁 ℎ𝑖𝑗𝑘 𝑥𝑖𝑗
  14. 14. 𝑥𝑖𝑗は,その後活性化関数𝑓(∙)を経て,畳み込み層の出力 𝑦𝑖𝑗 = 𝑓(𝑥𝑖𝑗) となる. 1つのフィルタℎ𝑖𝑗𝑘につき,縦横サイズが同じW*Wサイズの1チャネル分の出力 𝑦𝑖𝑗を得る. この計算をチャネル分行うことで,フィルタを畳み込んだ画像が生成できる.
  15. 15. 局所受容野構造 以上の計算は,DBMの構造を持つネットワークとしても表現できる 第2層(左)の各ユニットは,第1層(右)のユニットの一部とのみ結合する →受容野が局所的である 結合の重みは各ユニット間で共通である →共有重み 学習ではこのユニット間の重みと,出力ユニットのバイアスを決定する
  16. 16. プーリング層  基本的には畳み込み層の出力がプーリング層の入力となる→入力はW*W*N 画像のどの位置でフィルタの応答が強かったかという情報を一部捨てる事で,画 像内に現れる特徴の微小な位置変化に対する応答の不変性を実現する 小領域𝑃𝑖𝑗について,小領域内部のユニット 𝑝, 𝑞 𝜖𝑃𝑖𝑗の出力𝑦𝑝𝑞を集約し1つの出力 とする  複数チャネル存在する場合,チャネルごとに分けて処理する  プーリング処理は,画像のx,y方向に間引いて行う (画素を間引く間隔を1から2にすると画像は2分の1になる)
  17. 17. 受容野𝑃𝑖𝑗内のユニットの出力をまとめる方法は2つある 1. 平均プーリング(average pooling): 𝑃𝑖𝑗内のユニットの出力の平均 𝑦𝑖𝑗𝑘 = 1 𝑃𝑖𝑗 𝑦 𝑝𝑞𝑘 𝑃 (𝑝,𝑞)∈𝑃 𝑖𝑗 2. 最大プーリング(max pooling): 𝑃𝑖𝑗内のユニットの出力の最大値 𝑦𝑖𝑗𝑘 = max (𝑝,𝑞)∈𝑃 𝑖𝑗 𝑦𝑖𝑗𝑘 3. Lpプーリング:上2つの中間的存在 𝑦𝑖𝑗𝑘 = 1 𝑃𝑖𝑗 𝑦 𝑝𝑞𝑘 𝑃 (𝑝,𝑞)∈𝑃 𝑖𝑗 1 𝑃 CNN初期の研究では平均プーリングが主流だったが,現在は最大プーリングが一 般的になった
  18. 18. 次週  手書き文字認識でCNNを用いた例  CNNが何故高い認識率を誇るか
  19. 19. 20140709 画像認識のための深層学習 ーCNNの事例とその効果 長崎県立大学 国際情報学部 情報メディア学科 B2211017 片渕 小夜
  20. 20. 目次 1. 手書き文字認識におけるCNNの例 2. CNNの学習最適化 3. 局所コントラスト正規化 1. 減算正規化 2. 除算正規化 4. CNNは何故高い性能を示すのか? 1. 一般物体認識は何故難しいか 2. 従来のアプローチ-bug-of-features 3. bug-of-featuresとCNNの共通点 4. まとめ 5. CNNの本質とは何かー2層の繰り返し構造 6. CNNの課題
  21. 21. 手書き数字認識におけるCNNの例  MNISTと呼ばれる手書き数字のデータセットを用いて数字の認識を行う 1文字あたりの画像のサイズは32*32でチャネル数は1(グレースケール画像) これに11*11*1画素のフィルタ16個を畳み込み、ReLUを適用して、26*26*16の出力 を得る 1 26 26 16 32 32 (ⅵ) (ⅴ) 𝐶1
  22. 22. 次に、16ある26*26画素の各画像それぞれに3*3画素領域での最大プーリングを、 x,y方向ともにストライド間隔を2で適用し、画像のサイズを2分の1にする 結果13*13*16の出力が得られる 1 26 26 13 13 16 16 32 32 (ⅵ) (ⅴ) (ⅳ) 𝐶1 𝑃1
  23. 23. この結果にさらに5*5*16のフィルタを16種類畳み込み,ReLUを適用して13*13*16 の出力を得る そして第1段𝑃1と同じパラメータのプーリングを適用して6*6*16の出力を得る 1 26 26 13 13 16 13 13 16 6 6 16 16 32 32 (ⅵ) (ⅴ) (ⅳ) (ⅲ) (ⅱ) 𝐶1 𝑃1 𝑃2𝐶2 𝐹
  24. 24. 最後に6*6*16=576の出力を最上位の出力層の10個のユニット[0,1,…,9]と全結合し [0,1]の範囲の値を取り和が1となる10個の出力を得る 1 26 26 13 13 16 13 13 16 6 6 16 16 32 32 (ⅵ) (ⅰ) (ⅴ) (ⅳ) (ⅲ) (ⅱ) 𝐶1 𝑃1 𝑃2𝐶2 𝐹
  25. 25. CNNの学習最適化  CNNの学習はラベル付き学習サンプル集合を対象に,各サンプルの分類誤差を 最小化することで行う 分類誤差:入力サンプルに対する理想的な出力𝑑1, ⋯ , 𝑑 𝑛と実際の出力𝑝1, ⋯ , 𝑝 𝑛の乖離を 交差エントロピー 𝐶 = − 𝑑𝑗 𝑙𝑜𝑔𝑝𝑗 𝑛 𝑗=1 によって測る 目標出力𝑑1, ⋯ , 𝑑 𝑛は正解クラスjのみ𝑑𝑗 = 1となり,それ以外の全k(≠j)では𝑑 𝑘 = 0となるようにすればよい Cが小さくなるように各畳み込み層のフィルタ係数および各ユニットのバイアス,全結 合層の重みとバイアスを調整する
  26. 26.  誤差逆伝播法(BP法) 学習データが与えられた時,ニューラルネットワークの出力が学習データと一致するよ うにニューラルネットワークのノードやリンクの重みを調整する方法 CNNは構造が特殊であるが通常のNNと同じように計算して構わないが,最大プーリン グを用いた時は,少領域内の最大ユニットと次の層のユニットが結合しているかのよう に扱わなければならない  確率的勾配降下法 誤差Cは全学習サンプルについて評価すると計算量が膨大になり,また結果の収束性の 観点からもよろしくないので通常は数個~数百個のサンプル集合(ミニバッチ)に対して 評価する 重みやバイアスの修正についてはmomentum項(前回修正した量のα(~0.9)倍),重 みが過大に大きくならないようにする重み減衰項(weight decay)を加え ∆𝜔𝑖𝑗 (𝑡) = −𝜀 𝜕𝐶 𝜕𝜔𝑖𝑗 𝑡 + 𝛼∆𝜔𝑖𝑗 𝑡−1 − 𝜀𝜆𝜔𝑖𝑗 (𝑡) ∆𝜔𝑖𝑗 (𝑡) :今回の重み更新時の修正量 ∆𝜔𝑖𝑗 𝑡−1 :前回の重み修正量 のように修正を行う
  27. 27. 局所コントラスト正規化  画像認識において,入力画像に対しある種の正規化を行うのが普通である 入力画像から学習サンプルの平均を引く(Krizhevsky) 入力画像だけでなく,CNNの途中経過を対象に行う場合もある →局所コントラスト正規化
  28. 28. 畳み込み層・プーリング層の出力を𝑦𝑖𝑗𝑘とし,kは1つのチャネルを指す ある画素(i,j)の周囲の小領域について、全チャネルにわたる平均を求めてこれを差 し引く処理 𝑦 𝑖𝑗𝑘 = 𝑦𝑖𝑗𝑘 − 𝜔 𝑝𝑞 𝑦𝑖+𝑝,𝑗+𝑞,𝑘 𝑝𝑞𝑘 を減算正規化という.𝜔 𝑝𝑞は 𝜔 𝑝𝑞 = 1𝑝𝑞𝑘 となる重みである 同近傍および全チャネル(k=1,…)にわたる𝑦 𝑖𝑗𝑘の重み付き平均は0になる 減算正規化
  29. 29. 平均を求めた同じ領域𝑦𝑖𝑗𝑘に対し,標準偏差 𝜎𝑖𝑗 = 𝜔 𝑝𝑞 𝑦 𝑖+𝑝,𝑗+𝑞,𝑘 2 𝑝𝑞𝑘 を求め, 𝑦𝑖𝑗𝑘をこの標準偏差で割る処理 𝑦 𝑖𝑗𝑘 = 𝑦 𝑖𝑗𝑘 max(𝑐, 𝜎𝑖𝑗) を除算正規化と呼ぶ (分母のmax関数を無視すれば)画像上の近傍の全フィルタ出力の分散を1とする操作 この𝑦𝑖𝑗𝑘→𝑦 𝑖𝑗𝑘→𝑦 𝑖𝑗𝑘の一連の流れ全体を局所コントラスト正規化と呼ぶ 除算正規化 ※max関数があるので,定数cの値に応じてコントラストが小さいと正規化がされない
  30. 30.  入力画像のコントラストに依存せず,応答出力が飽和しても特定周期・方向の 縞模様に選択的に反応する →ニューロンの応答の強さには上限がある 大きなダイナミックレンジをもつ入力が あっても適切なゲイン調整ができる 局所コントラスト正規化は自然画像統計とも深い繋がりがある  教師なし学習では学習サンプル集合に対する正規化が行われる  白色化:データの共分散行列が単位行列となるような変換  入力が連続値をとる場合のRBM(Gaussinan-Bernoulli RBM)で,学習サンプルを想定す る確率モデルに見合った分布を持つように平均と分散が補正される いくつかの画像認識のDBMでこのモデルがそのまま取り込まれている
  31. 31. CNNはなぜ高い性能を示すのか? (1)一般物体認識は何故難しいか 「弁別力」 画像の違いに関する 敏感さ 「不変性」 画像の違いに関する 鈍感さ 同一カテゴリー内の見えの変動が非常に大きい →画像から変動に不変な特徴を取り出す必要がある 弁別力・不変性という相反する目標をいかに両立できるか?
  32. 32. CNNはなぜ高い性能を示すのか? (2)従来のアプローチーbug-of-features  Bug-of-wordsモデル テキストマイニングにおける手法で,文章に含まれる単語を数値化する 迷惑メールの振り分けにも応用(迷惑メールに含まれる単語を解析) 「ねこが私を引っ掻いた」→{ねこ,が,私,を,引っ掻い,た} {ねこ,が,私,を,引っ掻い,た} = {私,が,ねこ,を,引っ掻い,た} →これを取り入れたbug-of-featuresが提案され,画像認識分野でも大きな関心 以降bug-of-featuresについて説明 1. 局所特徴量抽出 2. 符号化 3. プーリング
  33. 33. 1. 局所特徴量抽出 SIFT:関心のある点周りの局所西方領域内で,濃淡勾配を細かい格子状点でサンプルし, それを部分ブロックごとにまとめて勾配のヒストグラムを作る 入力画像 局所特徴抽出 符号化 (visual word) グローバルな特徴
  34. 34. • 各ブロック内の4*4のサンプル点で濃淡の勾配強度・方向を求める • 8方向に量子化され,各ブロックごとに8方向のヒストグラムにまとめられる • 2*2*8=32個の値からなる局所特徴を得る(実際は4*4のブロックに分割して128個の特徴を得る場合が多い)
  35. 35. 入力画像の局所領域に複数の フィルタを並列に適用 非線形処理 プーリング 局所特徴を抽出する基本的な流れ SIFTの場合 指向的エッジフィルタ を適用 エッジ等の特徴量を多 く含む部分を抽出 エッジの勾配を量子化 プーリング加算
  36. 36. 2. 符号化 visual word:特徴空間の代表点に各局所特徴を量子化 代表点は,予め画像中の多数の点から取り出した特徴量の集合に対しクラスタリングを 施した数千~数万個程度のクラスタ中心 従来:局所特徴は最近傍基準で選んだ特定のvisual word一つで置き換える 近年:特徴の近傍にあるvisual wordとの距離に応じてスコアを与える 入力画像 局所特徴抽出 符号化 (visual word) グローバルな特徴
  37. 37. 3. プーリング 符号化された画像の特徴をまとめて一つの大域特徴を作る 従来:visual wordの個数をカウント,ヒストグラム化 近年: pyramid match kernel:画像を機械的に縦横に分割,部分ブロック内でヒストグラム生 成 受容野学習:部分ブロックの適切な位置・形状を学習によって定める 入力画像 局所特徴抽出 符号化 (visual word) グローバルな特徴
  38. 38. bug-of-featuresが一般物体認識において成功した理由は プーリング処理において局所特徴の位置情報(またはその形)を捨てたこと →見た目変動に対する不変性の観点から大いに貢献 しかし弁別性については局所特徴に依存するところが大きく,限界があった
  39. 39. CNNはなぜ高い性能を示すのか? (3)bug-of-featuresとCNNの共通点  局所特徴抽出 抽出プロセスは先ほど説明した「一般的な局所特徴を抽出する流れ」と同じ →CNNの畳み込み層・プーリング層の計算と同じ ただし最初に適用するフィルタは,CNNでは学習によって決められる CNNの学習によって求められるフィルタはガボールフィルタと類似 ガボールフィルタ:一次元コサイン波と二次元ガウス関数の積で構成, 画像中の濃淡の局所的な空間周波数成分を取り出すことができる
  40. 40. CNNはなぜ高い性能を示すのか? (3)bug-of-featuresとCNNの共通点  プーリング CNNのプーリング層での計算と同じ 従来プーリングの受容野は画像全体、あるいは4分割、8分割したものとかなり大きめ CNNでは畳み込み層の出力に対する受容野はとても小さい →プーリングを何回か繰り返した後の上位ユニット1つが,遡って入力画像上にもつ受 容野を計算すると従来と同程度になる
  41. 41. CNNはなぜ高い性能を示すのか? (4)まとめ 従来法で入力画像から大域特徴を抽出する フィルタによる特徴抽出を1回行い、その後プーリングを2回行う浅いCNN CNNが畳み込み層とプーリング層の演算を繰り返し行う回数とCNNの性能は ※ 比例する 従来法ではCNNにおける下位層(局所特徴)を工学的に設計することができたが, CNNが見つけだす中~上位層の特徴を設計することができなかった ※それに伴う自由度に見合う学習サンプルと学習のコストが許容できる事が条件
  42. 42. CNNの本質とは何か ー2層の繰り返し構造  CNNの本質はズバリ「畳み込み層とプーリング層の繰り返し構造」 CNNの従来法に対する差として上記の繰り返し構造と特徴を学習できることがある  (学習サンプル数が少ない場合)畳み込み層のフィルタをランダムなものにし, 出力段の全結合層のみ学習した場合でも高い認識率 →最終的な認識性能はフィルタを学習するかどうかよりも,ネットワークの構造に大き く左右される  サンプル数を十分に確保したうえでフィルタを学習するのが現実的 更に精度の向上を図る場合は,試行錯誤的にネットワークの構造を最適化する ランダムフィルタを使ってこの作業の手間を軽減,CNNの構造にマッチしたものを選び, 学習する
  43. 43. CNNの課題  なぜ2種の層を繰り返す構造が有効なのかわかっていない  更なる精度向上  複雑な変化に対する不変性の自由度を高める  TICA(トポグラフィック独立成分分析):互いに類似した異なるフィルタの複数の出 力をプーリングする構造
  44. 44. 次週  画像特徴の教師なし学習について  DBMにおける特徴学習  論文のまとめ
  45. 45. 20140716 画像認識のための深層学習 ー教師なし学習と論文まとめ 長崎県立大学 国際情報学部 情報メディア学科 B2211017 片渕 小夜
  46. 46. 目次 1. 画像特徴の教師なし学習  スパースオートエンコーダ  スパース正則化の有無による違い 2. DBMでの特徴学習  畳み込みディープビリーフネット(CDBN)  再構成型TICA  トポグラフィック独立成分分析(TICA)  TICAとCNNの違い 3. 論文まとめ
  47. 47. 画像特徴の教師なし学習  教師なし学習 「出力すべきデータ」が定まっていない学習.入力データに存在する本質的な特徴を得 るために使われる 画像特徴を得るための学習として教師なし学習が用いられる事がある →画像の局所領域(10*10程度の大きさ,以下パッチと呼ぶ)を自然画像から無作為かつ 大量に切り出し学習サンプルとする  スパースコーディング  トポグラフィック独立成分分析(TICA),再構成型TICA  スパースオートエンコーダ→後述  スパースRBM  K-meansクラスタリング,混合ガウス分布モデル(EMアルゴリズム):パッチ集合を 白色化したときのみ
  48. 48. スパースオートエンコーダ [準備]パッチの画素数と同数のユニットを持つ入力層と,適当な規模の出力層から なる単層NNを考える. 層間のユニットは全結合とし,入力xに対し出力ℎ 𝑥 = 𝑓(𝑊𝑥 + 𝑏)を計算する 入力層 出力層
  49. 49.  オートエンコーダ この単層NNについて,順方向とは逆の伝播𝑥 𝑥 = 𝑓(𝑊ℎ 𝑥 + 𝑏)を仮想的に考える パッチの集合{𝑥𝑖}に対し,個々のサンプル𝑥𝑖を入力したときのオートエンコーダの出力 𝑥 𝑥 が入力した𝑥𝑖そのものになるべく近くなるようにネットワークの重みとバイアスを 決める  スパースオートエンコーダ 上述の処理にスパース正則化を加えたもの.単層NNの出力層(=オートエンコーダの中 間層)のユニットが,入力サンプルごとになるべくまだらに活性化するように制約する スパース:sparse(疎,スカスカ) 𝑚𝑖𝑛 1 𝑁 𝑥𝑖 − 𝑥(𝑥𝑖) 2 + 𝛽 𝐾𝐿(𝜌𝑗 #𝑜𝑓 𝑢𝑛𝑖𝑡𝑠 𝐽=1 𝑁 𝑖=1 ||𝜌) を最小化することで達成される. KL情報量を用いた第2項はよく使われるスパース正則化項で、𝜌𝑗は全学習サンプルにわ たるユニットjの平均活性度で,𝜌は平均活性度の目標値である 𝜌に小さい値を選ぶと, 𝜌𝑗がこれに近くなるように学習が進む.
  50. 50. スパース正則化の有無による違い  一般物体認識のデータセットCIFER-10を用い た特徴学習の例 図はWの各行ベクトルを表示したもので,画像か ら切り出したパッチを白色化して学習を行ってい る.
  51. 51. DBMでの特徴学習  全結合型のネットワークを何層か積み上げて多層化し,同様に教師なしで特徴 学習を行う  Leeらの報告:スパースRBMを2個積み上げた形のDBNの学習により,コーナ(角)や ジャンクション状の画像特徴を取り出すことができた  Salakhutdinovらの手法:RBMを2,3個積み上げたDBMを使って特徴学習を行い(事前 学習),順伝播NNを教師あり学習し、MNISTやNORBに対し2009年当時最高水準の認 識性能を達成した どれも積み上げた2,3個程度とネットワークが少なく,多層性の効果を 示したとは言い難い 全結合層を単純に積み上げたDBMを使った教師なし特徴学習では 画期的な成果を得たとは言えない
  52. 52. 畳み込みディープビリーフネット(CDBN)  CNN同様畳み込み層とプーリング層の口語の積み重ね構造を持つネットワークをボ ルツマンマシンとして記述 畳み込み層はユニット間結合が疎,ユニット間で重みを共有する形の特殊なRBM  スパース正則化が適用される  プーリング層の演算には各ユニットの振る舞いを確率的に記述する確率的最大プー リングというモデルを導入  畳み込み層,プーリング層を最大3段重ねたモデルで自然画像を学習したところ、 階層的な特徴が学習された Cf.人の顔 第一層:ガボールフィルタに類似した特徴 第二層:目や耳などの顔のパーツに相当するもの 第三層:顔全体を表す特徴
  53. 53. 再構成型TICA  局所受容野層・プーリング層・局所コントラスト正規化層の3つを1セットとし て3段積み重ねた9層構造のネットワークを構成  Youtubeから切り出した画像1000万枚を対象に教師なし学習を行った 局所受容野層:畳み込み層のフィルタが出力ユニットごとに異なるようなもの,CNNの 2つの要件である局所受容野と共有重みのうち前者だけを採用したもの
  54. 54. トポグラフィック独立成分分析(TICA) 入力層・局所受容野層・プーリング層の3層構造のNNを考える 第2層→第3層間はLpプーリングを行う(例えばp=2の場合はL2プーリングとなる) その上で第3層のプーリング層でのユニットがまだらに活性化するように制約しつ つ,第1層と第2層間の重み(局所受容野の結合)を最適化する 最適化するときの目的関数は第1層→第2層→第1層と伝播したときの再現誤差に正 則化項を加えたもの 第2層上で空間位置が近いユニットは自動的に類似した特徴 を学習するようになる
  55. 55. TICAとCNNの違い  CNN:フィルタ畳み込み・プーリングで並進移動に関する不変性を実現  TICA:入力画像の局所的な回転などに対し不変性を実現 第2層の隣接ユニットが互いに少しずつ違う特徴(例えば互いに少し回転したもの)を取 り出すようになった時
  56. 56. 論文まとめ  画像認識全般に対し畳み込みニューラルネットワーク(CNN)の教師なし学習が 有効  教師なし学習でも,画像の大域的な特徴を教師なし学習するときはやはりCNN の構造が必要  多層のCNN構造がなぜ有効なのかはまだわかっていない →DBMの多層構造がなぜ有効なのかわかってない  CNNの教師あり学習で学習される初期層の構造が(スパースオートエンコーダな どの)教師なし学習とほぼ一致するのはなぜなのか? →教師なし学習ではスパース正則化が行われ,一方の教師あり学習ではそのような正則 化は明らかには行われていない

×