サポートベクトルマシンとカーネル法
高野祐一

サポートベクトルマシンは最適分離超平面に基づくパターン認識手法であり，非線形データ解析の手法であるカーネル法と組み合わせて 1992 年に提案され，大きな注目を集めた．本稿では，サポートベクトルマシンによる分類と回帰の手法を解説し，さらにカーネル法の概要と応用を紹介する．他の手法との関係性を見ながらカー
ネル法の理解を促進し，さまざまな応用例を通してカーネル法の汎用性を吟味する．

キーワード：サポートベクトルマシン，カーネル法，表現定理，K 最近傍法，深層学習，多変量解析

1.

表1

はじめにパターン認識の例

例

対象

説明変数

パターン認識では，認識対象について観測可能な情

文字認識

手書き文字

画像データ

文字報（説明変数）から，その対象のクラス（目的変数）を音声認識
病気の診断

発話音声
患者

音声データ
問診結果

文字列
病名

融資審査

企業

財務指標

存続／倒産

識別する規則を学習する．パターン認識は人工知能の．
基盤技術としてさまざまな場面で利用される（表 1）

目的変数

銀行の融資審査の例では，融資先の企業が倒産してしまうと銀行は資金を回収することができなくなる．したがって企業の財務指標などの情報を用いて，将来倒産する企業を予測することができれば有用である．

図1

パターン認識のイメージ

サポートベクトルマシン（support vector machine:SVM）は最適分離超平面に基づくパターン認識手法である．非線形データ解析の手法であるカーネル法 [1]

能を発揮できる．

• 豊富な数学理論（理論保証）が整備されている．と組み合わせて 1992 年に提案された [2]．最適分離超本稿の主な目的は，カーネル法の本質を理解し，カー

平面やカーネル法のアイディアは古くから知られていネル法の価値を見直す機会を読者に提供することであたが [3, 4]，それらの重要性は十分に認識されておらる．SVM やカーネル法に興味をもった読者は，5 節でず，SVM の提案によって脚光を浴びることとなった．

紹介する文献を読んでさらに理解を深めてほしい．

文献 [5] でソフトマージン型の SVM が考案され，文献 [6] で SVM は回帰分析へと拡張された．カーネル

2. サポートベクトルマシン

法は主成分分析・クラスター分析・外れ値の検出など，本節では，SVM による分類（SV 分類）と回帰（SV 回さまざまな多変量解析法に応用可能な汎用性の高い手帰）の手法を説明し，企業格付の分析例を通して SVM法である [4, 7–9]．また近年では，動的ポートフォリの有用性を確認する．

オ選択にもカーネル法が利用されている [10, 11]．
本稿では，SVM による分類と回帰の手法を解説し，SVM などのパターン認識手法では，p 個の説明変数から成るベクトル x = (x1 , x2 , . . . , xp ) を入力し，目カーネル法の概要と応用を紹介する．近年は深層学習

的変数 y を正しく出力するような識別器（分類規則）（多層の人工ニューラルネットワーク）が盛んに研究さ．
を学習する（図 1）れており，その影響もあってカーネル法の存在感が薄2.1 ハードマージン SV 分類くなっているように感じられる．しかしながら深層学

2 クラス分類問題を想定し，目的変数は 2 値ラベ

習と比較して，カーネル法には以下のような利点があル y ∈ {−1, +1} とする．切片 b と係数ベクトルると考える．

w = (w1 , w2 , . . . , wp ) を導入し，線形識別関数を• 訓練事例や計算資源が少ない状況でも，十分な性
たかの ゆういち
筑波大学システム情報系〒 305–8573 茨城県つくば市天王台 1–1–1

304（8）

以下のように定義する．

f (x) = w x + b =p


wj x j + b(1)j=1

オペレーションズ・リサーチ

この関数の出力値の符号に基づく以下の識別器を考える．

⎧⎪⎨f (x) < 0⇒

