狠狠撸

狠狠撸Share a Scribd company logo
SSA-SOINN
 競合型ニューラルネットを用いた
オンライン準教師付き能動学習手法

      櫻井啓介、神谷祐樹、長谷川修
          東京工業大学
電子情報通信学会論文誌, Vol.J90-D, No.11, pp.3091-3102, (2007)
1
準教師付き学習
教師付き学習:全てのデータに出力ラベル付与 → コストがかかる
一部の入力データのみに出力ラベルを付与
ラベル付きデータ
           両方用いて学習    準教師付き学習
ラベルなしデータ


能動学習
最も必要な出力ラベルのみをもらう



 少ない出力ラベルで効率よく学習
2
従来の準教師付き(能動)学習
Generative Model [Nigam et al., 2000]
Co-Training [Blum and Mitchell, 1998], [Muslea et al., 2002]
TSVM [Bennett and Demiriz, 1999]
GRF [Zhu et al., 2003]
?バッチ学習                       →膨大なメモリが必要
?クラス数は事前に与える →新しいクラスの追加が困難
                実環境には…
                  膨大な数のデータ
                  新しい概念(クラス)の発生


     オンラインで追加学習可能なシステム
                                                         が重要
3
自己増殖型ニューラルネットワーク
                   (SOINN)   [Shen, 2006]

教師なし学習の手法




             分布を
             近似
   入力データ                 SOINN
  長所
   ネットワーク構造(ノードや辺の数)を自律的に獲得
   オンライン学習である
   追加学習が可能
4
本研究の目的

自己増殖型ニューラルネットワーク(教師なし学習)


    準教師付き能動学習に拡張


  オンラインで追加学習が可能な
  準教師付き能動学習手法の提案
5
入力データの分布とノードの関係




  入力データ        SOINN




分布の密度が高い   多くのノードが生成される

           ノード同士の距離が近い
6
クラスタリング
ノード間の距離に注目

       小:クラスの中心
       大:クラスの境界
7
クラスタリング
ノード   の密度
             : ノード の
               重みベクトル
             : ノード の
               隣接ノード集合
             :   の要素数


サブクラスタ1     サブクラスタ2
8
サブクラスタのグループ化
ノードの密度分布
                       密度の頂点と谷間の差 < 閾値




                             サブクラスタをグループ化
 サブクラスタ1   2       3     4     5    6   7
                                       細かく分かれすぎる
           グループ1                   グループ2     階層構造

                       クラスタ1

[小倉ら, 2007] と同様の考えかた
      違い:密度の定義,クラスタの階層構造
9
ラベルの質問 (能動学習への拡張)
  同一サブクラスタのノードは同一クラス の可能性大
  1つのサブクラスタには1つのラベル   をもらえばよい

サブクラスタの代表ノード=密度が最も大きいノード
          システムが質問
10
ラベルの質問 (能動学習への拡張)
   クラスの境界の推定精度を上げる

   境界のノードのクラスラベルを質問
       異なるラベルの隣接ノードを持つノード
11
提案手法のまとめ
SOINN

クラスタリング   ラベル質問   ラベル入力

           質問
サブクラスタ1           サブクラスタ2
12
計算機実験
実験1 人工データを用いた実験
実験1.1 定常環境での実験
使用した人工データ       クラス数:4
                   クラス1:ガウス分布(下)
                        同心円(内)
   4
            2      クラス2:ガウス分布(上)
                   クラス3:同心円(外)
       1           クラス4:サインカーブ
            1
                        ※10%の一様ノイズを含む
   3            ラベル入力
                   グループ当たり
                   1つのラベル質問
13

4         2

    1
          1
3

               ノードをクラス毎に異なる色で表示
               クラスラベルが入力されたノードは
               ×で表示


        少数のラベル付きデータで
        分布全体を表現できている
14
計算機実験
実験1.2 非定常環境での実験

              SOINNへの入力50000回毎に
  4           入力データが
          2   クラス1からクラス4まで
              順に変化
      1   1   ラベル入力
 3              入力50000回毎に
                グループ当たり
                1つのラベル質問
