SlideShare a Scribd company logo
名古屋CV・PRML勉強会 発表資料
Building High-level Features Using
Large Scale Unsupervised Learning
                    2012/10/20 takmin
はじめに
ILSVRC 2012
    大規模物体認識のコンテスト
    http://www.image-net.org/challenges/LSVRC/2012/
Classification                               Localization
       Team name              Error               Team name      Error
1      Super Vision           0.15315        1    Super Vision   0.335463
2      Super Vision          Deep LearningVision
                             0.16422 2 Super                     0.341905
3      ISI                    0.26172        3    OXFORD_VGG     0.500342
4      ISI                    0.26602        4    OXFORD_VGG     0.50139
5      ISI                    0.26646        5    OXFORD_VGG     0.522189
6      ISI                    0.26952        6    OXFORD_VGG     0.529482
7      OXFORD_VGG             0.26979        7    ISI            0.536474
8      XRCE/INRIA             0.27058        8    ISI            0.536546
Super Vision
   Our model is a large, deep convolutional neural
    network trained on raw RGB pixel values. The neural
    network, which has 60 million parameters and 650,000
    neurons, consists of five convolutional layers, some of
    which are followed by max-pooling layers, and three
    globally-connected layers with a final 1000-way softmax. It
    was trained on two NVIDIA GPUs for about a week. To
    make training faster, we used non-saturating neurons and
    a very efficient GPU implementation of convolutional nets.
    To reduce overfitting in the globally-connected layers we
    employed hidden-unit "dropout", a recently-developed
    regularization method that proved to be very effective.
ざわつくCVクラスタ
僕が抱いたイメージ




           Deep Learning




        機械学習屋


  CV屋
Deep Learningとは?
物体認識の流れ

 入力画像      特徴量抽出                機械学習




 入力画像         画像特徴             物体認識/検出
          (SIFT、HOG、etc)
        Hand-Crafted Feature
Deep Learning
   Hand-craftedな特徴量を
    用いず、特徴量を画素か
    ら統計的に学習する。
   低レベル特徴から高レベ
    ル特徴までの階層構造。
   低レベルな特徴ほど、
    様々なタスクで共有可能
   主な手法
       Deep Belief Networks
       Deep Bolzmann Machines
       Deep Neural Networks
           Super Vision

                                 (Image from Lee. H in CVPR2012 Tutorial)
本題
紹介する論文
   Building High-level Features Using Large Scale
    Unsupervised Learning
       International Conference on Machine Learning
        (ICML) 2012
           Quac V. Le (Stanford)
           Marc’ Aurelio Ranzato (Google)
           Rajat Monga (Google)
           Matthieu Devin (Google)
           Kai Chen (Google)
           Greg S. Corrado (Google)
           Jeff Dean (Google)
           Andrew Y. Ng (Stanford)
紹介する論文
   Building High-level Features Using Large Scale
    Unsupervised Learning
       ラベルがついていない画像だけを使って、特定
        の種類の物体に反応する、高レベルの特徴検出
        器を生成できないか?
         例:顔認識
         「おばあさんニューロン」
       Deep Learningは莫大な時間がかかる
           1000万枚の画像を16コアのマシン1000台で学習
       Deep Neural Network
結構話題になりました
   WIRED
       「猫を認識できるGoogleの巨大頭脳」
       http://wired.jp/2012/07/06/google-recognizes-kittens/

   RBB Today
       「Google、脳のシミュレーションで成果……猫を認識」
       http://www.rbbtoday.com/article/2012/06/27/90985.html

   IT Pro
       「Google、大規模人工ニューロンネットワークを用いた研究成
        果を紹介」
       http://itpro.nikkeibp.co.jp/article/NEWS/20120627/405501/
Architecture


                                                      Objects
      3rd layer




      2nd layer                                     Object
                                                    Parts
                  特徴との類似度

      1st layer                                 Low level
                                                Features


    入力画像(カラー)                特徴マップ

                            (Image from Lee. H in CVPR2012 Tutorial)
Architecture


      3rd layer




      2nd layer




      1st layer




    入力画像(カラー)

                  (Image from Lee. H in CVPR2012 Tutorial)
Architecture


      3rd layer

                                        正規化

      2nd layer
                                        普遍化


                                      特徴選択
      1st   layer
                                     入力ベクトル


    入力画像(カラー)

                    (Image from Lee. H in CVPR2012 Tutorial)
1st Sub Layer
   特徴選択

      h(x)  W x  T

     第1層   重み(疎)      入力ベクトル
     の出力
      位置毎に異なる重みを用いる(≠ 畳み込みNN)


    第1層                           ・・・

    入力                           ・・・
            特徴1            特徴2
2nd Sub Layer
   普遍化
       L2 Pooling


                              h
          ( i 1)                                     2
        h x, y                          (i )
                                         x u , y  v
                        ( u ,v )N ( x , y )
        第2層の
        出力


    第2層                                                   ・・・

    第1層
                                                          ・・・
                        特徴A                 特徴B
3rd Sub Layer
   正規化
       Local Constraint Normalization

               ( i 1)
                              h  (i )
                                         mN ( x , y )
                         
                                 x, y
            h
                                      N ( x, y )
               x, y
    第2層の出力

        mN ( x, y ) ,  N ( x, y )   : 周辺領域のガウス平均/分散

    第3層
                                                            ・・・
                                                         m, 
    第2層
                                                                ・・・
                              特徴A                   特徴B