y = −1⎪⎩f (x) ≥ 0⇒

y = +11w22 −→ 最小2
制約条件： yi (w xi + b) ≥ 1 (i ∈ [n])目的関数：(b, w) ∈ R × R

p(3)
(4)
(5)

式 (4) は式 (2) に相当し，訓練事例がすべて正しく分類されることを表す．式 (5) は最適化問題の決定変数識別器の学習に使用する n 個の訓練事例の集合を表す．

を {(xi , yi ) | i ∈ [n]} とする．ここで，xi =式 (3) はマージンの最大化を表すが，このことを(xi1 , xi2 , . . . , xip ) は事例 i の説明変数のデータ，yi ∈直感的に理解するために，説明変数の数を p = 2 と{−1, +1} は事例 i の目的変数（2 値ラベル）のデータして高校数学の公式を利用する．点 (xi1 , xi2 ) と直線とし，[n] = {1, 2, . . . , n} は事例の添え字集合とする．

w1 x1 + w2 x2 + b = 0 の距離は以下のように表される．

ハードマージン SV 分類では，すべての訓練事例が線|w1 xi1 + w2 xi2 + b|

w12 + w22

形識別関数 (1) により正しく分類できること（線形分離可能条件）を仮定する．すなわち，⎧⎪⎨yi = −1⎪⎩yi = +1(6)分数 (6) に対して，式 (4) により分子を一定値以上に⇒⇒w xi + b < 0

w xi + b > 0(i ∈ [n])(2)抑えて，式 (3) により分母（の 2 乗）を最小化することで，式 (6) の最小値（マージン）が最大化されている．

2.2 ソフトマージン SV 分類が成立するような (b, w) が存在することを仮定する．

一般には，線形識別関数 (1) を用いてすべての訓練

線形分離可能条件 (2) の下では，すべての訓練事例事例を正しく分類できるような都合の良い状況は少なを正しく分類できる線形識別関数 (1) は無数に存在す

く，その場合は線形分離可能条件 (2) を満たすようなる．ハードマージン SV 分類では，未知の事例も正し(b, w) は存在しない．すなわち式 (4) を成立させるこく分類できるように，マージン（分類境界 f (x) = 0 かとは不可能なので，ソフトマージン SV 分類では分類ら最も近い訓練事例までの距離）が最大となるようにの違反度を表す非負決定変数 ξ = (ξ1 , ξ2 , . . . , ξn ) を．
識別関数（分類境界）を学習する（図 2）

導入し，なるべく分類の誤りが小さくなるように分類ベクトルの L2 ノルム

w2 =



w12 + w22 + · · · + wp2

を用いて，ハードマージン SV 分類は以下の最適化問．
境界を学習する（図 3）
分類の違反度最小化の優先度を表す非負パラメータC を導入し，ソフトマージン SV 分類は以下の最適化問題として記述される．

題として記述される．

図2

ハードマージン SV 分類 (p = 2)2020 年 6 月号

図3

ソフトマージン SV 分類 (p = 2)（9）305目的関数：n1
ξi −→ 最小w22 + C
2i=1
正則化項

(7)

損失関数



制約条件： yi (w xi + b) ≥ 1 − ξi(b, w, ξ) ∈ R × R

p(i ∈ [n]) (8)× Rn+(9)式 (8) で事例 i の分類の違反度 ξi が計上され，式 (7)で違反度の総和が最小化されている．
式 (7) は正則化項（モデルの複雑さに対する罰則）と損失関数（訓練事例に対する誤りの大きさ）の和と図4解釈することができる．損失関数の最小化のみに注力

SV 回帰 (p = 1)

すると，訓練事例に過剰に適合した識別関数が学習されてしまい，未知の事例に対する予測能力（汎化性能）

表2が却って悪化してしまう．正則化項は識別関数の係数

訓練事例（2011 年）
順序
SV 分類の大きさに対応し，不必要な係数を縮小させて訓練事