15




新たなクラスが追加される毎に
適切に分布が追加されている
16
計算機実験
実験2.実データを用いた実験
実験2.1 全数記憶最近傍法との比較
 入力データ
     Pima, WDBC, Iris, Optdigits
     (UCI Repository データベース)
 Pima, WDBC, Irisはleave-one-out
 Optdigitsは100回の試行の平均

 ラベル入力
 境界ノード全てに対して
 ラベル質問
17

      識別率(%)の比較
      Pima WDBC Iris      Optdigits
                                      同程度の
全数記憶 68.0   91.6   96.0 98.0
                                      識別率
提案手法 69.4   92.1   96.7 96.5

  入力したラベル付きデータ数の比較
      Pima WDBC    Iris Optdigits ラベル数が
全数記憶 767    568    149 3823       非常に少なく
                                  抑えられている
提案手法 78.9   34.2   14.2 147.3
18
計算機実験
 実験2.2 能動学習の有効性
 入力データ:Optdigits

  手書き数字のデータセット(クラス数10)
  次元数:64



 ラベル質問(能動学習)した場合と
 ランダムにラベル付きデータを入力した場合で比較
100
                                                              19
            95
            90
            85
Accuracy



            80                        Active Learning
            75
                                      Random Queries
            70
            65
            60
            55
            50
                 10   30     50       70      90        110
                           Labeled Set Size

能動学習しているほうが全体的に識別率が高い
ラベル付きデータの数が少ないうちから高い識別率
20
計算機実験
実験2.3 新規クラスの追加学習
入力データ:Optdigits

 入力50000回毎に
    奇数データ → 偶数データ → 全データ
 の順で入力データを変える


ラベル入力
 入力10000回毎に
 グループ当たり
 1つのラベルを質問
21
                   50
                   45
                                                                                  奇数から偶数(未知クラス)に
Labeled Set Size




                   40
                   35                                                             入力データが変わると
                   30
                   25                                                             ラベル付きデータ数
                   20
                   15                                                             (質問数)
                   10
                    10000    30000   50000   70000 90000   110000 130000 150000   が急上昇
                                                 Steps




                   100
                    95
                    90                                                            ラベルが必要か
Accuracy




                    85
                    80
                                                                                  システム自身が
                    75
                    70
                                                                                  判断できている
                     10000   30000   50000   70000 90000   110000 130000 150000
                                                 Steps


                   ※入力50000回までの識別率は奇数のテストデータに対して
22
計算機実験
実験2.4 顔画像識別実験
入力データ


  10人分の顔画像   20×26ピクセル グレースケール256階調




  ビデオカメラで撮影した連続的な画像    顔の方向は少しずつ変わる

 訓練データ:1人当たり3000フレーム,計30000の画像
 テストデータ:1人当たり700フレーム,計7000の画像
 ラベル入力
 入力2000回毎に
 グループ当たり1つのラベルを質問
23
計算機実験
                   100

                    80
Labeled Set Size




                    60
                                                                     新たなクラスが入力される毎に
                    40
                                                                     識別率が落ちるが
                    20
                                                                     学習が進むことで
                     0
                                                                     再び識別率が上がる
                     2000   7000   12000     17000   22000   27000
                                           Steps



                                                                     使用データ30000に対して
                   100
                                                                     入力ラベル付きデータ数93個
                    95
                    90
                                                                     ノード数353
Accuracy




                    85
                    80
                    75
                    70
                                                                     ラベル付与のコスト
                     2000   7000   12000     17000
                                           Steps
                                                     22000   27000
                                                                     識別のための計算コスト
                                                                     使用メモリ量を削減
24
成果
     SOINNを拡張して
     オンラインで追加学習が可能な
     準教師付き能動学習手法を提案

今後の課題
     識別率のさらなる向上

More Related Content

SSA-SOINN