学習
   教師ありニューラルネットワークの場合
            順伝播

                ( )   hn
      xn    W               E (h n , t n )
    学習データ   エンコード      出力     誤差関数


      tn
     教師信号
学習
   教師ありニューラルネットワークの場合
            逆伝播        En
                ( )   h
            W                E (h n , t n )
                       誤差の     誤差関数
                        勾配
学習
   教師ありニューラルネットワークの場合
                     逆伝播            En
                      En           h
                      W
                                          E (h n , t n )
                                    誤差の     誤差関数
                                     勾配



            ( 1)        ( )      En
        W            W          
                                    W
学習
   教師ありニューラルネットワークの場合
                     逆伝播            En
                         ( 1)     h
                     W                    E (h n , t n )
                                    誤差の     誤差関数
                                     勾配



            ( 1)        ( )      En
        W            W          
                                    W
学習
   教師なしニューラルネットワークの場合
            順伝播

                ( )   hn
      xn    W               E (h n , t n )
    学習データ   エンコード      出力     誤差関数




    × tn
     教師信号
学習
   教師なしニューラルネットワークの場合


              ( )   hn            ( )    xn
 xn       W  1               W     2
                                                 E (x n , xn )
学習データ     エンコード       出力      デコード                 誤差関数




        E (x n , x )  x  x n   h n
                               2
                  n      n

                     二乗和誤差           出力を疎にする
                                     ための正則化項
                                     (L1ノルム)
学習

         min x  x n   h n
                       2
              n
          w
               二乗和誤差        出力を疎にする
                            ための正則化項
                            (L1ノルム)

第2層
          h                ・・・
     H
第1層                               ・・・
     W
入力                               ・・・
         特徴1    x      特徴2
学習

          m                        k
                                                 T (i ) 2 
arg min   W2 W1 x  x             H j ( W1 x ) 
                 T (i )      2
                        (i )
                                                         
  W1W2  i 1                      j 1                   
                二乗和誤差                第2層の出力のL1ノルム


第2層
                h              ・・・
      H
第1層                                      ・・・
      W
 入力                                    ・・・
              特徴1     x      特徴2
学習
   各層の学習

         1st Layer   2nd Layer   3rd Layer

          エンコード

    誤差       学習


           デコード
学習
   各層の学習

      1st Layer        2nd Layer   3rd Layer

       エンコード            エンコード

                  誤差       学習


                         デコード
学習
   各層の学習

      1st Layer   2nd Layer        3rd Layer

       エンコード       エンコード           エンコード

                              誤差      学習


                                    デコード
学習環境
   学習データ
       YouTubeからランダムに1000万枚の画像を取得
       画像を200x200のサイズに調整(カラー)
       そのうち、顔画像は3%程度
           10万枚の60x60のランダムパッチを取得し、OpenCVの顔検出器で
            確認

   ハードウェア/ソフトウェア
       16コアのマシン×1000台
       自作ソフトウェアDistBeliefを用いて複数のマシンを連動
       パラメータ最適化は非同期確率的勾配降下法を用いる
       学習に約3日間
学習画像の例
学習の流れ
   ニューロン全体をロケーションを元に169個に分割し、そ
    れぞれを別々のマシンへ割り振り。
学習の流れ
      学習データセットを5つに分割し、それぞれにモデルレプ
       リカを用意。
          モデルレプリカ=分割されたモデルが格納されたマシン群



モデル
レプリカ                       ・・・・・




 学習
 データ
学習の流れ
      パラメータサーバー群を用意し、各モデルレプリカ間での
       パラメータ更新を仲介させる

                     パラメータサーバー


           W



モデル
レプリカ                  ・・・・・
学習の流れ
      パラメータサーバー群を用意し、各モデルレプリカ間での
       パラメータ更新を仲介させる

                     パラメータサーバー
          E
          W



モデル
レプリカ                  ・・・・・
学習の流れ
      パラメータサーバー群を用意し、各モデルレプリカ間での
       パラメータ更新を仲介させる

                     パラメータサーバー



               W


モデル
レプリカ                  ・・・・・
学習の流れ
      パラメータサーバー群を用意し、各モデルレプリカ間での
       パラメータ更新を仲介させる

                     パラメータサーバー


               E
               W

モデル
レプリカ                  ・・・・・
実験1:顔認識
   試験画像37,000枚
       顔画像:13,026枚
           Labeled Faces In the
            Wild
       非顔画像:残り
           ImageNet
   各ニューロンの出力
    最大値と最小値を
    求め、等間隔に20
    分割した閾値を求
    める。
   最も精度の高い閾                       試験画像例
    値を元に評価。
実験1:顔認識

手法                        精度
Random guess
                          64.8%
Same architecture with
random weights
                          67.0%
Best linear filter
                          74.0%
Best first layer neuron
                          71.0%
Best neuron
                          81.7%
Best neuron without
contrast normalization
                          78.5%
実験1:顔認識
   テスト画像中高いスコアを出したTop48
実験1:顔認識
   顔ニューロンに対して最適化された刺激




    x  arg max f (x; W, H)
     *
                              subject to   x 2 1
           x