ロジット

例に対する過剰適合を抑制する働きがある．正則化項
全企業

として L1 ノルム

下位企業
上位企業

w1 = |w1 | + |w2 | + · · · + |wp |を使用すると，係数としてゼロが推定されやすくなり，変数選択の役割も兼ねることができる．

全企業

2.3 SV 回帰
回帰分析では，実数値の目的変数 y ∈ R に対して，y ≈ w x + b

企業格付予測の正答率 [12]

下位企業
上位企業

一様
加重90.4％
85.2％
83.7％
83.3％
70.8％
85.0％
93.3％
91.2％
83.2％
検証事例（2012 年）
順序SV 分類
ロジット
一様
加重47.3％
84.7％
82.7％
29.8％
70.2％
83.9％
55.4％
91.4％
82.2％

例 [12] を紹介する．51 種類の財務指標を説明変数との関係が成立するように (b, w) を推定する．最小二乗

して，上位企業（格付 A− 以上：約 120 社）と下位企法では，事例 i の残差 ei = yi − (w xi + b) の二乗和業（格付 A− より下：約 280 社）を分類する．2011 年が最小となるように推定するが，SV 回帰では非負パのデータを訓練事例として識別関数を学習し，2012 年

ラメータ ε を事前に設定し，−ε ≤ ei ≤ ε の範囲を超のデータを検証事例として予測性能を評価する．

えるような大きな残差 ei に対してのみ違反度 ξi を計．
上する（図 4）の正答率を表 2 に示す．順序ロジットモデルは順序選

SV 回帰は以下の最適化問題として記述される．
目的関数：
制約条件：

順序ロジットモデルと SV 分類による企業格付予測n1
ξi −→ 最小w22 + C
2i=1

リスク指標に基づく拡張がなされており，加重型の SV(10)− ε − ξi ≤ yi − (w xi + b)(b, w, ξ) ∈ R × Rp(i ∈ [n])× Rn+分類では各クラスの事例の重みが調整されている [12]．
順序ロジットモデルは訓練事例に対しては高い正答率

≤ ε + ξi

択のための統計的モデルあり，ここでは SV 分類は金融(11)(12)

式 (11) で範囲 [−ε, ε] からの残差の超過量が違反度 ξiとして計上されている．最小二乗法と比較すると，SVを示すが，検証事例に対する正答率は大きく低下している．一方で SV 分類は正則化項の効果により，検証事例に対しても高い正答率を維持している．

3. カーネル法の概要

回帰は小さな残差は損失に加えず，損失の増え方が緩

本節では非線形データ解析の手法であるカーネル法やか（2 次関数ではなく 1 次関数）であるため，外れについて説明し，他の手法との関係性を見ながらカー値による悪影響が小さくなる．

ネル法の理解を促進する．

2.4 企業格付の予測

3.1 特徴写像

SVM の有用性を確認するために，企業格付の分析

線形の分類境界では適切な分類ができない場合を考306（10）オペレーションズ・リサーチ

ガウスカーネル：

k(x1 , x2 ) = exp −x1 − x2 22σ2

(16)

シグモイドカーネル：k(x1 , x2 ) =11 + exp(−γx1 x2 )(17)

ここで，α, β, δ, σ, γ はカーネル関数のパラメータで図5ある．

特徴写像による非線形分類 (p = 2)

SV 分類や SV 回帰では，正則化項と損失関数のえる．すなわち図 5 左の円周のような非線形の分類境

和 (7)，(10) を最小化する．これらの手法で特徴写像界を学習するために，説明変数の非線形項（特徴量）のφ(x) を利用するとき，以下の定理が成り立つ．

ベクトルを表す特徴写像 φ(x) を導入する．ここでは定理 1（表現定理 [7]）. 正則化項（L2 ノルム）と損

特徴量 x21 + x22 を加えた 3 次元空間への特徴写像を考

