Hino, Murata-abstract

非線形判別の概観と応用
日野英逸,村田昇 1
Waseda University, Okubo 3–4–1, Shinjuku-ku, Tokyo, 169–8555, Japan
Abstract. 機械学習及びパターン認識において,データが属するクラスの
判別は最も基本的な問題である.多くの場合,線形判別モデルのみで問題が
解決することは少なく,何らかの方法でモデルに非線形性を導入する必要が
ある.本発表では,機械学習及びパターン認識の立場から非線形判別手法を
概観する.特に,非線形特徴抽出手法として代表的なカーネル法と,アンサ
ンブル学習に基づく非線形判別手法として代表的なランダムフォレストにつ
いて,実例を交えつつ解説する.
1
初めに
ある母集団からいくつかのサンプル x ∈ Rp が抽出され,各サンプルに対してそ
れが属するクラス yi ∈ {c1 , c2 , . . . , ck } が与えられているとき(学習データ D =
{(xi , yi )}ni=1 ),将来与えられる未知のサンプルが属するクラスを予測する問題を
判別問題と呼ぶ.以下では x を説明変数と呼び,X をその背後にある確率変数と
する.また,クラスラベル y の従う確率変数を Y で表す.説明変数が観測され,
そのなかから判別に有効な変数を用い関数(判別関数)を推測する.未知のサンプ
ルに対する判別関数の値を算出し,そのサンプルが属するクラスを判定する.こ
うした判別問題,あるいはデータを用いた判別器の学習問題は至る所に現れ,パ
ターン認識の立場 [1],機械学習の立場 [2],そして統計の立場 [3] からそれぞれ研
究が進められている.
クラスは一般には多クラスであるが,ここでは最も基本的な 2 クラスを扱い,
判別関数が説明変数の各成分の線形関数として書ける場合を考える.これは 2 値
線形判別と呼ばれる問題で,判別関数は
f (x; w, b) = w⊤ x + b,
⊤
= w̃ x̃,
w ∈ Rp , b ∈ R
⊤
⊤
(1)
⊤
⊤
w̃ = (w , b) , x̃ = (x , 1)
で定義され,式の値の正負に応じてサンプル x のクラスラベルを +1 あるいは −1
と予測する.以下では簡単のために斉次座標 x̃ を用いて線形モデルを表現する事
にして,˜も省略する.線形モデルは学習の容易さ,モデルパラメタの解釈の容易
さから広く用いられているが,実用上は線形モデルで十分な予測精度が得られな
い場合も多く,そうした場合は何らかの形で非線形判別モデルを実現する必要が
ある.非線形判別の実現方法は数多くあるが,
「説明変数を非線形変換した後に線
形判別手法を適用」するアプローチと,初めから「非線形判別関数を設計」する
アプローチに大別することができる.本発表ではこのふたつのアプローチの代表
的な手法を簡単に説明し,特に前者の代表としてカーネル法に基づく非線形判別
と,後者の代表としてランダムフォレストによる非線形判別を,実例を交えつつ
紹介する.
2
日野英逸,村田昇
2
非線形特徴抽出
機械学習,パターン認識においてよく利用される線形判別手法として,Fisher の線
形判別(Fisher’s linear Discriminant Analysis; FDA [4])と,サポートベクター
マシン(Support Vector Machine; SVM [5])が挙げられる.Fisher の線形判別分
析は,サンプルとそのクラスラベルが観測された状況で,クラス内のデータの分
散を小さく保ちつつ,クラス間の分散が大きくなる射影方向 w を求める手法であ
る.各クラスのデータが共分散構造の等しい正規分布に従っている時は,FDA は
最適なクラス分離を与える方向を発見することができる.線形モデルで定まる超
平面によるクラス分離を考えた時,サンプルを分離する超平面は一般に無数に存
在する.サポートベクタマシンは,そのような超平面のうち,データの線形分離
が可能な場合に一番近いサンプル点までの距離(これをマージンという)が最も
大きいものを選ぶような線形判別モデルである [6].
こうした線形判別手法は理論的解析が容易であり,研究の蓄積も多い.線形
判別手法の利点を利用しつつ非線形性を導入する方法としては,説明変数を非線
形変換した後に線形判別手法を適用するというアプローチが自然である.こうし
た特徴抽出手法は特にパターン認識の分野で盛んに研究されており,問題に応じ
て応答変数をいかに変換するかが初期のパターン認識研究の大きな課題であった.
例えば日本語文字認識において有名な方向線素特徴量 [7] は,文字画像の小領域
を構成する線が縦,横,斜め上,斜め下の4方向のどの方向であるかに基づく特
徴量である.例えば 64 × 64 ピクセルの画像(4096 次元の説明変数)を 16 × 16
ピクセルのマス目に分けて,それを 8 ピクセルずつずらしながら,その 16 × 16
の領域内にある方向線素の数を調べる.各小領域内の線の方向は,パターンマッ
チングにより判断する.この方法で調べると,7 × 7 の領域を調べることになり,
その領域で 4 方向の線素の数を調べるので,7 × 7 × 4 の 196 次元の特徴量を抽
出することになる.この方向線素特徴量は現在でも文字認識の基本技術として利
用されているが,これは日本語文字認識という特定の問題に対していわば「匠の
技」により設計された非線形特徴量であり,一般の問題に対してこのように複雑
な特徴抽出手法を設計し,実用において高い性能を得ることは困難である.
2.1
カーネル法
本節では,必要最小限の制約を満たすようなカーネル関数によって非線形特徴抽
出を簡便に実現する手法である,カーネル法について概説する.
非線形判別のための一つのアプローチとして,k 近傍法やニューラルネットワー
クといった非線形判別器を用いる方法があり,これは次節で述べる.もう一つの
アプローチとして,データを非線形な写像により特徴空間に写像した上で,線形
の判別器を適用するというものがある.この手法のメリットとしては,線形の判
別器は非線形の判別器と比較して実装が容易で,データを変換してしまえば既存
のソフトウェアがそのまま使えることが多いという点がある.また,線形判別器
は理論的解析も比較的容易であり,汎化性や収束性を詳しく議論できるという点
でもメリットがある.一方,線形判別器により十分な性能が期待できるような特
徴空間は一般に高次元であり,無限次元空間にも成り得る. そのため全てのデー
タに対してこうした高次元写像を陽に求めるための計算コストが大きくなるとい
うデメリットがある.
非線形判別の概観と応用
3
カーネル法は,線形のモデルで非線形の問題を解くための上述のアプローチ
を, 特徴空間への写像を陽に計算することなく実行するための手法の総称である.
利用する判別手法がデータの内積のみを用いて記述出来る場合,カーネル法では
特徴空間におけるデータの内積と同値な 2 変数関数 (カーネル関数) を用いて判別
に必要な種々の計算を実行する.カーネル法全般に関する成書としては [8] や [9,
10] がある.また,本稿では非線形特徴抽出の観点からカーネル法を導入するた
め,カーネル法の理論的な背景となる再生核ヒルベルト空間に関しては言及しな
い.再生核の理論に関しては [11] が詳しい.
線形モデル (1) は非常に単純であり,説明変数 x とラベル y の直線的な関係し
か捉えることができない.そこで,データを写像 φ
φ : Rn → H,
x 7→ φ(x)
(2)
により,ある空間 H に写像した上で線形モデルを考える.ここで,変数 x が写
像される空間 H を特徴空間と呼ぶ. 一般には特徴空間は実ベクトル空間と同型な
空間でなくてもよいが,簡単のためここでは H ⊂ Rm として,H の元は φ(x) =
(φ1 (x), · · · , φm (x))⊤ というベクトル表現ができるとする.すると,特徴空間にお
ける線形モデルが
f (x) = w⊤ φ(x)
(3)
のように得られる.ここで,関数 f はある関数空間 F の元であるとする. x1 , x2 ∈ X
とする.この 2 つの元に対するカーネル関数 k : X × X → R を,x1 , x2 それぞれ
の特徴ベクトル同士の内積
k(x1 , x2 ) = φ(x1 )⊤ φ(x2 )
(4)
で定義する.式 (3) により,H の元 w と φ(x) の内積により関数 f (x) の値が決
まる.こうして定義したカーネル関数は半正定値性を持つことは容易に確かめら
れる. 逆に,半正定値性を持つ任意の対称関数は,何らかの特徴ベクトルの内積と
みなすことが出来る.これは,Mercer の定理 ([9, 8]) によって保証される.カー
ネル法が広く用いられている理由の一つが,一定の正則化条件の下で,判別関数
が学習サンプル点で評価したカーネル関数のみで記述できるという性質である.
Theorem 21 (リプレゼンター定理 [9, 8])
判別関数 (3) を,そのノルムに関する正則化項 λ||f ||2F を含むコスト関数
Rreg (f ) = R({f (xi ), yi }ni=1 ) + λ||f ||2F
(5)
を最小化することで学習する問題を考える.ここで,R : (R × R)n → R ∪ {∞}
は任意の損失関数であり,λ > 0 である.このとき,Rreg (f ) を最小にする関数
f ∈ F は,適当な α = (α1 , · · · , αn ) によって
f (x) =
n
∑
i=1
の形で表すことができる.
αi k(xi , x)
(6)
4
日野英逸,村田昇
リプレゼンター定理は,判別関数 (3) における係数ベクトル w を,
w=
n
∑
αi φ(xi )
(7)
i=1
の形に限って考えてもよいということを意味していて,カーネル法における判別
関数は式 (6) の形で統一的に扱うことができる.カーネル法による非線形判別器
は,判別問題を説明変数同士の内積の形のみで記述し,その内積をカーネル関数
値で置き換えた上で,特徴空間における線形判別モデルの係数 w を各々の手法に
従い最適化することで実現できる.
2.2
カーネル学習の技法
カーネル法は多くの問題に適用されて成果をあげているが,その適用にあたって
は問題に応じて適切なカーネル関数を選択し,そのパラメタを最適化しなければ
よい性能が得られないという難しさがある. カーネル関数自身を与えられたデー
タを用いて最適に設計する手法は数多く提案されており,MKL(Multiple Kernel
Learning) はその代表的な手法としてよく研究されている [12–14].
MKL では次のようなパラメトライズされたカーネル関数族を考える:
K = {k( · , · ; λ); λ ∈ Λ}.
ここで,λ はパラメタ空間 Λ に値をとるものとし,この値が K 内のカーネル関数を特
(
)
徴付けるものとする. 例えば,ガウスカーネルの族 k(xj , xi ; λ) = exp −λ||xj − xi ||2
を考えるときは, λ は精度パラメタに対応し,Λ = {λ ∈ R; λ > 0} である.ここで,
族 K から取り出した S 個の要素カーネル関数 k( · , · ; λs ), s = 1, . . . , S の凸結合
k( · , · ; β, λ) =
S
∑
βs k( · , · ; λs ),
s=1
S
∑
βs = 1, βs ≥ 0, s = 1, . . . , S
(8)
s=1
により新しい関数を定義する.こうして定義した新しい関数について,次の命題
が成り立つ:
Proposition 22
関数 (8) は半正定値対称なカーネル関数であり,ある特徴空間における特徴ベク
トルの内積を定義する.
Lanckriet らは文献 [12] において,SVM の判別関数
f (x) =
n
∑
yi αi k(xi , x)
i=1
で用いるカーネル関数 k を複数のカーネル関数の凸結合で置き換えた判別関数
fα,β (x) =
n
∑
i=1
yi αi
S
∑
s=1
βs ks (xi , x),
非線形判別の概観と応用
5
S
を考え,半正定値計画問題を用いて判別器のマージンを α = {αi }n
i=1 と β = {βs }s=1
両方について最大化するという定式化を行った.こうした判別器とカーネル関数
の最適化問題は,損失関数 L,凸正則化関数 Ω ,正則化パラメタ η > 0 を用いて,
一般に
min L(D, α, β) + ηΩ(α)
α,β
(9)
∑n
のように表されることが多い.
例えば損失関数 L(D, α, β) = n1 i=1 (yi −fα,β (xi ))2
∑
n
及び L(D, α, β) = n1 i=1 max(0, 1 − yi fα,β (xi )) はそれぞれカーネル正則化最
小二乗回帰及びヒンジロス (SVM) に対応する問題である.
3
非線形判別器
本節では,直接非線形性を有する判別器を構成する代表的な手法を概観する.
3.1
ニューラルネットワーク
ニューラルネットワークは人工知能研究の中心的課題の一つであり,入力データ
の加重平均の値を入力として受け取る非線形関数 s が層状に複数連結されたモデ
ルである.具体的には,第 l 層目に並んだ非線形関数 s に対する入力 xl ∈ Rnl が
xl+1,k = s(wlk⊤ xl + bl ), k = 1, . . . , nl+1
(10)
のように計算されて第 l + 1 層目に並んだ非線形関数への入力となるようなモデ
ルで,非線形関数としては例えばシグモイド関数 s(x) = 1/(1 + e−x ) などが利用
される.最終的な出力が応答変数と一致するように各層・各非線形関数の入力に
用いる係数 wlk 及びバイアス bl を最適化することで,ニューラルネットワークは
非線形判別器として動作する [15].モデルの自由度の高さに起因する扱いにくさ
と,パラメタ最適化にかかる計算コストの高さから,人工知能や機械学習の研究
の主流からは外れ,少ない階層のモデルが簡便な非線形判別器あるいは関数近似
器として利用される程度という状況が続いていた.しかし,2006 年に提案された
Deep Learning と呼ばれる多層(典型的には 10 層前後)のニューラルネットワー
クの学習法 [16] が成功を収め,画像認識 [17],音声認識 [18] をはじめ,多くの分
野で優れた性能を示しており,再び注目が集まっている.
3.2
k 近傍法
判別対象のサンプルのラベルを,学習用のサンプルの中から判別対象のサンプル
と説明変数同士の距離が近いものを k 個選び,この k 個のサンプルのラベルの多
数決をもって予測する手法が k 近傍法である.判別手法の中では,最も単純な方
法の一つであるとともに,その性質についても古くから調べられており,最近傍
法 (k = 1) はサンプル数の増大とともに,達成可能な最小誤り率の高々2 倍の誤り
率を実現すること [19],さらに k 近傍法では k を増やすことで達成可能な最小誤
り率に漸近することが知られている.
日野英逸,村田昇
6
3.3
判別木
判別木(あるいは決定木)は,説明変数の各成分の値によって分岐をする木構造
を用いて構成されるルールベースの判別関数である.木の内部節点は説明変数に
対応し,子節点への枝はその変数の取り得る値を示す.判別対象は根(root)か
ら順に評価され,説明変数の値に応じた経路を通って葉 (端点) に至り,その葉に
割り当てられたラベルに従って判別される.精度の良い判別関数を得るためには,
適切な木の深さ,分岐の数などを定める必要があるが,Gini 係数やエントロピー
といった評価尺度によりある程度自動的なモデル選択が可能であり,学習及び判
別の高速さ,得られたモデルの解釈の容易さから広く用いられている [20, 21].ま
た,判別器としてバリアンスが大きいため,後述のアンサンブル学習における弱
学習器として利用されることも多い.
3.4
アンサンブル法
ここでは簡単のために,判別器によるクラスの予測の精度を期待二乗損失
∫
∫
E[L] = L(f (x), y)p(x, y)dxdy = {f (x) − y}2 p(x, y)dxdy
(11)
で評価することにする.この時の最適な予測器は条件付き期待値
h(x) = E[y|x] =
∫
yp(y|x)dy に他ならず,期待二乗損失は
∫
∫
2
E[L] = {f (x) − h(x)}2 p(x)dx + {h(x) − y} p(x, y)dxdy
(12)
のように表現できる.この第 2 項はノイズに起因する不可避な誤差である.ここ
で予測器は特定の学習データ集合 D に基いて定められることを考慮し,データ集
合 D を用いて学習した予測器を f (x; D),全ての考えうるデータ集合に関する予
測器の平均を ED [ · ] で表すことにすると,第一項の全ての学習データに関する平
均は,
ED [{f (x; D) − h(x)}2 ] =
{ED [f (x; D)] − h(x)}2 + ED [{f (x; D) − ED [f (x; D)]}2 ]
となり,期待二乗損失の学習データに関する期待値は予測器のバイアス,分散,及
びモデルに内在するノイズに分解することが出来る.
Bagging [22] は学習データ集合 D からブートストラップサンプリングにより
多数のデータ集合を生成し,それらを用いて学習した多数の判別器の標本平均に
よってモデルの事後分布による平均を近似し,予測分布を構成する.この時のベー
スとなる判別器 (弱学習器と呼ぶ) としては,学習が容易な判別木などが使われる
ことが多い.Bagging はバイアスを固定したままバリアンスを減らすことで予測
の期待二乗誤差を低減する手法という理解が可能である.
Bagging がデータ集合からの一様な非復元抽出に基いていたのに対し,Boosting [23, 24] は逐次的に学習データの重みを変化させながら学習を行い,多数の学
習器を組み合わせて精度の高い判別器を構成する.既に学習が済んでいる弱学習
器が苦手とするデータを重点的に学習に用いるように学習データの重みをうまく
非線形判別の概観と応用
7
選択することで,全体として高精度な判別器が期待できる.Boosting は情報幾何
学的な観点からの理解も進んでおり,こうした知見に基づきロバスト化,回帰,多
値判別への拡張がなされている [25, 26].
最後に,実用上多くの問題に対して効果を発揮することが知られているアン
サンブル学習の手法として,Random Forest[27] がある.学習データ集合のブー
トストラップサンプリングにより多数の学習データ集合を生成し,典型的には判
別木を用いて弱学習器を多数作成し,それらの重み付き多数決により判別を行う.
ここまでは Bagging と同じであるが,特徴的なのは説明変数の次元に関してもサ
ンプリングをする,すなわち一つ一つの判別器の学習において説明変数の一部の
成分しか利用しないようにすることで大きなバリアンスをもつ判別器を生成する
点である.高次元データを高速に処理することが可能であり,さらに弱学習器の
構成は完全に並列化可能である.また,説明変数の各次元の重要度(判別への寄
与)を評価することが可能であり,さらにテストデータの説明変数の一部の次元
が欠損していても判別が可能であるという長所を持つ.一方で,説明変数の各次
元をランダムにサンプリングするため,判別に有効な次元が極端に少なく,大部
分がノイズである場合にはうまく働かない可能性が高い.Random Forest は理論
的な解析が十分進んでいるとはいえないが,実用上は例えば化学化合物の可溶性
予測 [28],製鉄プロセスにおける溶鋼の温度予測 [29] など,高次元データを高速
に処理可能であり様々な分野で高い性能を発揮している.
References
1. R. O. Duda, P. E. Hart, and D. G. Stork. Pattern Classification. Wiley-Interscience
Publication, 2000.
2. Christopher M. Bishop. Pattern Recognition and Machine Learning. Springer,
2006.
3. T. Hastie, R. Tibshirani, and J. Friedman. The Elements of Statistical Learning
— Data Mining, Inference, and Prediction. Springer, second edition, 2009.
4. Ronald Aylmer Fisher. The use of multiple measurements in taxonomic problems.
Annals Eugen., 7:179–188, 1936.
5. Nello Cristianini and John Shawe-Taylor. An Introduction to Support Vector Machines and other kernel-based learning methods. Cambridge University Press, Cambridge, 2000.
6. Bernhard E. Boser, Isabelle M. Guyon, and Vladimir N. Vapnik. A training algorithm for optimal margin classifiers. In Proceedings of the fifth annual workshop on
Computational learning theory, COLT ’92, pages 144–152, New York, NY, USA,
1992. ACM.
7. 孫寧 方向線素特徴量を用いた高精度文字認識. 電子情報通信学会論文誌. D-2, 情報・
システム. 2, パターン認識, 74(3):330–339, 1991
8. J. Shawe-Taylor and N. Cristianini. Kernel Methods for Pattern Analysis. Cambridge University Press, New York, NY, USA, 2004.
9. 赤穂昭太郎 カーネル多変量解析. 岩波書店,2008
10. 福水健次 カーネル法入門. 朝倉書店, 2010
11. 斉藤三郎 最正確の理論入門. 牧野書店, 2002
12. Gert R. G. Lanckriet, Nello Cristianini, Peter Bartlett, Laurent El Ghaoui, and
Michael I. Jordan. Learning the kernel matrix with semidefinite programming. J.
Mach. Learn. Res., 5:27–72, 2004.
8
日野英逸,村田昇
13. Alain Rakotomamonjy, Francis R. Bach, Stéphane Canu, and Yves Grandvalet.
SimpleMKL. JMLR, 9:2491–2521, 2008.
14. Hideitsu Hino, Nima Reyhani, and Noboru Murata. Multiple kernel learning with
gaussianity measures. Neural Computation, 24(7):1853–1881, 2012.
15. Brian D. Ripley. Pattern Recognition and Neural Networks. Cambridge University
Press, January 1996.
16. Geoffrey E. Hinton, Simon Osindero, and Yee Whye Teh. A fast learning algorithm
for deep belief nets. Neural Computation, 18(7):1527–1554, 2006.
17. Quoc Le, Marc’Aurelio Ranzato, Rajat Monga, Matthieu Devin, Kai Chen, Greg
Corrado, Jeff Dean, and Andrew Ng. Building high-level features using large scale
unsupervised learning. In International Conference in Machine Learning, 2012.
18. George E. Dahl, Dong Yu, Li Deng, and Alex Acero. Context-dependent pretrained deep neural networks for large-vocabulary speech recognition. IEEE Transactions on Audio, Speech & Language Processing, 20(1):30–42, 2012.
19. T. Cover and P. Hart. Nearest neighbor pattern classification. Information Theory,
IEEE Transactions on, 13(1):21–27, 1967.
20. Leo Breiman, J. H. Friedman, R. A. Olshen, and C. J. Stone. Classification and
Regression Trees. Statistics/Probability Series. Wadsworth Publishing Company,
Belmont, California, U.S.A., 1984.
21. J. Ross Quinlan. C4.5: programs for machine learning. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA, 1993.
22. Leo Breiman. Bagging predictors. Machine Learning, 24(2):123–140, 1996.
23. Yoav Freund. Boosting a weak learning algorithm by majority. In COLT, pages
202–216, 1990.
24. Yoav Freund and Robert E. Schapire. A short introduction to boosting. In In Proceedings of the Sixteenth International Joint Conference on Artificial Intelligence,
pages 1401–1406. Morgan Kaufmann, 1999.
25. Guy Lebanon and John D. Lafferty. Boosting and maximum likelihood for exponential models. In NIPS, pages 447–454, 2001.
26. Noboru Murata, Takashi Takenouchi, Takafumi Kanamori, and Shinto Eguchi.
Information geometry of u-boost and bregman divergence. Neural Computation,
16(7):1437–1481, 2004.
27. Leo Breiman. Random forests. Machine Learning, 45(1):5–32, 2001.
28. D. S. Palmer, N. M. O’Boyle, R. C. Glen, and J. B. Mitchell. Random forest models
to predict aqueous solubility. Journal of Chemical Information and Modeling,
47(1):150–158, 2007.
29. Sho Sonoda, Noboru Murata, Hideitsu Hino, Hiroshi Kitada, and Manabu Kano.
A statistical model for predicting the liquid steel temperature in ladle and tundish
by bootstrap filter. ISIJ International, 52(6):1096–1101, 2012.