実験1:普遍性
   入力顔画像を平行移動/スケール変化/回転(3D)させた
    時の精度変化を見る
       10枚の顔テスト画像を選択し、それぞれに編集を加える




                   顔の回転画像
実験1:普遍性
   入力顔画像をスケール変化/回転(3D)させた時の精度
    変化
実験1:普遍性
   入力顔画像を平行移動させた時の精度変化
実験2:猫と人体の認識
   猫と人の映像はYouTubeでも一般的なため、ニューロン
    がこれらを学習していないかを調べる
       猫の顔画像データセット
           Zhang et al., “Cat head detection – how to effectively exploit shape
            and texture features”, ECCV2008
           10,000枚の正解画像、18,409枚の非正解画像
       人体データセット
           Keller et al., “A new bench-mark for stereo-based pedestrian
            detection”, the IEEE Intelligent Vehicles Symposium 2009
           上記データセットのサブセットを使用
           13,026枚の正解画像、23,974枚の非正解画像
       実験方法は顔と同じ
実験2:猫と人体の認識

  手法                        猫       人体
  Random guess
                            64.8%   64.8%
  Same architecture with
  random weights
                            66.0%   66.5%
  Best linear filter
                            67.2%   68.1%
  Best first layer neuron
                            67.1%   67.2%
  Best neuron
                            74.6%   76.8%
  Best neuron without
  contrast normalization
                            69.3%   71.8%
実験2:猫と人体の認識
   猫と人体ニューロンに最適化された信号




         猫           人体
実験2:猫と人体の認識
   テスト画像中高いスコアを出したTop48




          猫                人体
実験2:猫と人体の認識
   他のUnsupervised Learning手法との比較

       手法                  顔     人体    猫
       Out network
                           81.7% 76.7% 74.8%
       Deep autoencoders
       3 layers
                           72.3% 71.2% 67.5%
       Deep autoencoders
       6 layers
                           70.9% 69.8% 68.3%
       K-means on 40x40
       images
                           72.5% 69.3% 68.5%
実験3:ImageNetでの物体認識
   既に学習したネットワークの最上層の出力に対してone-
    versus-allのロジスティック識別器を設置する。
   ImageNetのラベル付きデータで識別器を学習後、ネット
    ワーク全体を調整 (fine-tunning)

Dataset version       2009                          2011
                      (9M images, 10K categories)   (14M images, 22K categories)
State-of-the-art      16.7%                         9.3%
                      (Sanchez & Perronnin,2011)    (Weston et al., 2011)
Our method            16.1%                         13.6%
without pretraining
Our method            19.2%                         15.8%
with pretraining
おまけ
脳とDeep Learning
視覚皮質の画像処理プロセス

           背側経路(dorsal stream)
           腕を伸ばして何かを掴むな
           どの際に利用される、行動
           に関わる経路。”Where”経
           路


           腹側経路(ventral stream)
           それが犬か、猫か、などを
           認識する、知覚に関わる経
           路。”What”経路
“瞬間的な認識”の画像処理モデル
   霊長類は、目の動きや注意が働かない程度の短い
    時間(100msec)画像を見せただけで、認識すること
    ができる。
   瞬間的な認識(Rapid Categorization)では腹側経路の
    フィードフォワードパスのみ使用される
       画像が十分な時間提示された場合、「注意」が働きフィー
        ドバックパスが活性化される。
   色情報は瞬間的な認識においては重要ではない。
腹側経路のフィードフォワードパス
腹側経路の階層構造
腹側経路の階層構造
   階層が上位に位置するほど、複雑な刺激に対して選択
    性を持つようになる。
   階層が上位になるほど、位置、サイズなどに対する普遍
    性が上がる。
       カバーする受容野の大きさも同時に広くなる。
   上位の階層ほど可塑性が高い。
       学習に対して早く柔軟に対応する。
視覚皮質の計算モデル
Hubel & Wieselの階層モデル:
   単純型細胞(Simple Cell)
       ある形状に対して選択的に反応


   複雑型細胞(Complex Cell)
       単純細胞からの出力を受け取る。
       位置とスケールの選択性を除去する。


   単純型細胞と複雑型細胞で交互に処理される。
単純型細胞
   ある特定の信号(位置、大きさ、
    形状)に対して最も強く反応する。
       テンプレートマッチング
   信号の形が変わると、それに
    伴って反応も減っていく。
       ガウス関数で近似。
   しばしばガボールフィルタで近
    似される
複雑型細胞
   ある領域内、あるスケール範囲内にある、同一の形状に
    対する選択性を持つ単純型細胞からの信号受け取る。
       そのうち最大の入力を選択する




              位置とサイズに対する普遍性実現の例
“Deep Learning” vs “Ventral Stream”
   Deep Learningは腹側経路における画像処理に類似
       階層構造
       階層が上がる毎に受容野が広くなる。
       選択性と普遍性が交互に現れる
           単純型細胞≒DLのサブレイヤー 一層目
           複雑型細胞≒DLのサブレイヤー二層目
       階層が上がる毎に複雑な特徴へ反応するようになる。
           おばあさんニューロン
       ニューロンが形状に対してスパースに反応
参考資料
   R. Fergus et al., “Deep Learning Methods for Vision”,
    CVPR2012 Tutorial
       http://cs.nyu.edu/~fergus/tutorials/deep_learning_cvpr12/
   T. Serre, “Learning a Dictionary of Shape-Components in
    Visual Cortex: Comparison with Neurons, Humans and
    Machines”, Brain and Cognitive Science, 2006