失関数の和を最小化する問題に対して，最適識別関数

える．

f (x) = w φ(x) + b は，カーネル関数の線形和
φ(x) = (x1 , x2 , x21 + x22 )

(13)

f (x) =nαi k(xi , x) + b(18)i=1

この特徴写像を用いた識別関数は以下のようになる．の形式で書ける．

f (x) = w φ(x) + b

この表現定理とカーネル関数 (15)–(17) を利用すれ= w1 x1 + w2 x2 + w3 (x21 + x22 ) + b

ば，特徴写像を陽に扱うことなく，高次元空間上の計特徴写像 (13) に基づく 3 次元の特徴空間（図 5 右）算を回避して最適識別関数 (18) を学習でき，非線形のでは，円の外側の点（図 5 左）が上方に布置される．

分類や回帰が実現できる．定理の証明は付録 A に記載

それゆえ線形の分類境界（平面）でクラスを分類するすることとし，次節では他の手法との関係性を通してことができ，図 5 左では非線形の分類境界（円周）に表現定理の理解を深める．

3.3 K 最近傍法との関係相当する．
この例では特徴量 x21 + x22 が有効に働いたが，実用上はどのような特徴量が有効か事前にはわからない．そのため多種多様な非線形項を用意せざるをえなくなり，特徴空間の次元が上がって計算量が増大してしまう．

K 最近傍法では，識別対象と類似する K 個の事例を選定し，それらの平均値（多数決）に着目する．

f (x) =1K

3.2 表現定理

yi(19)i∈NK (x)カーネル法では，上述の問題点を巧妙な方法で解決

ただし，NK (x) は対象事例 x と類似する K 個の訓練する．まずは，特徴空間上の内積を表すカーネル関数

事例の集合（近傍）とする．たとえば K = 3 とし，近を導入しよう．

傍事例の 2 値ラベル yi の値が −1, +1, +1 である場

k(x1 , x2 ) = φ(x1 ) φ(x2 )(14)

二つのベクトルは方向が同じ場合に最も内積が大きく

合は，識別関数の値は

f (x) =1−1 + 1 + 1= >033

なるので，カーネル関数は事例間の（特徴空間上の）となるため，対象事例 x のラベルは y = 1 と識別する．

類似度を表すものと解釈できる．ただし，特徴空間のここで近傍 NK (x) に基づいて，カーネル関数を以次元が高いと内積 (14) を計算することも難しいので，下のように定義する．

カーネル法では高次元空間上の内積としての性質を有する以下のような関数を利用する．

k(xi , x) =多項式カーネル：
δk(x1 , x2 ) = (αx
1 x2 + β)2020 年 6 月号⎧⎪
⎨1/Ki ∈ NK (x)

⎪⎩0

それ以外

(15)
（11）307さらに，カーネル関数の係数を目的変数と一致させてαi = yi とし，切片を b = 0 とする．このとき，カーネル法による識別関数 (18) は K 最近傍法による識別関数 (19) と一致する．この意味でカーネル法は，近傍の事例を集めて多数決を採用する K 最近傍法の一般化（高機能版）と解釈することができる．

3.4 2 層 ANN との関係
2 層の人工ニューラルネットワーク（artificial neuralnetwork: ANN）を考える（図 6）．ここでは簡単のために説明変数の数は p = 2 とし，最初に識別対象の説明変数 x = (x1 , x2 ) が入力される．中間層のユニッ

図6

カーネル法を表す 2 層 ANN (p = 2)

トは n 個用意されており，訓練事例の説明変数のデー明変数が厳選され，ノイズ除去の効果も期待できるたタを重みとした総入力

ui = xi x = xi1 x1 + xi2 x2

め，比較的少ない計算量で汎化性能の高い非線形の識別関数を学習することができる．

を受け取る．活性化関数 g として以下のシグモイド関

