狠狠撸

狠狠撸Share a Scribd company logo
行列およびテンソルデータ
  に対する機械学習
       東京大学
     数理情報学専攻
       冨岡亮太

  2011/11/28 数理助教の会
自己紹介

? 学部: 計数工学科システムコース
? 卒論&修論: 遺伝子ネットワークにおける確率的な
  ゆらぎの研究(木村先生&合原先生)
? 博士から機械学習の研究
行列データの例1
               Time
     Sensors


                      行列


? 行と列の構造があるので、ベクトルとして扱うのは
  もったいない。
? 右と左から行列をかけるのが自然
行列データの例2

 ? 商品?ユーザ行列

                         映画
                Star Wars Titanic   Blade    …
                                    Runner
      User 1    5         2         4
ユーザ
      User 2    1         4         2
      User 3    5         ?         ?




  (数学的な意味で行列かどうか微妙。)
行列データと考えたくないもの

画像




? 行と列に本質的な差がない
2種類の低ランク分解
? 生成モデル
 – 与えられたひとつの行列を何らかの規準で低ランク近似
 – 応用:協調フィルタリング、システム同定など


? 判別モデル
 – 行列データを入力として、分類規則を学習
 – 応用:時空間データの判別(後述)
  X1 X2 X3 X 4


                           (低ランク)
テンソル (3軸以上のデータ)



       時間                  映画


センサー               ユーザ


   ? テンソルの低ランク分解
   ? テンソルのランクとは?
       (応力テンソルとかとは意味が違う)
テンソルの低ランク分解

? 生成モデル
 – 与えられたテンソルを何らかの基準で低ランク近似




? 判別モデル
 – テンソルを入力データとして分類規則を学習
  x1   x2   x3   x4


                 1次項   2次項
行列に対する
 行列に対する
             判別モデル
 生成モデル
             (2006-2009)




テンソルに対する     テンソルに対する
 生成モデル        判別モデル
   (2010-)       (?)
行列に対する
             判別モデル
             (2006-2009)




テンソルに対する
 生成モデル
   (2010-)
アジェンダ
? 行列の上の判別モデルに基づくブレイン?コンピュータイ
  ンタフェースの話(2006-2009)

                                Right or left?


? 高階テンソルのTucker分解を凸化する話(2010-)
          コア          ファクター


               U(1)                 U(3)
     X    C              U(2)
Brain-computer interface
? Aims to “decode” thoughts or commands from
  human brain signal [Wolpaw+ 2002]

               Encoding


  Thoughts
 Commands



              Decoding            Signal Acquisition
                                    (EEG, MEG, …)
P300 speller system



                         Evoked
                         Response




Farwell & Donchin 1988
P300 speller system
A   B   C   D   E   F
G   H   I   J   K   L
M   N   O   P   Q   R
S   T   U   V   W   X
Y   Z   1   2   3   4                       ER detected!
5   6   7   8   9   _



A   B   C   D   E   F
G   H   I   J   K   L
M   N   O   P   Q   R
S   T   U   V   W   X
Y   Z   1   2   3   4                       ER detected!
5   6   7   8   9   _

                            The character must be “P”
判別モデル
? 訓練サンプル (X1, y1), … , (Xn,yn)

       X1    X2   X3   X4         Xn

  – Xi は行列 (センサーの数 x 時間点)
  – yi = +1 or -1 (2値分類)




                           訓練誤差         正則化

    ただし                                (判別器)
低ランク分解を促す正則化
Schatten 1-ノルム (nuclear norm / trace norm)


                                             (特異値の線形和)

例えば




ただし                     なので、一般の訓練誤差に対しても

低ランク化効果が期待できる(厳密な証明は不明)
低ランク分解する意味
? 時空間フィルタ(特徴抽出器)を学習していることに対応




                     vc: 時間フィルタ
学習結果がまともか
「見て」判断できる     uc: 空間フィルタ
Modeling P300 speller (decoding)
? Suppose that we have a detector f(X) that detects
  the P300 response in signal X.



                       f1 f2 f3 f4 f5 f6
                 f7
                 f8
                 f9
                 f10
    This is nothing but learning 2 x 6-class classifier
                 f11
                 f12
How we do this



…   12   2   8   1   3   4   11   9   5    6   10   7    …

     Multinomial likelihood f.            Multinomial likelihood f.
Experiment
? Two subjects (A&B) from BCI competition III
   – 64 channels x 37 time-points (600ms @ 60Hz)
   – 12 epochs x 15 repetitions x 85 letters = 15300 epochs in
     training set
   – 100 letters for test
? Linear detector function (bias is irrelevant)
判別性能 (36クラス)

               ー15回反復
               ー 5回反復




         Tomioka & Müller 2009
時空間フィルタ (Subject A)




? 300ms以前の早い段階で頭の後ろの方で判別できる
? 300ms以降長く続く頭頂部で判別性がある
時空間フィルタ (Subject B)