Any Questions?

More Related Content

What's hot (20)

PDF
Chainerチュートリアル -v1.5向け- ViEW2015
Ryosuke Okuta
 
PDF
Deep Learning 勉強会 (Chapter 7-12)
Ohsawa Goodfellow
 
PPTX
Deep Learning基本理論とTensorFlow
Tadaichiro Nakano
 
PPTX
MIRU2014 tutorial deeplearning
Takayoshi Yamashita
 
PDF
Deep Learning を実装する
Shuhei Iitsuka
 
PDF
Deep Learningと画像認識   ~歴史・理論・実践~
nlab_utokyo
 
PDF
Deep Learningと自然言語処理
Preferred Networks
 
PDF
Learning to forget continual prediction with lstm
Fujimoto Keisuke
 
PDF
深層学習入門
Danushka Bollegala
 
PDF
Deep learning勉強会20121214ochi
Ohsawa Goodfellow
 
PDF
「ゼロから作るDeep learning」の畳み込みニューラルネットワークのハードウェア化
marsee101
 
PDF
Deep learning実装の基礎と実践
Seiya Tokui
 
PDF
PythonによるDeep Learningの実装
Shinya Akiba
 
PPTX
Image net classification with Deep Convolutional Neural Networks
Shingo Horiuchi
 
PDF
最近のDeep Learning (NLP) 界隈におけるAttention事情
Yuta Kikuchi
 
PPTX
Deep Learningについて(改訂版)
Brains Consulting, Inc.
 
PDF
論文紹介 Semi-supervised Learning with Deep Generative Models
Seiya Tokui
 
PDF
Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3
Daiki Shimada
 
PDF
LSTM (Long short-term memory) 概要
Kenji Urai
 
PDF
Practical recommendations for gradient-based training of deep architectures
Koji Matsuda
 
Chainerチュートリアル -v1.5向け- ViEW2015
Ryosuke Okuta
 
Deep Learning 勉強会 (Chapter 7-12)
Ohsawa Goodfellow
 
Deep Learning基本理論とTensorFlow
Tadaichiro Nakano
 
MIRU2014 tutorial deeplearning
Takayoshi Yamashita
 
Deep Learning を実装する
Shuhei Iitsuka
 
Deep Learningと画像認識   ~歴史・理論・実践~
nlab_utokyo
 
Deep Learningと自然言語処理
Preferred Networks
 
Learning to forget continual prediction with lstm
Fujimoto Keisuke
 
深層学習入門
Danushka Bollegala
 
Deep learning勉強会20121214ochi
Ohsawa Goodfellow
 
「ゼロから作るDeep learning」の畳み込みニューラルネットワークのハードウェア化
marsee101
 
Deep learning実装の基礎と実践
Seiya Tokui
 
PythonによるDeep Learningの実装
Shinya Akiba
 
Image net classification with Deep Convolutional Neural Networks
Shingo Horiuchi
 
最近のDeep Learning (NLP) 界隈におけるAttention事情
Yuta Kikuchi
 
Deep Learningについて(改訂版)
Brains Consulting, Inc.
 
論文紹介 Semi-supervised Learning with Deep Generative Models
Seiya Tokui
 
Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3
Daiki Shimada
 
LSTM (Long short-term memory) 概要
Kenji Urai
 
Practical recommendations for gradient-based training of deep architectures
Koji Matsuda
 

Similar to Building High-level Features Using Large Scale Unsupervised Learning (20)

PDF
PRML5
Hidekazu Oiwa
 
PPTX
深層学習入門 スライド
swamp Sawa
 
PPTX
W8PRML5.1-5.3
Masahito Ohue
 
PDF
Semantic segmentation
Takuya Minagawa
 
PPTX
深層学習の数理:カーネル法, スパース推定との接点
Taiji Suzuki
 
PPTX
SeRanet
Kosuke Nakago
 
PDF
東京都市大学 データ解析入門 10 ニューラルネットワークと深層学習 1
hirokazutanaka
 
PDF
FOBOS
Hidekazu Oiwa
 
PDF
ConditionalPointDiffusion.pdf
Takuya Minagawa
 
PDF
2値化CNN on FPGAでGPUとガチンコバトル(公開版)
Hiroki Nakahara
 
PDF
物体検知(Meta Study Group 発表資料)
cvpaper. challenge
 
PDF
NN, CNN, and Image Analysis
Yuki Shimada
 
PPTX
ディープラーニング基礎.pptx
norimatsu5
 
PDF
統計的学習手法による物体検出の高精度化と効率化 -人検出の実用化に向けて-
Hironobu Fujiyoshi
 
PDF
点群深層学習 Meta-study
Naoya Chiba
 
PDF
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
ryotat
 
PPTX
C# でニューラルネットワークをスクラッチで書いて機械学習の原理を理解しよう
Fujio Kojima
 
PDF
誤差逆伝播法の計算(ディープラーニング)
t dev
 
PDF
Incanterの紹介
mozk_
 
PDF
深層学習フレームワーク Chainer の開発と今後の展開
Seiya Tokui
 
深層学習入門 スライド
swamp Sawa
 
W8PRML5.1-5.3
Masahito Ohue
 
