誤り訂正出力符号の拡張による...
TRANSCRIPT
-
誤り訂正出力符号の拡張による多値判別法とその応用
奈良先端科学技術大学院大学
石井 信
竹之内高志 大羽成征 行縄直人
-
多値判別の一般的枠組み
{ } ラベル入力、・ :,,1: Gy L∈x判別関数・ :),( RyF ∈x
でラベルを決める),(maxarg yFy x( , )F yx をどの様に構成するのか?
の同時分布・ yyp ,:),( xx( , ) ( ( | ))F y u p y=x x とするとベイズ最適
は単調増加関数)(zu
-
• 多値判別関数 F(x,y) を直接構成する– Fisherの(線形)判別関数– Multi-class SVM, AdaBoost, …
• F(x,y) を2値判別関数の組み合わせで構成する– Error correcting output coding (ECOC) に基づく手法
• Bradley-Terryモデル(Hastie & Tibshirani, Yukinawa, et al.)– クラス所属確率 p(y|x) を推定できる– 確率出力を持つ2値判別器が必要– 例題ごとに事後確率を計算する必要がある
• Loss-based decoding (Dietterich & Bakiri, Allwein, et al.)– 単純な Hamming decoding を含む– 実装が簡単– クラス所属確率に関しては言及しない
-
ECOCの定式化• コード表W : p×G 行列
1 1 11 1 11 1 11 1 01 0 10 1 1
W
− −⎛ ⎞⎜ ⎟− −⎜ ⎟⎜ ⎟− −
= ⎜ ⎟−⎜ ⎟
⎜ ⎟−⎜ ⎟⎜ ⎟−⎝ ⎠
2/)123(max 1 +−= +GGp
Class 1 2 3
2値判別12値判別22値判別3:
30190256165432
-
ハミング復号1
1
111101
y⇓
−⎛ ⎞⎜ ⎟⎜ ⎟⎜ ⎟−
= ⎜ ⎟−⎜ ⎟⎜ ⎟⎜ ⎟⎜ ⎟⎝ ⎠
z
111110
n
n
y⇓
⎛ ⎞⎜ ⎟−⎜ ⎟⎜ ⎟−
= ⎜ ⎟−⎜ ⎟⎜ ⎟⎜ ⎟⎜ ⎟⎝ ⎠
z
L
LM
Wix
iz~
{ }1,1)(1 −∈xf{ }1,1)(2 −∈xf
{ }1,1)( −∈xf p ⎠
⎞
⎜⎜⎜⎜⎜⎜⎜⎜
⎝
⎛
−−
−−−−−−−−
110101011111111111
ハミング距離最小のコードワードによってラベルを決める
-
基本コンセプト))(,),((~2 1 xxz pff L=値判別器
⎟⎟⎟⎟⎟⎟⎟⎟
⎠
⎞
⎜⎜⎜⎜⎜⎜⎜⎜
⎝
⎛
=
)(
)(
)(
~2
1
ip
i
i
i
f
f
f
x
x
x
z
M
M
M
( , )
111101
i i
i
y⇓
−⎛ ⎞⎜ ⎟⎜ ⎟⎜ ⎟−
= ⎜ ⎟−⎜ ⎟⎜ ⎟⎜ ⎟⎜ ⎟⎝ ⎠
x
z
各判別器の判別誤りビット反転ノイズ⇔
)|~( zzp確率モデル
)~|(maxarg zzz p)()|~()~|( zzzzz ppp ∝
復号法
-
確率モデルの仮定
• 3元(1,0,-1)入力、2元出力(1,-1)通信路• 多値判別における仮定
– 各2値判別器(ビット)は独立– 判別器ごとにノイズの性質が異なる
• パラメータは j ごとに決める
– 非対称False positive rate ≠
False negative rate
1 2 , 0.5fε ε≠ ≠
-
確率モデル1
( ) 2),,()(~exp),,|~( 1 jzjjjjjjjjjjjj zzzzzp γβψγβδγβ −+=・
は正規化定数)(),,,( 21 jjjjz δψγβψ)|~()|~( 1 jj
pj zzpp =Π=zz・
( ) 212 )(~exp jzjjjz −−× δψδ
)(sy
1z
2z
M
pz
1~z
2~z
M
pz~
ŷ
-
通信路の同定
∑=
=n
i
iipZL1
);|~(log);~( δγ,β,zzδγ,β,・
);~(maxarg)ˆˆˆ( δγ,β,δ,γ,β δγ,β, ZL=
称性のコードに対する非対0=jz
1
I( 1, 1)ˆ : false negative rate
I( 1)
i ij ji
j iji
z zz
ε= = −
==
∑∑
%
2
I( 1, 1)ˆ : false positive rate
I( 1)
i ij ji
j iji
z zz
ε= − =
== −
∑∑
%
∑∑
=
===
iij
iij
ij
j zzz
f)0I(
)1~,0I(ˆ
jj
jjj
21
21
ˆˆ)ˆ1)(ˆ1(
log41ˆ
εεεε
β−−
=・j
jj f
fˆ1
ˆlog
21ˆ
−=δ
)ˆ1(ˆˆ)ˆ1(
log41ˆ
21
21
jj
jjj εε
εεγ
−
−=
が小さい程大きいjj 21 ˆ,ˆ εεな程大きい
がアンバランスjj 21 ˆ,ˆ εε
-
ラベルの復号
)ˆˆˆ;~()()ˆˆˆ;|~()~|(
δ,γ,βzzδ,γ,βzzzz
pppp =・
⎪⎩
⎪⎨
⎧==
= ∑=otherwise0
if)(I1)( 1
列の判別問題では
jWjynp
n
i
i zz
復号)で復号(MAP)~|(maxargˆ zzz z p=
パターンのみは探索すべき Gz
個のパターンは本来 p2z
-
Hamming decodingとの関連),,1(0,0:)( pjyp jj L=== δγ一様分布、・
⎟⎟⎠
⎞⎜⎜⎝
⎛∝⇒ ∑
=
p
jjjj zzp
1
~exp)~|( βzz
∑=
−=
p
j
jjj
zzp
1 2
~1maxarg)~|(maxarg βzz zz
Hamming distance⇒重みつき
ハミング復号の仮定各2値判別器が同じ性質を持つ2種の過誤の割合が等しい各クラスが同じサンプル数を持つ
-
確率モデル2
∑ ΒΒ=z
zzz~
)~exp(/)~exp()|~( yT
yTyp
ベクトル1: ×Β py各判別器は独立
の列しか値をとれないはWzz p ),,( 1 L=z
pz~
1~z
y2
~z
Mŷ
My
1z
2z
M
pz
1~z
2~z
M
pz~
ŷ
-
数値実験:人工データ
• 50回の繰り返し– 200点の訓練データ、2000点のテストデータ
• 評価モデル– モデル1およびモデル2– 各2値判別器はSVM– カーネルはRBFカーネルと多項式カーネル
• 比較モデル– Multi-class SVM (C-SVM, Spoc-SVM)– カーネルはRBFカーネルと多項式カーネル– 各2値判別器をSVMとしたECOCでHamming decoding
-
数値実験:人工データの例
−1.0 −0.5 0.0 0.5 1.0
−1.
0−
0.5
0.0
0.5
1.0
x1
x2
-
数値実験:訓練誤差
0.2
0.3
0.4
0.5
0.6
Tra
inin
g er
ror
Spoc.RbfSpoc.PolyC.RbfC.PolyHamm.RbfHamm.PolyProp1.RbfProp1.PolyProp2.RbfProp2.Poly
-
数値実験:テスト誤差
0.25
0.30
0.35
0.40
0.45
0.50
0.55
0.60
Tes
t err
orSpoc.RbfSpoc.PolyC.RbfC.PolyHamm.RbfHamm.PolyProp1.RbfProp1.PolyProp2.RbfProp2.Poly
-
UCIデータセット:テスト誤差
0.13424±0.011780.04852±0.00715
0.16400±0.01278 0.06805±0.01000
0.14862±0.012410.07595±0.01323
Glass
0.01291±0.004190.03360±0.00996
0.01331±0.004880.03794±0.00914
0.01834±0.008170.03286±0.00793
Wine
0.04027±0.007150.03380±0.00859
0.03967±0.007840.03667±0.00790
0.04293±0.008960.03600±0.00858
Iris
0.151430.07619
0.170480.05810
0.164000.07381
Segmentation
0.121500.14550
0.120500.14050
0.117500.16400
Satimage
0.035010.03355
0.053090.03384
0.050760.04142
Ann-thyroid
Proposed: RBFProposed: Poly
C-svm: RBFC-svm: Poly
Spoc-svm:RBFSpoc-svm: Poly
-
マルチカテゴリ問題
• マルチカテゴリ問題とは– 入力に複数のラベル(タグ)が付与されている問題
• 例)WEBにおけるテキスト分類、Gmail等
仕事
遊び
友人
メルマガM
メール1 1
1
1−
1−メール2
1−
1
1
1−
• 既存手法:– 各カテゴリを判別問題として解く– 多項分布の拡張(PMM)– SVMを応用
カテゴリ
-
2値判別器のナイーブな適用
カテゴリ1
カテゴリ1以外
判別器f1
判別器f2
カテゴリ2
カテゴリ2以外
判別器f3
カテゴリ3以外
カテゴリ3
入力x カテゴリラベル列y 1 2 3
( 1, -1, -1)
( 1, 1, -1)( 1, -1, 1)
(-1, 1, 1)
1x2x3x4x
))(3),(2),(1(:
xxx fff予測
-
判別器の誤り⇔ビット反転ノイズ
を同定)|)(),(( yp xgxf
ECOCによるマルチカテゴリ分類
入力 カテゴリラベルy1 2 3
( 1, -1, -1)
( 1, 1, -1)( 1, -1, 1)
(-1, 1, 1)
1x2x3x4x
パリティビット列z1 2 3 4 5
( -1, 1, -1, 0, 0)
( 0, 1, -1, 0, 1)( 1, -1, 1, 1, 0)
( 1, 0, 1,-1,-1)+
),,()( 321 fff=xf ),,,,()( 54321 ggggg=xg
パリティz=z(y)はカテゴリラベル列yから一意に決まる
-
マルチカテゴリの推定
• カテゴリラベル列 y の推定(MAP復号)
• 問題点:可能な y のバリエーションは 2カテゴリ数
– 事前分布による拘束• (例)各入力は一度に多くのカテゴリに含まれない
– 近似的周辺化アルゴリズムの援用• Belief propagation など
)()|)(),(())(),(|( ypypyp xgxfxgxf ∝
))(),(|(maxarg xgxfypy
-
実験用データ
1
1
111
11
1
1
11
1
1
11
1
1
11
1
1
1
1 1
1
1
1
1
11
1
1
11
1
11
1
1
1
1
1
1
1
11
11 1
11
1
1
1
11
1
1
1
11
1
11
1
1
5 10 15 20
510
1520
x1
x2
22
2
2
2
2
2
2
2
2
22
22
22
2
2 2
2
2 22
2
2
22
2
22
2
22
2
2
22
22
2
3
3
3
3
3
3
3
3
333
3
3
3
3
33
3
33
33
3
33 3 3
33
3
3
3
3
3 3
333
3
3
33
3
3
3
3
3
3 3
3
3
33
33
3
3
4
44
4
4
4
44
4
4
44
4
4
4
4
444
44
4
44
4
44
4
4
4
4
4
44
44
4
4
4
4
444
44
44
44
44
4
4
4
4
4
55
5
5
5
5
55
55555 5
55
5
555555
5
5
555
-
結果:カテゴリの誤推定率
20 40 60 80 100
0.24
0.26
0.28
0.30
0.32
Code length of parity
Tes
t err
or SVMProposed method
-
ここまでのまとめ
• ECOCの枠組みに基づき、多数の2値判別器の組み合わせによる多値判別法を構成
– 判別誤りの非対称性を考慮– 特殊な場合としてHamming decodingを含む– Multi-class SVMよりも優れた性能
• マルチカテゴリ問題への応用– カテゴリラベルにパリティを付加し冗長にすることで性能向上
• Encoding問題への拡張
-
UCIデータセットの概要
69214Glass33178Wine34150Iris 71921002102310Segmentation636200044356435Satimage321342837727200Ann-thyroid#Classes#Attributes#Test#Training#TotalDataset
CV fold-5100×
5-fold cross-validationを100回行い、平均挙動を見る
-
UCIデータセット:訓練誤差
0.04509±0.003100.00676±0.00143
0.08886±0.007810.00581±0.00119
0.06481±0.006200.00931±0.00204
Glass
0.00445±0.001060.00000±0.00000
0.00476±0.001230.00000±0.00000
0.00063±0.000780.00000±0.00000
Wine
0.02290±0.002530.02343±0.00248
0.02478±0.002660.02408±0.00283
0.02248±0.002410.02422±0.00239
Iris
0.123810.03333
0.171430.00952
0.114290.02857
Segmentation
0.104620.11995
0.106880.10485
0.095150.12469
Satimage
0.025190.02386
0.047450.02333
0.043480.02572
Ann-thyroid
Proposed: RBFProposed:Poly
C-svm: RBFC-svm:Poly
Spoc-svm: RBFSpoc-svm:Poly
-
多重検定の問題
• (典型例)遺伝子発現に基づく有意遺伝子の抽出およびそれを用いた判別
良いスコア(検定統計量)の選び方良いしきい値の決め方検定誤差の見積もり方
各個検定が最適であること
多重検定が全体として最適であること
vs.
-
遺伝子 i の発現レベル xiμi1 μi2
σi
μi1 = μi2対立仮説 H1: gene i is active
対立モデル尤度:∏=
=M
jiiDjijiiii xNXg
1
221 ),;(),,|( σμσμμ
μi1 = μi2帰無仮説 H0: gene i is inactive
∏=
=M
jiijii xNXf
1
2 ),0;()|( σσ帰無モデル尤度:
class 1(tumor samples)
class 2(non-tumor samples)
有意遺伝子選択の問題
-
Neyman-Peason’s lemma
• 単純仮説(パラメータを持たない)が前提• 非単純仮説では最尤推定値をプラグインした尤度比が漸近的に最強
「尤度比は最強の検定スコアである」
一定の有意水準 P( FP ) = αのもとで、検出力 ( 1−P( FN ) = 1−β ) が最大
対立モデルの尤度
)ˆ|()ˆ|(
i
iXf
Xgϕ
θ
)()(
XfXg
帰無モデルの尤度
-
遺伝子の有意性スコア
• t-score (正規モデルの尤度比スコア)– i.e. S/N ratio
• SAM score (Tusher, Tibshirani & Chu, 2001)
• Empirical Bayes score (Efron, 2002)– 仮説の事後確率をスコアとする– 事前分布 P(σi) に関して多重性を利用した経験ベイズ推定値に基く
i
ii
Smm || 21 − mij : 各クラス内標本平均
Si : クラス内標準偏差(両クラス共通)
μi1 μi2
σi
0
21 ||SSmm
i
ii
+−
S0 : 全遺伝子で共通の定数
さまざまな細かい改良
-
多重検定における最良さ
• 多重性を利用した場合に、単純な個別検定の繰り返しよりも良い検定ができないか?
• 「最良」の多重検定スコアの定義
– FPR: false positive rate (FDR) (第一種の過誤)– FNR: false negative rate (第二種の過誤)
(Storey, 2005)
EFP = E[FPR] が同程度である統計的検定の中でETP = E[1-FNR] を最大にする統計的検定をoptimal discovery procedure (ODP) と呼ぶ
-
ODP lemma (Storey, 2005)
• 「以下の統計量に基く検定は ODP である」
• 前提:– N個の単純帰無仮説 f1(X), f2(X), ..., fN(X)と
N個の単純対立仮説 g1(X), g2(X), ..., gN(X)に基く多重検定–
)(...)()()(...)()()(
21
21
XfXfXfXgXgXgXS
NMM
MODP +++
+++=
++ ∑∑
∈
∈=
0
1
)(
)(
Gii
Gii
Xf
Xg
ただし、 G1 = { 1, 2, ..., M } は対立仮説が真である遺伝子の集合、G0 = { M+1, M+2, ..., N } は帰無仮説が真である遺伝子の集合
)(XSODP を全遺伝子 i=1,…,N に対して共通の統計量として用い、共通のしきい値を設定
-
漸近ODP
• 各X を構成するサンプル数無限大の極限で一致
∑∑
∈
∈=
0
1
)(
)()(
Gii
Gii
ODP Xf
XgXS
∑∑
∈
=
0ˆ
)ˆ|(
)ˆ|()(ˆ
Giii
iii
ODP Xf
XgXS
φ
θ
非単純仮説では帰無・対立仮説の確率密度関数は最尤推定パラメータに基いて決定
実際の多重検定状況では真の集合 G0, G1 は未知そこで適当なしきい値にもとづく尤度比検定による決定で近似
-
潜在変数モデルを対立仮説とした遺伝子選択
center of class kfor gene i
intra-class varianceof gene i
(common amongclasses k=1,2)
class labelprior of class k
expression levelof gene i at sample j
∏=j
jii xpXg )()|(
)(θ
• 各サンプル j の所属クラス k が必ずしも観測されない場合
• 教師無し遺伝子選択・準教師付き遺伝子選択
-
教師あり、教師なし、準教師ありスコア
• 教師付き: P(k) P( k | y(j) )= I( k = y(j) )– 帰無仮説モデル H0: μi1 = μi2– 対立仮説モデル H1: μi1 = μi2
このとき、尤度比スコアはt-検定で使われる S/N 比 と全く同等
-
隠れ変数モデルに対するODP
•ODPp パラメータを共有する
•ODP パラメータと隠れ変数を共有する
)ˆ|()(ˆ ii XgXg θ=
)ˆ,|()(ˆ iii ZXgXg θ⋅⋅=
∑∑
∈
=
0ˆ
)(ˆ
)(ˆ)(ˆ
Gii
ii
ODP Xf
XgXS
)|,...,(maxargˆ )()1( θθθ
Miii xxp=
∑∏=
=k
M
j
ji
ji
ji kpkxp
1
)()()( )|(),|(maxarg θθθ
)ˆ,|(
,}{
)()(def
2:1,:1
ij
ij
iijk
kMjijki
xkpZ
ZZ
θ=
= ==⋅⋅
∏ ∑=
⎟⎠
⎞⎜⎝
⎛=
M
j kiik
jiijk xNZ
1
)( )ˆ,ˆ|( σμ
∏ ∑=
⎟⎠
⎞⎜⎝
⎛=
M
j kiik
jixNkP
1
)( )ˆ,ˆ|()( σμ
-
評価用人工データ
癌
非癌
active genesinactive genes
癌/非癌以外の8種の特徴量のいずれかに関して活性である遺伝子
癌/非癌ラベルに対して活性である遺伝子
-
教師あり、教師なしスコア
activeinactive
activeinactive
Supervised score が検出したい遺伝子分類
Unsupervised score が検出したい遺伝子分類
癌
非癌
-
教師なしスコアの比較
LikelihoodRatio
ODPpθ のみ共有
ODPθ と Z を共有
-
準教師ありスコアの比較
tumor non-tumor
unknown samples
Observation
active genesinactive genes
-
準教師ありスコア:実データ
全N症例のクラスラベルのうち一部~全部を隠した場合のスコアランキングの変化
前立腺がんデータ(公開)- 52 癌組織× 50 正常組織- 約 1万遺伝子
オリジナルランキングと一部ラベルに基くランキングとの間の Spearman 順位相関
-
準教師ありスコア:実データ
大腸がんデータ- 40 癌組織× 22 正常組織- 約 2000遺伝子
ラベルの順位相関 オリジナルの上位 1%遺伝子検出に関するAUC
-
多重検定スコアのまとめ
• ODP は、多重検定スコアの最適性をNeyman-Pearson の拡張によって定義する
• 隠れ変数モデルを対立仮説とするとき、ODP には 2種類の自然な実装法がある
• 隠れ変数を含む多重検定は、隠れ変数情報の共有によって性能が大きく向上する
• 理論的側面の整備は不十分