? 最初の2つの成分が早い後頭部の成分
? 3つ目の成分が頭頂部の遅い成分に対応
ここまでのまとめ

? 損失(訓練誤差)項と正則化項の組み合わせがいろ
  いろ変えられるのが機械学習の(ひとつの)醍醐味
? 今回
 – 損失項: Farwell & Donchin システムの解読方法を素直に
   表現した形 (2x6クラス分類)
 – 正則化項:低ランク分解を促すSchatten 1-ノルム
? それなりにもっともらしい時空間フィルタが得られた。
テンソルの低ランク分解

    テンソルのランクとは
  凸最適化によるテンソル分解
     性能の理論解析
テンソルのランク

 定義                 (K階テンソル)




      ただし   はランク1                   (ベクトル
                                    の外積で
                                    書ける)
    となる最小の Rを X のランクという。

? ある R で分解が可能かチェックするのはNP完全
? ランクの決定はNP困難
? このような分解を CANDECOMP / PARAFAC 分解 (CP分解)とよぶ
テンソルのランクの不思議な性質1
 ? 分解の一意性
   – 行列の分解 X=ABT は一意性がない
   – テンソルのCP分解




   は一意性を持つ場合がある
   (定数倍の自明な自由度をのぞく)
 ? 一意性の十分条件 (Kruskal 77)


kA は行列Aの k-rank(k本の列ベクトルが線形独立となる最大のk)
            (以降、説明を簡単にするために3階のテンソルを考える)
テンソルのランクの不思議な性質2
 ?   閉じていない




                Kolda & Bader 2009
Xはランク3



Yはランク2
Tucker 分解の意味のランク
 ? Tucker分解 [Tucker 66]
                                        ファクター
     n3              コア
              n2                  r1         r2          r3
                    r3
n1                          n1          n2          n3
          X        r1 C          U(1)        U(2)        U(3)
                       r2




     ? CP分解はコアテンソルが対角 (r1=r2=r3) の場合
     ? Tucker 分解のランクは軸(モード)ごとに異なる
テンソルのモード-k 展開 (行列化)
     モード-1 行列化   X   ( 1)
                                 I2   I2        I2
I1
                            I1
     I2   I3
                                           I3
     モード-2 行列化   X   ( 2)
                                 I3   I3        I3
I1
                            I2
     I2   I3
                                           I1
     数学的には要素の順番のパーミュテーション
モード-k展開とモード-kランク


モード-1 行列化


     rank(X(1))=r1
モード-2 行列化

     rank(X(2))=r2
モード-3 行列化
                     Tuckerの意味でのランクはX(k)の行

     rank(X(3))=r3     列としてのランクに等しい
CP分解 / Tucker分解 ランクの比較
         行列の     CP分解   Tucker分解
         特異値分解

ランクの決定   多項式     NP困難   多項式
                        (各モード展開し
                        てSVD)
分解の計算    多項式     NP困難   多項式


分解の一意性   なし      あり     なし


コア       対角      対角     r1 x r2 x r3テンソル




Tucker分解の方が特異値分解の自然な拡張になっているかも
テンソルの低ランク化を促す正则化
        項
テンソルに対する overlapped Schatten 1-ノルム




                                        モード-k 行列化の
                                        Schatten 1-ノルム


 ? ノルムの公理を満たす
 ? 各モードを γk の強さで低ランクになるよう正則化
 ? これを使えば低ランクテンソルの推定が凸最適化でできる

    (Cf. Liu+09, Signoretto+10, Tomioka+10, Gandy+11)
テンソル補完への応用
? 最適化問題




          ここで急激に减少する→なぜか?
圧縮センシング業界における相転移
? Donoho-Tanner Phase Transition




                               真の非ゼロ要素の割合
                                             確率1で失敗

  A: n x N 行列
  (n << N)
                                                          確率1で成功


                                                観測要素の割合
        Donoho & Tanner “Precise Undersampling Theorem”
行列補完における相転移
観測pに対する行列の自由度 r(2n-r) の割合




                                       全要素数n2に対する観測pの割合




    Recht et al (2007) “Guaranteed Minimum-Rank Solutions of Linear Matrix Equations via Nuclear Norm Minimization”
解析:問題設定
観測モデル
            : 真のテンソル ランク(r1,...,rK)



            ガウス雑音
最適化問題   データ尤度       正則化項




                            正則化定数

           観測作用素
(cf. Negahban &
     仮定:制約強凸性            Wainwright 11)

? 正の定数 κ(X) が存在してΔ∈CなるすべてのテンソルΔ
  に関して



が成り立つ。(集合Cはあとで定義)


注意
? κ(X)はXの最小特異値に対応
? M>N (パラメータ数) なら普通の仮定
? 集合Cをいかに狭く取るかがポイント
定理1
? 最適化問題の解
? ただしノイズ-デザイン相関




と仮定


? 制約強凸性が成り立つと仮定
? この時



         ランクの2乗根の和が問題の難しさを決めている