Semantic segmentation
Takuya Minagawa
 
深層学習の数理:カーネル法, スパース推定との接点
Taiji Suzuki
 
SeRanet
Kosuke Nakago
 
東京都市大学 データ解析入門 10 ニューラルネットワークと深層学習 1
hirokazutanaka
 
ConditionalPointDiffusion.pdf
Takuya Minagawa
 
2値化CNN on FPGAでGPUとガチンコバトル(公開版)
Hiroki Nakahara
 
物体検知(Meta Study Group 発表資料)
cvpaper. challenge
 
NN, CNN, and Image Analysis
Yuki Shimada
 
ディープラーニング基礎.pptx
norimatsu5
 
統計的学習手法による物体検出の高精度化と効率化 -人検出の実用化に向けて-
Hironobu Fujiyoshi
 
点群深層学習 Meta-study
Naoya Chiba
 
行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
ryotat
 
C# でニューラルネットワークをスクラッチで書いて機械学習の原理を理解しよう
Fujio Kojima
 
誤差逆伝播法の計算(ディープラーニング)
t dev
 
Incanterの紹介
mozk_
 
深層学習フレームワーク Chainer の開発と今後の展開
Seiya Tokui
 
Ad

More from Takuya Minagawa (20)

PDF
「第63回コンピュータビジョン勉強会@関東」発表資料 CVの社会実装について考えていたらゲームを作っていた話
Takuya Minagawa
 
PDF
第61回CV勉強会「CVPR2024読み会」(前編)発表資料:State Space Models for Event Cameras
Takuya Minagawa
 
PDF
ろくに電子工作もしたことない人間がIoT用ミドルウェアを作った話(IoTLT vol112 発表資料)
Takuya Minagawa
 
PDF
Machine Learning Operations (MLOps): Overview, Definition, and Architecture
Takuya Minagawa
 
PDF
MobileNeRF
Takuya Minagawa
 
PDF
点群SegmentationのためのTransformerサーベイ
Takuya Minagawa
 
PDF
Learning to Solve Hard Minimal Problems
Takuya Minagawa
 
PDF
楽しいコンピュータビジョンの受託仕事
Takuya Minagawa
 
PDF
20210711 deepI2P
Takuya Minagawa
 
PDF
20201010 personreid
Takuya Minagawa
 
PDF
20200910コンピュータビジョン今昔物語(JPTA講演資料)
Takuya Minagawa
 
PDF
2020/07/04 BSP-Net (CVPR2020)
Takuya Minagawa
 
PDF
20200704 bsp net
Takuya Minagawa
 
PDF
20190825 vins mono
Takuya Minagawa
 
PDF
20190706cvpr2019_3d_shape_representation
Takuya Minagawa
 
PDF
20190307 visualslam summary
Takuya Minagawa
 
PDF
Visual slam
Takuya Minagawa
 
PDF
20190131 lidar-camera fusion semantic segmentation survey
Takuya Minagawa
 
PDF
2018/12/28 LiDARで取得した道路上点群に対するsemantic segmentation
Takuya Minagawa
 
PDF
run Keras model on opencv
Takuya Minagawa
 
「第63回コンピュータビジョン勉強会@関東」発表資料 CVの社会実装について考えていたらゲームを作っていた話
Takuya Minagawa
 
第61回CV勉強会「CVPR2024読み会」(前編)発表資料:State Space Models for Event Cameras
Takuya Minagawa
 
ろくに電子工作もしたことない人間がIoT用ミドルウェアを作った話(IoTLT vol112 発表資料)
Takuya Minagawa
 
Machine Learning Operations (MLOps): Overview, Definition, and Architecture
Takuya Minagawa
 
MobileNeRF
Takuya Minagawa
 
点群SegmentationのためのTransformerサーベイ
Takuya Minagawa
 
Learning to Solve Hard Minimal Problems
Takuya Minagawa
 
楽しいコンピュータビジョンの受託仕事
Takuya Minagawa
 
20210711 deepI2P
Takuya Minagawa
 
20201010 personreid
Takuya Minagawa
 
20200910コンピュータビジョン今昔物語(JPTA講演資料)
Takuya Minagawa
 
2020/07/04 BSP-Net (CVPR2020)
Takuya Minagawa
 
20200704 bsp net
Takuya Minagawa
 
20190825 vins mono
Takuya Minagawa
 
20190706cvpr2019_3d_shape_representation
Takuya Minagawa
 
20190307 visualslam summary
Takuya Minagawa
 
Visual slam
Takuya Minagawa
 
20190131 lidar-camera fusion semantic segmentation survey
Takuya Minagawa
 
2018/12/28 LiDARで取得した道路上点群に対するsemantic segmentation
Takuya Minagawa
 
run Keras model on opencv
Takuya Minagawa
 
Ad

Recently uploaded (6)

PDF
20250717_Devin×GitHubCopilotで10人分の仕事は出来るのか?.pdf
Masaki Yamakawa
 
PDF
20250711JIMUC総会IBM Automation_Platform最新情報_Connpass公開版.pdf
ChikakoInami1
 
PDF
20250711JIMUC総会_先進IT運用管理分科会Connpass公開資料.pdf
ChikakoInami1
 
PPTX
Devcontainerのススメ(1)-Devcontainerとはどういう技術?-
iPride Co., Ltd.
 
