行列およびテンソルデータに対する機械学習(数理助教の会 2011/11/28)
TRANSCRIPT
行列データの例2
• 商品・ユーザ行列
Star Wars Titanic Blade Runner
…
User 1 5 2 4 User 2 1 4 2 User 3 5 ? ?
映画
ユーザ
(数学的な意味で行列かどうか微妙。)
2種類の低ランク分解
• 生成モデル – 与えられたひとつの行列を何らかの規準で低ランク近似
– 応用:協調フィルタリング、システム同定など
• 判別モデル – 行列データを入力として、分類規則を学習
– 応用:時空間データの判別(後述)
X AB
X1 X2 X3 X4
(低ランク)
f(X) = X, W + bW = AB
テンソルの低ランク分解
• 生成モデル – 与えられたテンソルを何らかの基準で低ランク近似
• 判別モデル – テンソルを入力データとして分類規則を学習
f(x) = x, w1 +xx, W 2
+ · · ·
1次項 2次項
x1 x2 x3 x4
X G ×1 U1 ×2 U2 · · ·×K UK
アジェンダ
• 行列の上の判別モデルに基づくブレイン・コンピュータインタフェースの話(2006-‐2009)
• 高階テンソルのTucker分解を凸化する話(2010-‐)
X C = ×1 ×2 ×3U(1) U(2) U(3)
コア ファクター
Right or leE?
Brain-‐computer interface • Aims to “decode” thoughts or commands from human brain signal [Wolpaw+ 2002]
Thoughts Commands
Encoding
Decoding Signal AcquisiXon (EEG, MEG, …)
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
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
5 6 7 8 9 _
ER detected!
ER detected!
The character must be “P”
判別モデル
• 訓練サンプル (X1, y1), … , (Xn,yn)
– Xi は行列 (センサーの数 x 時間点)
– yi = +1 or -‐1 (2値分類)
X1 X2 X3 X4 Xn
訓練誤差 正則化
minimizeW ,b
n
i=1(f(Xi), yi) + R(W )
ただし f(X) = X, W + b (判別器)
低ランク分解を促す正則化
W S1=
r
j=1σj(W )
Schaden 1-‐ノルム (nuclear norm / trace norm)
例えば
ただし
argminW
1
2X −W 2F + λW S1
= U max(S − λ,0)V
X = USV
(特異値の線形和)
なので、一般の訓練誤差に対しても
低ランク化効果が期待できる(厳密な証明は不明)
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 f11 f12
This is nothing but learning 2 x 6-‐class classifier
Experiment • Two subjects (A&B) from BCI compeXXon III – 64 channels x 37 Xme-‐points (600ms @ 60Hz)
– 12 epochs x 15 repeXXons x 85 leders = 15300 epochs in training set
– 100 leders for test
• Linear detector funcXon (bias is irrelevant)
判別性能 (36クラス)
ー15回反復 ー 5回反復
!"
#"
$"
%"
&"
'"
(""
))))!*+,"-
.//012/3
+0456/7).
("!(
(""
("(
"
("
8"
9"
:)2/7;<6)/=>?=@6@7A
))))!*+,"-
("!(
(""
("(
!"
#"
$"
%"
&"
'"
(""
))))!*+,"-
.//012/3
+0456/7)B
("!(
(""
("(
"
("
8"
9"
:)2/7;<6)/=>?=@6@7A
))))!*+,"-
("!(
(""
("(
Tomioka & Müller 2009
時空間フィルタ (Subject A)
!"#$%&
'()!*+!',!'
-.$$%&/
, ',, 0,, 1,, +,, 2,, 3,,!0
,
0
4"5%)6578
4"5%)9:;&7%
0()!*'<=!',!'
, ',, 0,, 1,, +,, 2,, 3,,!0
,
0
4"5%)6578
• 300ms以前の早い段階で頭の後ろの方で判別できる • 300ms以降長く続く頭頂部で判別性がある
時空間フィルタ (Subject B) !"#$%&
'()!*+,-!'.!'
/0$$%&1
. '.. 2.. 3.. 4.. +.. 5..!2
.
2
6"7%)879:
6"7%);<=&9%
2()!*2,4!'.!'
. '.. 2.. 3.. 4.. +.. 5..!2
.
2
6"7%)879:
3()!*+,5!'.!2
. '.. 2.. 3.. 4.. +.. 5..!2
.
2
6"7%)879:
• 最初の2つの成分が早い後頭部の成分 • 3つ目の成分が頭頂部の遅い成分に対応
ここまでのまとめ
• 損失(訓練誤差)項と正則化項の組み合わせがいろいろ変えられるのが機械学習の(ひとつの)醍醐味
• 今回 – 損失項: Farwell & Donchin システムの解読方法を素直に表現した形 (2x6クラス分類)
– 正則化項:低ランク分解を促すSchaden 1-‐ノルム
• それなりにもっともらしい時空間フィルタが得られた。
テンソルのランク
定義
ただし
X ∈ Rn1×···×nK (K階テンソル)
はランク1 (ベクトルの外積で書ける)
となる最小の Rを X のランクという。
• ある R で分解が可能かチェックするのはNP完全 • ランクの決定はNP困難 • このような分解を CANDECOMP / PARAFAC 分解 (CP分解)とよぶ
X =R
r=1
Ar
Ar Ar =
テンソルのランクの不思議な性質1 • 分解の一意性 – 行列の分解 X=ABT は一意性がない
– テンソルのCP分解
は一意性を持つ場合がある
(定数倍の自明な自由度をのぞく)
• 一意性の十分条件 (Kruskal 77) kA + kB + kC ≥ 2R + 2
kA は行列Aの k-‐rank(k本の列ベクトルが線形独立となる最大のk)
X =R
r=1
ar br cr = [[A,B, C]]
(以降、説明を簡単にするために3階のテンソルを考える)
テンソルのランクの不思議な性質2
• 閉じていない
X = a1 b1 c2 + a1 b2 c1 + a2 b1 c1
Xはランク3
Yはランク2
Y = α(a1 +1
αa2) (b1 +
1
αb2) (c1 +
1
αc2)− αa1 b1 c1
X − YF → 0 (α→∞)
Kolda & Bader 2009
Tucker 分解の意味のランク • Tucker分解 [Tucker 66]
X n1
n2 n3
Xijk =
r1
a=1
r2
b=1
r3
c=1
CabcU(1)ia U (2)
jb U (3)kc
Cr1 r2
r3 = ×1 ×2 ×3U(1) n1
r1 U(2) n2 r2
U(3) n3 r3
コア ファクター
• CP分解はコアテンソルが対角 (r1=r2=r3) の場合 • Tucker 分解のランクは軸(モード)ごとに異なる
テンソルのモード-‐k 展開 (行列化)
I1
I2 I3
I1
I2 I2 I2
I3
I1
I2 I3
I2
I3 I3 I3
I1
X(1)
X(2)
モード-1 行列化
モード-2 行列化
数学的には要素の順番のパーミュテーション
モード-‐k展開とモード-‐kランク
モード-1 行列化
モード-2 行列化
モード-3 行列化 Tuckerの意味でのランクはX(k)の行列としてのランクに等しい
X = C ×1 U1 ×2 U2 ×3 U3
r1
r2 r3C
I1r1U1 I2
r2U2
I3
r3U3
X(1) = U1C(1)(U3 ⊗U2)
X(2) = U2C(2)(U1 ⊗U3)
X(3) = U3C(3)(U2 ⊗U1)
rank(X(1))=r1
rank(X(2))=r2
rank(X(3))=r3
CP分解 / Tucker分解 ランクの比較 行列の 特異値分解
CP分解 Tucker分解
ランクの決定 多項式 NP困難 多項式 (各モード展開してSVD)
分解の計算 多項式 NP困難 多項式
分解の一意性 なし あり なし
コア 対角 対角 r1 x r2 x r3テンソル
Tucker分解の方が特異値分解の自然な拡張になっているかも
テンソルの低ランク化を促す正則化項
X
S1=
K
k=1
γkX(k)S1
テンソルに対する overlapped Schaden 1-‐ノルム
モード-k 行列化のSchatten 1-ノルム
• ノルムの公理を満たす • 各モードを γk の強さで低ランクになるよう正則化 • これを使えば低ランクテンソルの推定が凸最適化でできる
(Cf. Liu+09, Signoretto+10, Tomioka+10, Gandy+11)
テンソル補完への応用
• 最適化問題
minimizeX
X
S1,
subject to Xijk = Yijk ((i, j, k) ∈ Ω)
0 0.2 0.4 0.6 0.8 1
10 3
100
Fraction of observed elements
Estim
atio
n er
ror
ConvexTucker (exact)Optimization tolerance
ここで急激に減少する→なぜか?
圧縮センシング業界における相転移
• Donoho-‐Tanner Phase TransiXon
minimizex
x1
subject to Ax = y
Donoho & Tanner “Precise Undersampling Theorem”
確率1で成功
確率1で失敗
真の非ゼロ要素の割合
観測要素の割合
A: n x N 行列 (n << N)
行列補完における相転移
Recht et al (2007) “Guaranteed Minimum-‐Rank SoluXons of Linear Matrix EquaXons via Nuclear Norm MinimizaXon”
全要素数n2に対する観測pの割合
観測pに対する行列の自由度 r(2n
-‐r) の割合
解析:問題設定
観測モデル
ガウス雑音
最適化問題
正則化定数
観測作用素 X(W) = (X 1, W , . . . , X M , W)
データ尤度 正則化項
(N =K
k=1 nk)X : RN → RM
W = argminW∈Rn1×···×nK
12y − X(W)2
2 + λM
W
S1
yi = X i, W∗ + i (i = 1, . . . , M)
W∗ : 真のテンソル ランク(r1,...,rK)
仮定:制約強凸性
• 正の定数 κ(X) が存在してΔ∈CなるすべてのテンソルΔに関して
が成り立つ。(集合Cはあとで定義) 注意 • κ(X)はXの最小特異値に対応 • M>N (パラメータ数) なら普通の仮定 • 集合Cをいかに狭く取るかがポイント
(cf. Negahban & Wainwright 11)
1M
X(∆)22 ≥ κ(X)
∆2
F
定理1 • 最適化問題の解
• ただしノイズ-‐デザイン相関
と仮定
• 制約強凸性が成り立つと仮定
• この時
W
λM ≥ 2X∗()
mean
/M
X∗() =M
i=1 iX i
W −W∗F≤ 32λM
κ(X)1K
K
k=1
√rk
ランクの2乗根の和が問題の難しさを決めている
X
mean:=
1K
K
k=1
X(k)
S∞
補題: Hölderっぽい不等式
注) と は双対ノルムにはなっていない(もっとタ
イトな不等式が存在する)
X
mean:=
1K
K
k=1
X(k)
S∞
W ,X ≤W
S1
X
mean
ただし、
XS∞:= max
j∈1,...,mσj(X)
モード-k 行列化のスペクトルノルム
·
S1
·
mean
2つの特殊な場合 • もうちょっと精密に考える必要
– 制限強凸性の定数 κ(X)は?
– 正則化定数λMはどう選ぶ?
• ノイズあり行列分解(全部の要素が見えている) – 制限強凸性:ほぼ自明
– 正則化定数λMをノイズ-‐デザイン相関 の強さに応じて選ぶ
• ランダムガウスデザイン – 制限強凸性:あまり自明ではない(ただしNegahban & Wainwrightの結果が使える)
– 正則化定数λMをノイズ-‐デザイン相関 の強さに応じて選ぶ
W −W∗F≤ 32λM
κ(X)1K
K
k=1
√rk
X∗()
mean
X∗()
mean
ノイズあり行列分解の場合
• 全部の要素が観測可能 (M=N)
• 正則化定数
X(∆)22 =∆
2F
⇒ κ(X) = 1/M
λM ≥ 2X∗()
mean
/M
EX∗()
mean
≤ σ
K
K
k=1
√nk +
N/nk
n1n2
n3
(N =K
k=1 nk)
(ランダム行列の理論から) しかも は高い確率で平均の周りに集中する
X∗()
mean
(強凸性OK)
定理2 • 全部の要素が見えている場合 (M=N)、
正則化定数
のように取ると
ただし、 n−11/2 :=
1K
Kk=1
1/nk
2, r1/2 :=
1K
Kk=1
√rk
2
また を正規化ランクと呼ぶ n−11/2r1/2
W −W∗2F
N≤ Op
σ2n−11/2r1/2
λM ≥ 2σK
Kk=1
√nk +
N/nk
/N
! !"# !"$ !"% !"& '!
!"(
'
'"(
#)*'!
!$
+,-./01234*-/56*775!'77'8#77-77
'8#
93/5*:;</-34*3--,-
*
*
:123=>(!*(!*#!?*!9=!"''8+
:123=>'!!*'!!*(!?*!9=!"##8+
実験結果: ノイズありテンソル分解 (ノイズ小 σ=0.01)
W −W∗2F
N
平均2乗誤差
正規化ランク
• 正則化定数の取り方は大きさのみに依存し,ランクに依らない • 平均2乗誤差は正規化ランクに比例
! !"# !"$ !"% !"& '!
!"!!#
!"!!$
!"!!%
!"!!&
!"!'
!"!'#
()*+,-./012*,342553!'55'6#55*55
'6#
70,3289:,*0120**)*
2
2
8./0;<=!2=!2#!>2!7;!"?&6(
8./0;<'!!2'!!2=!>2!7;'"=6(
実験結果: ノイズありテンソル分解 (ノイズ大 σ=0.1)
W −W∗2F
N
平均2乗誤差
正規化ランク
• 正則化定数の取り方は大きさのみに依存し,ランクに依らない • 平均2乗誤差は正規化ランクに比例
ランダムガウスデザイン (Xi が独立同一なガウス分布から出ている) 場合
• 正則化定数
• 制約強凸性: ちょっと複雑
λM ≥ 2X∗()
mean
/M
EX∗()
mean
≤ σ√
M
K
K
k=1
√nk +
N/nk
適当な定数 正規化ランク
ならOK (κ=1/64) M
N≥ cn−11/2r1/2
(M: サンプル数, N: テンソルの要素数)
n1n2
n3
(N =K
k=1 nk)
定理3 ランダムガウスデザインの場合、
1. 観測の要素数に対する割合
2. 正則化定数
M
N≥ cn−11/2r1/2
λM ≥ 2σK
Kk=1
√nk +
N/nk
/√
M
のもとで W −W∗2F
N≤ Op
σ2n−11/2r1/2
M
(制約強凸性の条件)
実験 テンソル穴埋め (ノイズなし) ⇒ λ→ 0
0 0.2 0.4 0.6 0.80
0.2
0.4
0.6
0.8
1
Normalized rank ||n 1||1/2||r||1/2
Frac
tion
at E
rror<
=0.0
1
size=[50 50 20]size=[100 100 50]
0 0.2 0.4 0.6 0.8 1
10 3
100
Fraction of observed elements
Estim
atio
n er
ror
ConvexTucker (exact)Optimization tolerance
ここでの全要素に対する観測要素の割合
正規化ランク
行列の場合とテンソルの場合
0 0.1 0.2 0.3 0.40
0.2
0.4
0.6
0.8
1
Normalized rank ||n 1||1/2||r||1/2
Frac
tion
at E
rror<
=0.0
1
size=[50 20]size=[100 40]
0 0.2 0.4 0.6 0.80
0.2
0.4
0.6
0.8
1
Normalized rank ||n 1||1/2||r||1/2Fr
actio
n at
Erro
r<=0
.01
size=[50 50 20]size=[100 100 50]
行列穴埋めの場合 テンソル穴埋めの場合
どちらもノイズなし
テンソル分解編のまとめ
• テンソルは数学的対象として非自明な点が多い • Tucker分解はSVDと関係があるので扱いやすい • Tucker分解を凸最適化で解く手法を提案した • 解析結果と実験結果はそこそこ一致している
– Normalized rank
• 課題: – 行列の場合とテンソルの場合の違いはなぜ?
– 制約強凸性は満たされているのか? – サンプル数だけで復元可能性が決まるのか? – 一部のモードのみ低ランクな場合は?
– 応用・・・
参考文献 • Wolpaw, Birbaumer, McFarland, Pfurtscheller, Vaughan (2002) Brain-‐computer interfaces for communicaXon and
control. Clin. Neurophysiol. 113, 767–791.
• Farwell & Donchin (1988) Talking off the top of your head: toward a mental prosthesis uXlizing event-‐related brain potenXals. Electroencephalogr. Clin. Neurophysiol. 70 (6), 510–523.
• Tomiok a & Müller (2009) A regularized discriminaXve framework for EEG analysis with applicaXon to brain-‐computer interface. Neuroimage, 49 (1), 415-‐432.
• Kolda & Bader (2009) Tensor decomposiXons and applicaXons. SIAM Review, 51(3):455–500.
• Tucker (1966) Some mathemaXcal notes on three-‐mode factor analysis. Psychometrika, 31(3):279–311.
• Gandy, Recht, & Yamada (2011) Tensor compleXon and low-‐n-‐rank tensor recovery via convex opXmizaXon. Inverse Problems, 27:025010.
• Liu, Musialski, Wonka, & Ye. (2009) Tensor compleXon for esXmaXng missing values in visual data. In Prof. ICCV.
• Signoredo, de Lathauwer, & Suykens (2010) Nuclear norms for tensors and their use for convex mulXlinear esXmaXon. 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 soluXons of linear matrix equaXons via nuclear norm minimizaXon. SIAM Review, 52(3):471–501.
• Tomioka, Hayashi, & Kashima (2011) EsXmaXon of low-‐rank tensors via convex opXmizaXon. Technical report, arXiv:1010.0789, 2011.
• Tomioka, Suzuki, Hayashi, & Kashima (2011) StaXsXcal performance of convex tensor decomposiXon. Advances in NIPS 24. 2011, Granada, Spain.