補題: H?lderっぽい不等式



 ただし、


                  モード-k 行列化のス
                  ペクトルノルム



注)   と   は双対ノルムにはなっていない(もっとタイ
トな不等式が存在する)
2つの特殊な場合
? もうちょっと精密に考える必要
 – 制限強凸性の定数 κ(X)は?
 – 正則化定数λMはどう選ぶ?



? ノイズあり行列分解(全部の要素が見えている)
 – 制限強凸性:ほぼ自明
 – 正則化定数λMをノイズ-デザイン相関          の強さに応じて選ぶ



? ランダムガウスデザイン
 – 制限強凸性:あまり自明ではない(ただしNegahban & Wainwrightの結果が使え
   る)
 – 正則化定数λMをノイズ-デザイン相関          の強さに応じて選ぶ
ノイズあり行列分解の場合

? 全部の要素が観測可能 (M=N)


                     (強凸性OK)

? 正則化定数




(ランダム行列の理論から)
 しかも    は高い確率で平均の周りに集中する
定理2
? 全部の要素が見えている場合 (M=N)、
正則化定数
のように取ると




ただし、

また         を正规化ランクと呼ぶ
実験结果:
   ノイズありテンソル分解 (ノイズ小 σ =0.01)

     平均2乗誤差




? 正則化定数の取り方
は大きさのみに依存し,
ランクに依らない
? 平均2乗誤差は正規
化ランクに比例
                    正規化ランク
実験结果:
    ノイズありテンソル分解 (ノイズ大 σ=0.1)

    平均2乗誤差




? 正則化定数の取り方
は大きさのみに依存し,
ランクに依らない
? 平均2乗誤差は正規
化ランクに比例            正規化ランク
ランダムガウスデザイン
 (Xi が独立同一なガウス分布から出ている) 場合
? 正則化定数




? 制約強凸性: ちょっと複雑



                    ならOK (κ =1/64)

      適当な定数   正規化ランク
           (M: サンプル数, N: テンソルの要素数)
定理3
ランダムガウスデザインの場合、
1. 観測の要素数に対する割合
                  (制約強凸性の条件)
2. 正則化定数



のもとで
実験
テンソル穴埋め (ノイズなし) ? λ→ 0



ここでの全要
素に対する観
測要素の割
合




            正規化ランク
行列の場合とテンソルの場合
行列穴埋めの場合      テンソル穴埋めの場合




      どちらもノイズなし
テンソル分解編のまとめ
? テンソルは数学的対象として非自明な点が多い
? Tucker分解はSVDと関係があるので扱いやすい
? Tucker分解を凸最適化で解く手法を提案した
? 解析結果と実験結果はそこそこ一致している
 – Normalized rank
? 課題:
 – 行列の場合とテンソルの場合の違いはなぜ?
 – 制約強凸性は満たされているのか?
 – サンプル数だけで復元可能性が決まるのか?
 – 一部のモードのみ低ランクな場合は?
 – 応用???
参考文献
?   Wolpaw, Birbaumer, McFarland, Pfurtscheller, Vaughan (2002) Brain-computer interfaces for communication and
    control. Clin. Neurophysiol. 113, 767–791.
?   Farwell & Donchin (1988) Talking off the top of your head: toward a mental prosthesis utilizing event-related brain
    potentials. Electroencephalogr. Clin. Neurophysiol. 70 (6), 510–523.
?   Tomiok a & Müller (2009) A regularized discriminative framework for EEG analysis with application to brain-computer
    interface. Neuroimage, 49 (1), 415-432.
?   Kolda & Bader (2009) Tensor decompositions and applications. SIAM Review, 51(3):455–500.
?   Tucker (1966) Some mathematical notes on three-mode factor analysis. Psychometrika, 31(3):279–311.
?   Gandy, Recht, & Yamada (2011) Tensor completion and low-n-rank tensor recovery via convex optimization. Inverse
    Problems, 27:025010.
?   Liu, Musialski, Wonka, & Ye. (2009) Tensor completion for estimating missing values in visual data. In Prof. ICCV.
?   Signoretto, de Lathauwer, & Suykens (2010) Nuclear norms for tensors and their use for convex multilinear estimation.
    Tech Report 10-186, K.U.Leuven.
?   Donoho & Tanner (2010) Precise undersampling theorems. Proceedings of the IEEE, 98(6):913–924.
?   Recht, Fazel, & Parrilo (2010) Guaranteed minimum-rank solutions of linear matrix equations via nuclear norm
    minimization. SIAM Review, 52(3):471–501.
?   Tomioka, Hayashi, & Kashima (2011) Estimation of low-rank tensors via convex optimization. Technical report,
    arXiv:1010.0789, 2011.
?   Tomioka, Suzuki, Hayashi, & Kashima (2011) Statistical performance of convex tensor decomposition. Advances in NIPS
    24. 2011, Granada, Spain.

More Related Content

行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)