PDF
Google Driveハブ型Obsidian同期環境:PC編集とモバイル閲覧を安全・効率的に実現するクロスデバイス構築ガイド
honeshabri
 
PDF
PostgreSQL18新機能紹介(db tech showcase 2025 発表資料)
NTT DATA Technology & Innovation
 
20250717_Devin×GitHubCopilotで10人分の仕事は出来るのか?.pdf
Masaki Yamakawa
 
20250711JIMUC総会IBM Automation_Platform最新情報_Connpass公開版.pdf
ChikakoInami1
 
20250711JIMUC総会_先進IT運用管理分科会Connpass公開資料.pdf
ChikakoInami1
 
Devcontainerのススメ(1)-Devcontainerとはどういう技術?-
iPride Co., Ltd.
 
Google Driveハブ型Obsidian同期環境:PC編集とモバイル閲覧を安全・効率的に実現するクロスデバイス構築ガイド
honeshabri
 
PostgreSQL18新機能紹介(db tech showcase 2025 発表資料)
NTT DATA Technology & Innovation
 

Building High-level Features Using Large Scale Unsupervised Learning

  • 1. 名古屋CV・PRML勉強会 発表資料 Building High-level Features Using Large Scale Unsupervised Learning 2012/10/20 takmin
  • 3. ILSVRC 2012 大規模物体認識のコンテスト http://www.image-net.org/challenges/LSVRC/2012/ Classification Localization Team name Error Team name Error 1 Super Vision 0.15315 1 Super Vision 0.335463 2 Super Vision Deep LearningVision 0.16422 2 Super 0.341905 3 ISI 0.26172 3 OXFORD_VGG 0.500342 4 ISI 0.26602 4 OXFORD_VGG 0.50139 5 ISI 0.26646 5 OXFORD_VGG 0.522189 6 ISI 0.26952 6 OXFORD_VGG 0.529482 7 OXFORD_VGG 0.26979 7 ISI 0.536474 8 XRCE/INRIA 0.27058 8 ISI 0.536546
  • 4. Super Vision  Our model is a large, deep convolutional neural network trained on raw RGB pixel values. The neural network, which has 60 million parameters and 650,000 neurons, consists of five convolutional layers, some of which are followed by max-pooling layers, and three globally-connected layers with a final 1000-way softmax. It was trained on two NVIDIA GPUs for about a week. To make training faster, we used non-saturating neurons and a very efficient GPU implementation of convolutional nets. To reduce overfitting in the globally-connected layers we employed hidden-unit "dropout", a recently-developed regularization method that proved to be very effective.
  • 6. 僕が抱いたイメージ Deep Learning 機械学習屋 CV屋
  • 8. 物体認識の流れ 入力画像 特徴量抽出 機械学習 入力画像 画像特徴 物体認識/検出 (SIFT、HOG、etc) Hand-Crafted Feature
  • 9. Deep Learning  Hand-craftedな特徴量を 用いず、特徴量を画素か ら統計的に学習する。  低レベル特徴から高レベ ル特徴までの階層構造。  低レベルな特徴ほど、 様々なタスクで共有可能  主な手法  Deep Belief Networks  Deep Bolzmann Machines  Deep Neural Networks Super Vision (Image from Lee. H in CVPR2012 Tutorial)
  • 11. 紹介する論文  Building High-level Features Using Large Scale Unsupervised Learning  International Conference on Machine Learning (ICML) 2012  Quac V. Le (Stanford)  Marc’ Aurelio Ranzato (Google)  Rajat Monga (Google)  Matthieu Devin (Google)  Kai Chen (Google)  Greg S. Corrado (Google)  Jeff Dean (Google)  Andrew Y. Ng (Stanford)
  • 12. 紹介する論文  Building High-level Features Using Large Scale Unsupervised Learning  ラベルがついていない画像だけを使って、特定 の種類の物体に反応する、高レベルの特徴検出 器を生成できないか?  例:顔認識  「おばあさんニューロン」  Deep Learningは莫大な時間がかかる  1000万枚の画像を16コアのマシン1000台で学習  Deep Neural Network
  • 13. 結構話題になりました  WIRED  「猫を認識できるGoogleの巨大頭脳」  http://wired.jp/2012/07/06/google-recognizes-kittens/  RBB Today  「Google、脳のシミュレーションで成果……猫を認識」  http://www.rbbtoday.com/article/2012/06/27/90985.html  IT Pro  「Google、大規模人工ニューロンネットワークを用いた研究成 果を紹介」  http://itpro.nikkeibp.co.jp/article/NEWS/20120627/405501/
  • 14. Architecture Objects 3rd layer 2nd layer Object Parts 特徴との類似度 1st layer Low level Features 入力画像(カラー) 特徴マップ (Image from Lee. H in CVPR2012 Tutorial)
  • 15. Architecture 3rd layer 2nd layer 1st layer 入力画像(カラー) (Image from Lee. H in CVPR2012 Tutorial)
  • 16. Architecture 3rd layer 正規化 2nd layer 普遍化 特徴選択 1st layer 入力ベクトル 入力画像(カラー) (Image from Lee. H in CVPR2012 Tutorial)
  • 17. 1st Sub Layer  特徴選択 h(x)  W x T 第1層 重み(疎) 入力ベクトル の出力 位置毎に異なる重みを用いる(≠ 畳み込みNN) 第1層 ・・・ 入力 ・・・ 特徴1 特徴2
  • 18. 2nd Sub Layer  普遍化  L2 Pooling h ( i 1) 2 h x, y  (i ) x u , y  v ( u ,v )N ( x , y ) 第2層の 出力 第2層 ・・・ 第1層 ・・・ 特徴A 特徴B
  • 19. 3rd Sub Layer  正規化  Local Constraint Normalization ( i 1) h (i )  mN ( x , y )  x, y h  N ( x, y ) x, y 第2層の出力 mN ( x, y ) ,  N ( x, y ) : 周辺領域のガウス平均/分散 第3層 ・・・ m,  第2層 ・・・ 特徴A 特徴B
  • 20. 学習  教師ありニューラルネットワークの場合 順伝播 ( ) hn xn W E (h n , t n ) 学習データ エンコード 出力 誤差関数 tn 教師信号
  • 21. 学習  教師ありニューラルネットワークの場合 逆伝播 En ( ) h W E (h n , t n ) 誤差の 誤差関数 勾配
  • 22. 学習  教師ありニューラルネットワークの場合 逆伝播 En En h W E (h n , t n ) 誤差の 誤差関数 勾配 ( 1) ( ) En W W  W
  • 23. 学習  教師ありニューラルネットワークの場合 逆伝播 En ( 1) h W E (h n , t n ) 誤差の 誤差関数 勾配 ( 1) ( ) En W W  W
  • 24. 学習  教師なしニューラルネットワークの場合 順伝播 ( ) hn xn W E (h n , t n ) 学習データ エンコード 出力 誤差関数 × tn 教師信号
  • 25. 学習  教師なしニューラルネットワークの場合 ( ) hn ( ) xn xn W 1 W 2 E (x n , xn ) 学習データ エンコード 出力 デコード 誤差関数 E (x n , x )  x  x n   h n 2 n n 二乗和誤差 出力を疎にする ための正則化項 (L1ノルム)
  • 26. 学習 min x  x n   h n 2 n w 二乗和誤差 出力を疎にする ための正則化項 (L1ノルム) 第2層 h ・・・ H 第1層 ・・・ W 入力 ・・・ 特徴1 x 特徴2
  • 27. 学習 m  k T (i ) 2  arg min   W2 W1 x  x      H j ( W1 x )  T (i ) 2 (i )   W1W2 i 1  j 1  二乗和誤差 第2層の出力のL1ノルム 第2層 h ・・・ H 第1層 ・・・ W 入力 ・・・ 特徴1 x 特徴2
  • 28. 学習  各層の学習 1st Layer 2nd Layer 3rd Layer エンコード 誤差 学習 デコード
  • 29. 学習  各層の学習 1st Layer 2nd Layer 3rd Layer エンコード エンコード 誤差 学習 デコード
  • 30. 学習  各層の学習 1st Layer 2nd Layer 3rd Layer エンコード エンコード エンコード 誤差 学習 デコード
  • 31. 学習環境  学習データ  YouTubeからランダムに1000万枚の画像を取得  画像を200x200のサイズに調整(カラー)  そのうち、顔画像は3%程度  10万枚の60x60のランダムパッチを取得し、OpenCVの顔検出器で 確認  ハードウェア/ソフトウェア  16コアのマシン×1000台  自作ソフトウェアDistBeliefを用いて複数のマシンを連動  パラメータ最適化は非同期確率的勾配降下法を用いる  学習に約3日間
  • 33. 学習の流れ  ニューロン全体をロケーションを元に169個に分割し、そ れぞれを別々のマシンへ割り振り。
  • 34. 学習の流れ  学習データセットを5つに分割し、それぞれにモデルレプ リカを用意。  モデルレプリカ=分割されたモデルが格納されたマシン群 モデル レプリカ ・・・・・ 学習 データ
  • 35. 学習の流れ  パラメータサーバー群を用意し、各モデルレプリカ間での パラメータ更新を仲介させる パラメータサーバー W モデル レプリカ ・・・・・
  • 36. 学習の流れ  パラメータサーバー群を用意し、各モデルレプリカ間での パラメータ更新を仲介させる パラメータサーバー E W モデル レプリカ ・・・・・
  • 37. 学習の流れ  パラメータサーバー群を用意し、各モデルレプリカ間での パラメータ更新を仲介させる パラメータサーバー W モデル レプリカ ・・・・・
  • 38. 学習の流れ  パラメータサーバー群を用意し、各モデルレプリカ間での パラメータ更新を仲介させる パラメータサーバー E W モデル レプリカ ・・・・・
  • 39. 実験1:顔認識  試験画像37,000枚  顔画像:13,026枚  Labeled Faces In the Wild  非顔画像:残り  ImageNet  各ニューロンの出力 最大値と最小値を 求め、等間隔に20 分割した閾値を求 める。  最も精度の高い閾 試験画像例 値を元に評価。
  • 40. 実験1:顔認識 手法 精度 Random guess 64.8% Same architecture with random weights 67.0% Best linear filter 74.0% Best first layer neuron 71.0% Best neuron 81.7% Best neuron without contrast normalization 78.5%
  • 41. 実験1:顔認識  テスト画像中高いスコアを出したTop48
  • 42. 実験1:顔認識  顔ニューロンに対して最適化された刺激 x  arg max f (x; W, H) * subject to x 2 1 x
  • 43. 実験1:普遍性  入力顔画像を平行移動/スケール変化/回転(3D)させた 時の精度変化を見る  10枚の顔テスト画像を選択し、それぞれに編集を加える 顔の回転画像
  • 44. 実験1:普遍性  入力顔画像をスケール変化/回転(3D)させた時の精度 変化
  • 45. 実験1:普遍性  入力顔画像を平行移動させた時の精度変化
  • 46. 実験2:猫と人体の認識  猫と人の映像はYouTubeでも一般的なため、ニューロン がこれらを学習していないかを調べる  猫の顔画像データセット  Zhang et al., “Cat head detection – how to effectively exploit shape and texture features”, ECCV2008  10,000枚の正解画像、18,409枚の非正解画像  人体データセット  Keller et al., “A new bench-mark for stereo-based pedestrian detection”, the IEEE Intelligent Vehicles Symposium 2009  上記データセットのサブセットを使用  13,026枚の正解画像、23,974枚の非正解画像  実験方法は顔と同じ
  • 47. 実験2:猫と人体の認識 手法 猫 人体 Random guess 64.8% 64.8% Same architecture with random weights 66.0% 66.5% Best linear filter 67.2% 68.1% Best first layer neuron 67.1% 67.2% Best neuron 74.6% 76.8% Best neuron without contrast normalization 69.3% 71.8%
  • 48. 実験2:猫と人体の認識  猫と人体ニューロンに最適化された信号 猫 人体
  • 49. 実験2:猫と人体の認識  テスト画像中高いスコアを出したTop48 猫 人体
  • 50. 実験2:猫と人体の認識  他のUnsupervised Learning手法との比較 手法 顔 人体 猫 Out network 81.7% 76.7% 74.8% Deep autoencoders 3 layers 72.3% 71.2% 67.5% Deep autoencoders 6 layers 70.9% 69.8% 68.3% K-means on 40x40 images 72.5% 69.3% 68.5%
  • 51. 実験3:ImageNetでの物体認識  既に学習したネットワークの最上層の出力に対してone- versus-allのロジスティック識別器を設置する。  ImageNetのラベル付きデータで識別器を学習後、ネット ワーク全体を調整 (fine-tunning) Dataset version 2009 2011 (9M images, 10K categories) (14M images, 22K categories) State-of-the-art 16.7% 9.3% (Sanchez & Perronnin,2011) (Weston et al., 2011) Our method 16.1% 13.6% without pretraining Our method 19.2% 15.8% with pretraining
  • 53. 視覚皮質の画像処理プロセス 背側経路(dorsal stream) 腕を伸ばして何かを掴むな どの際に利用される、行動 に関わる経路。”Where”経 路 腹側経路(ventral stream) それが犬か、猫か、などを 認識する、知覚に関わる経 路。”What”経路
  • 54. “瞬間的な認識”の画像処理モデル  霊長類は、目の動きや注意が働かない程度の短い 時間(100msec)画像を見せただけで、認識すること ができる。  瞬間的な認識(Rapid Categorization)では腹側経路の フィードフォワードパスのみ使用される  画像が十分な時間提示された場合、「注意」が働きフィー ドバックパスが活性化される。  色情報は瞬間的な認識においては重要ではない。
  • 57. 腹側経路の階層構造  階層が上位に位置するほど、複雑な刺激に対して選択 性を持つようになる。  階層が上位になるほど、位置、サイズなどに対する普遍 性が上がる。  カバーする受容野の大きさも同時に広くなる。  上位の階層ほど可塑性が高い。  学習に対して早く柔軟に対応する。
  • 58. 視覚皮質の計算モデル Hubel & Wieselの階層モデル:  単純型細胞(Simple Cell)  ある形状に対して選択的に反応  複雑型細胞(Complex Cell)  単純細胞からの出力を受け取る。  位置とスケールの選択性を除去する。  単純型細胞と複雑型細胞で交互に処理される。
  • 59. 単純型細胞  ある特定の信号(位置、大きさ、 形状)に対して最も強く反応する。  テンプレートマッチング  信号の形が変わると、それに 伴って反応も減っていく。  ガウス関数で近似。  しばしばガボールフィルタで近 似される
  • 60. 複雑型細胞  ある領域内、あるスケール範囲内にある、同一の形状に 対する選択性を持つ単純型細胞からの信号受け取る。  そのうち最大の入力を選択する 位置とサイズに対する普遍性実現の例
  • 61. “Deep Learning” vs “Ventral Stream”  Deep Learningは腹側経路における画像処理に類似  階層構造  階層が上がる毎に受容野が広くなる。  選択性と普遍性が交互に現れる  単純型細胞≒DLのサブレイヤー 一層目  複雑型細胞≒DLのサブレイヤー二層目  階層が上がる毎に複雑な特徴へ反応するようになる。  おばあさんニューロン  ニューロンが形状に対してスパースに反応
  • 62. 参考資料  R. Fergus et al., “Deep Learning Methods for Vision”, CVPR2012 Tutorial  http://cs.nyu.edu/~fergus/tutorials/deep_learning_cvpr12/  T. Serre, “Learning a Dictionary of Shape-Components in Visual Cortex: Comparison with Neurons, Humans and Machines”, Brain and Cognitive Science, 2006