4.2 クラスター分析数を用いると，中間層のユニットの出力は γ = 1 のシ

クラスター分析は類似した事例をまとめてグループグモイドカーネル (17) と一致する．

1
1 + exp(−ui )1== k(xi , x)
1 + exp(−xi x)

g(ui ) =係数 αi を重みとして出力層へ送ると，最終的な出力は

f (x) =nαi g(ui ) + b =i=1nに分割する手法であり，Ward 法や K 平均法が標準的な方法として知られている．たとえば K 平均法では，グループの代表点と距離が近い事例をグループにまとめていくが，曲線や曲面に沿って分布するような事例のグループを抽出することは難しい．カーネル K 平均法は高次元の特徴空間上で K 平均法を適用し，非線形構造の抽出を可能とする．ただし，K 平均法には結αi k(xi , x) + bi=1となり，カーネル法による識別関数 (18) と一致する．
この意味でカーネル法は，特殊な形式の 2 層 ANN と果が初期値に依存するという問題があるが，固有値問題として定式化されるスペクトラルクラスタリングでは，この問題が緩和される．

4.3 外れ値の検出みなすことができる．層数を増やして表現力を高める

データに含まれる外れ値の検出にもカーネル法が利深層学習とは対照的に，中間層で多数のユニット（訓用できる．1 クラス SV 分類とよばれる手法では，多練事例と同数の特徴量）を用意して表現力を高めるこくの訓練事例を包含するようななるべく小さな領域をとがカーネル法の特徴である．

構成し，その領域から外れた事例を外れ値（新規性・異4.

カーネル法の応用

カーネル法は SVM 以外にもさまざまな多変量解析法に応用できる．本節ではそれらの応用例を紹介し，カーネル法の汎用性を吟味する．

常値）として検出する．ここでもカーネル法を利用することで，非線形の領域を構成することが可能となる．

4.4 動的ポートフォリオ選択
ポートフォリオ選択問題では，金融資産への最適な（リスクが低く収益性が高い）投資比率を決定する．動4.1 主成分分析

的な問題設定では状況に応じて柔軟に投資比率を決定

主成分分析は相関の強い変数を合成することで，デーするために，その時点までの情報 x を入力して最適タの次元を縮約する方法である．通常の主成分分析でな投資比率を出力する関数（制御政策）f (x) を推定

は，変数間の線形関係しか考慮することができないが，する．この制御政策の推定にもカーネル法が利用できカーネル法を利用すれば非線形の関係を有する変数をる [10, 11]．

合成することができる．またカーネル主成分回帰とよばれる手法では，カーネル主成分分析により作成された合成変数を回帰分析の説明変数として利用する．説308（12）5. おわりに
本稿では，SVM による分類と回帰の手法を解説し，オペレーションズ・リサーチ

カーネル法の概要と応用を紹介した．SVM ではマージンの最大化が正則化項と対応し，汎化性能の向上に寄与している．またカーネル法は表現定理を巧みに利用して非線形データ解析を実現する手法であり，さまざまな多変量解析法や動的意思決定に応用できる．
カーネル法は特殊な形式の 2 層 ANN とみなすことができ，このことから以下のような深層学習との対比が可能であろう．カーネル法は中間層に多数の特徴量．こを用意し，それらを組み合わせて識別する（図 6）の意味でカーネル法は，たくさんの料理（特徴量）を事前に用意しておき，各自が取り分けて食べる「バイキング形式」のような方法といえる．一方で深層学習は，ネットワークを多層化して識別性能が向上するように特徴量を作り込む．この意味で深層学習は，常連客の嗜好に合わせて料理（特徴量）を提供する「シェフのおまかせ形式」のような方法といえる．どちらの形式が好みかは意見が分かれるところだが，バイキング形式であれば誰でもそれなりに満足できるだろう．カーネル法も同様に多くの状況で有効に機能する万能型の手法であり，一方で深層学習は特定の状況で抜群の性能を発揮する職人芸のような手法といえる．
読者がさらに学習を深めるために，有用な文献を紹介する．SVM については文献 [3, 13, 14] など，カーネル法については文献 [4, 7–9] などがある．筆者は学出版，2010．）[5] C. Cortes and V. N. Vapnik, “Support-vector networks,” Machine Learning, 20, pp. 273–297, 1995.
[6] V. N. Vapnik, The Nature of Statistical Learning
Theory, Springer, 1995.
[7] 赤穂昭太郎，『カーネル多変量解析』，岩波書店，2008.
[8] B. Schölkopf and A. J. Smola, Learning with Kernels: Support Vector Machines, Regularization, Optimization, and Beyond, MIT Press, 2001.
[9] 杉山将，『イラストで学ぶ機械学習』，講談社，2013.
[10] Y. Takano and J. Gotoh, “A nonlinear control policy using kernel method for dynamic asset allocation,”
Journal of the Operations Research Society of Japan,
54, pp. 201–218, 2011.
[11] Y. Takano and J. Gotoh, “Multi-period portfolio
selection using kernel-based control policy with dimensionality reduction,” Expert Systems with Applications, 41, pp. 3901–3914, 2014.
[12] J. Gotoh, A. Takeda and R. Yamamoto, “Interaction between financial risk measures and machinelearning methods,” Computational Management Science, 11, pp. 365–402, 2014.
[13] 前田英作， 痛快！ サポートベクトルマシン―古くて新しいパターン認識手法―， 情報処理，42, pp. 676–683, 2001.
『サポートベクトルマシン』，講談[14] 竹内一郎，烏山昌幸，社，2015.

付録 A.

訓練事例を入力した特徴写像 φ(xi ) によって生成される部分空間を W とし，その直交補空間を W ⊥ とする．このとき一般のベクトル w は，生時代に文献 [7] を読んでカーネル法に魅了され，そw0 =の後の研究 [10, 11] にもつながった．
謝辞 本稿の執筆にあたり，有益な助言をいただい定理 1 の証明nリクルートライフスタイル），小林健氏（（株）富士通研究所）に感謝いたします．

なる W と W ⊥ の元が存在して，w = w0 + ηと分解できる．
このとき η  φ(xi ) = 0 より，識別関数はf (xi ) = w  φ(xi ) + b = w0 φ(xi ) + b

参考文献[1] M. Aizerman, E. Braverman and L. Rozonoer, “Theoretical foundations of the potential function methodin pattern recognition learning,” Automation and Remote Control, 25, pp. 821–837, 1964.
[2] B. E. Boser, I. M. Guyon and V. N. Vapnik, “Atraining algorithm for optimal margin classifiers,” InProceedings of the 5th Annual Workshop on Computational Learning Theory, pp. 144–152, 1992.
[3] N. Cristianini and J. Shawe-Taylor, An Introduction
to Support Vector Machines and Other Kernel-based
Learning Methods, Cambridge University Press, 2005.
（大北剛訳，『サポートベクターマシン入門』，共立出版，2005．
）[4] J. Shawe-Taylor and N. Cristianini, Kernel Methods for Pattern Analysis, Cambridge University Press,『カーネル法によるパターン解析』，共立2004.（大北剛訳，2020 年 6 月号

η ∈ W⊥

i=1

た後藤順哉氏（中央大学），岩永二郎氏（（株）エルデシュ），鮏川矩義氏（東京理科大学），西村直樹氏（（株）

αi φ(xi ) ∈ W,となり，η に依存しない．また w
0 η = 0 より，正則化項は

111w22 = w w =w0 22 + η22222となり，η = 0 のときに最小値を取る．したがって，最適解では w = w0 が成立し，最適識別関数は以下のように書ける．

f (x) = w0 φ(x) + b ==n

i=1n


αi φ(xi ) φ(x) + bαi k(xi , x) + bi=1（13）309