表現者の定理の証明
📂機械学習 表現者の定理の証明 定理 インプット集合input set X ≠ ∅ X \ne \emptyset X = ∅ と正定値カーネル k : X × X → R k: X \times X \to \mathbb{R} k : X × X → R が与えられているとする。学習データセット training Dataset を
D : = { ( x i , y i ) } i = 1 m ⊂ X × R
D := \left\{ \left( x_{i} , y_{i} \right) \right\}_{i=1}^{m} \subset X \times \mathbb{R}
D := { ( x i , y i ) } i = 1 m ⊂ X × R
とし、再生カーネルヒルベルト空間 H k H_{k} H k のクラス
F : = { f ∈ R X : f ( ⋅ ) = ∑ i = 1 ∞ β i k ( ⋅ , z i ) ∧ β i ∈ R ∧ z i ∈ X ∧ ∥ f ∥ < ∞ } ⊂ H k
\mathcal{F} := \left\{ f \in \mathbb{R}^{X} : f \left( \cdot \right) = \sum_{i=1}^{\infty} \beta_{i} k \left( \cdot , z_{i} \right) \land \beta_{i} \in \mathbb{R} \land z_{i} \in X \land \left\| f \right\| < \infty \right\} \subset H_{k}
F := { f ∈ R X : f ( ⋅ ) = i = 1 ∑ ∞ β i k ( ⋅ , z i ) ∧ β i ∈ R ∧ z i ∈ X ∧ ∥ f ∥ < ∞ } ⊂ H k
を上記のように設定する。任意の目的関数 c : ( D × R ) m → R ‾ c : \left( D \times \mathbb{R} \right) ^{m} \to \overline{\mathbb{R}} c : ( D × R ) m → R と単調増加関数 であるレギュライザー regulizer g : R → [ 0 , ∞ ) g : \mathbb{R} \to [0,\infty) g : R → [ 0 , ∞ ) に対して、以下のように正則化された目的汎関数 regulized Objective Functional L : F → R ‾ L : \mathcal{F} \to \overline{\mathbb{R}} L : F → R が定義されているとする。
L ( f ) : = c ( ( x 1 , y 1 , f ( x 1 ) ) , ⋯ , ( x m , y m , f ( x m ) ) ) + g ( ∥ f ∥ )
L (f) := c \left( \left( x_{1}, y_{1}, f \left( x_{1} \right) \right), \cdots , \left( x_{m}, y_{m}, f \left( x_{m} \right) \right) \right) + g \left( \left\| f \right\| \right)
L ( f ) := c ( ( x 1 , y 1 , f ( x 1 ) ) , ⋯ , ( x m , y m , f ( x m ) ) ) + g ( ∥ f ∥ )
ここで、H k H_{k} H k のノルム ∥ ⋅ ∥ \left\| \cdot \right\| ∥ ⋅ ∥ は、k k k の正定値性positive Definiteness によって次のように与えられる。
∥ ∑ i = 1 ∞ β i k ( ⋅ , z i ) ∥ 2 : = ∑ i = 1 ∞ ∑ j = 1 ∞ β i β j k ( z i , z j ) ≥ 0
\left\| \sum_{i=1}^{\infty} \beta_{i} k \left( \cdot , z_{i} \right) \right\|^{2} := \sum_{i=1}^{\infty} \sum_{j=1}^{\infty} \beta_{i} \beta_{j} k \left( z_{i} , z_{j} \right) \ge 0
i = 1 ∑ ∞ β i k ( ⋅ , z i ) 2 := i = 1 ∑ ∞ j = 1 ∑ ∞ β i β j k ( z i , z j ) ≥ 0
R \mathbb{R} R は実数の集合 であり、R ‾ \overline{\mathbb{R}} R は無限大 ∞ \infty ∞ を含む拡張実数 である。R X \mathbb{R}^{X} R X は定義域が X X X で値域が R \mathbb{R} R である関数 を集めた関数空間 である。レギュライザー とは、データに対する過学習 を防ぐためのペナルティpenalty 関数である。汎関数 とは、ざっくり言えば関数自体をインプットとして受け取る関数のことである。ノンパラメトリックnonparametric L ( f ) L (f) L ( f ) を最小化する関数 f ∈ F f \in \mathcal{F} f ∈ F は、ある { α i } i = 1 m ⊂ R \left\{ \alpha_{i} \right\}_{i=1}^{m} \subset \mathbb{R} { α i } i = 1 m ⊂ R に対して次のような形で表される。
f ( ⋅ ) = ∑ i = 1 m α i k ( ⋅ , x i )
f (\cdot) = \sum_{i=1}^{m} \alpha_{i} k \left( \cdot , x_{i} \right)
f ( ⋅ ) = i = 1 ∑ m α i k ( ⋅ , x i )
セミパラメトリックsemiparametric X X X で定義された実関数の集合が { ψ p : X → R } p = 1 M \left\{ \psi_{p} : X \to \mathbb{R} \right\}_{p=1}^{M} { ψ p : X → R } p = 1 M に対して行列 ( ψ p ( x i ) ) i p \left( \psi_{p} \left( x_{i} \right) \right)_{ip} ( ψ p ( x i ) ) i p のランク が M M M であるとする。すると、f ∈ F f \in \mathcal{F} f ∈ F と h ∈ span { ψ p } h \in \span \left\{ \psi_{p} \right\} h ∈ span { ψ p } に対して
c ( ( x 1 , y 1 , f ~ ( x 1 ) ) , ⋯ , ( x m , y m , f ~ ( x m ) ) ) + g ( ∥ f ∥ )
c \left( \left( x_{1}, y_{1}, \tilde{f} \left( x_{1} \right) \right) , \cdots , \left( x_{m}, y_{m}, \tilde{f} \left( x_{m} \right) \right) \right) + g \left( \left\| f \right\| \right)
c ( ( x 1 , y 1 , f ~ ( x 1 ) ) , ⋯ , ( x m , y m , f ~ ( x m ) ) ) + g ( ∥ f ∥ )
を最小化する f ~ = f + h \tilde{f} = f + h f ~ = f + h は、ある { α i } i = 1 m , { β p } p = 1 M ⊂ R \left\{ \alpha_{i} \right\}_{i=1}^{m}, \left\{ \beta_{p} \right\}_{p=1}^{M} \subset \mathbb{R} { α i } i = 1 m , { β p } p = 1 M ⊂ R に対して次のような形で表される。
f ~ ( ⋅ ) = ∑ i = 1 m α i k ( ⋅ , x i ) + ∑ p = 1 M β p ψ p ( ⋅ )
\tilde{f} (\cdot) = \sum_{i=1}^{m} \alpha_{i} k \left( \cdot , x_{i} \right) + \sum_{p=1}^{M} \beta_{p} \psi_{p} (\cdot)
f ~ ( ⋅ ) = i = 1 ∑ m α i k ( ⋅ , x i ) + p = 1 ∑ M β p ψ p ( ⋅ )
説明 可能であれば、以下の二つのポストを先に読むことをお勧めする:
表現者 表現者定理 representer theorem は、古典的な機械学習 、特にサポートベクターマシン の文脈で最も重要な定理の一つとして、与えられたデータに対して私たちが近似しようとしている目的関数 f f f が適切なカーネル k k k に対して
f ( ⋅ ) = ∑ i = 1 m α i k ( ⋅ , x i )
f (\cdot) = \sum_{i=1}^{m} \alpha_{i} k \left( \cdot , x_{i} \right)
f ( ⋅ ) = i = 1 ∑ m α i k ( ⋅ , x i )
のような形で表されるという強力な定理である。ここでカーネルのインプットの一つが x i x_{i} x i で固定された関数
k ( ⋅ , x i ) = ϕ ( x i ) ( ⋅ ) ∈ H k
k \left( \cdot , x_{i} \right) = \phi \left( x_{i} \right) (\cdot)\in H_{k}
k ( ⋅ , x i ) = ϕ ( x i ) ( ⋅ ) ∈ H k
を表現者representer と呼ぶ。これにより、表現者定理は「再生カーネルヒルベルト空間 で学習データに適合したfitted 任意の関数は、表現者たちの有限な線形結合 で表すことができる」と要約することができる。特に、非線形回帰のためのサポートベクターマシンのカーネルトリックは、これに正確に合致している。
データサイエンスの文脈では、表現者 ϕ ( x i ) ( ⋅ ) \phi \left( x_{i} \right) (\cdot) ϕ ( x i ) ( ⋅ ) はフィーチャーマップfeature Map とも呼ばれ、任意のデータ X X X を私たちがその特徴feature を知ることができるヒルベルト空間 に移し、その有限な和で私たちが求める関数を表現できるということは、これまで私たちが学んできた多くの機械学習技術がなぜ機能してきたのかを正当化する。もちろん、数学的な保証がなく
てもそれらの技術はそれ自体で有効であるが、表現者定理があることで、それらの技術が理論的な基盤を築くことになるという点で非常に重要である。
目的関数とレギュライザー 定理のステートメントでは、目的関数 c c c とレギュライザー g g g を非常に一般的に定義しているが、実際には多くの場合、c c c はデータと f f f の適合度を測る平均残差二乗 、つまり
c = 1 m ∑ i = 1 n ( y i − f ( x i ) ) 2
c = {{ 1 } \over { m }} \sum_{i=1}^{n} \left( y_{i} - f \left( x_{i} \right) \right)^{2}
c = m 1 i = 1 ∑ n ( y i − f ( x i ) ) 2
と見なし、g g g は二乗セミノルム ペナルティ g ( ∥ f ∥ ) = λ ∥ f ∥ 2 g \left( \left\| f \right\| \right) = \lambda \left\| f \right\|^{2} g ( ∥ f ∥ ) = λ ∥ f ∥ 2 と見なしても問題ない 。
注意すべき点は、この式の形や単語の意味だけを見て目的関数とレギュライザーを区別してはいけないということである。表現者定理の最も代表的な応用がサポートベクターマシンであるが、ソフトマージンを許容するソフトマージンSVM で扱う最小化問題 は次のようである。
Minimize 1 2 ∥ w ∥ 2 2 + λ ∑ k = 1 n ξ k subject to ∣ f ( x k ) ∣ ≥ 1 − ξ k ξ k ≥ 0 k = 1 , ⋯ , n
\begin{matrix}
\text{Minimize} & {{ 1 } \over { 2 }} \left\| \mathbf{w} \right\|_{2}^{2} + \lambda \sum_{k=1}^{n} \xi_{k}
\\ \text{subject to} & \left| f \left( \mathbf{x}_{k} \right) \right| \ge 1 - \xi_{k}
\\ & \xi_{k} \ge 0
\end{matrix}
\\ k = 1, \cdots , n
Minimize subject to 2 1 ∥ w ∥ 2 2 + λ ∑ k = 1 n ξ k ∣ f ( x k ) ∣ ≥ 1 − ξ k ξ k ≥ 0 k = 1 , ⋯ , n
ここで、最適化自体だけを考えた場合、目的関数は実際には
1 2 λ ∥ w ∥ 2 2 + ∑ k = 1 n ξ k
{{ 1 } \over { 2 \lambda }} \left\| \mathbf{w} \right\|_{2}^{2} + \sum_{k=1}^{n} \xi_{k}
2 λ 1 ∥ w ∥ 2 2 + k = 1 ∑ n ξ k
と変わらず、この場合はデータとの乖離を考える ∑ k = 1 n ξ k \sum_{k=1}^{n} \xi_{k} ∑ k = 1 n ξ k が c c c であり、サポートベクターマシンの超平面 f ( x ) = w T + b f (\mathbf{x}) = \mathbf{w}^{T} + b f ( x ) = w T + b から導かれる 1 2 λ ∥ w ∥ 2 2 {{ 1 } \over { 2 \lambda }} \left\| \mathbf{w} \right\|_{2}^{2} 2 λ 1 ∥ w ∥ 2 2 が g g g として読まれるべきである。この最適化の意味を数学に置くか機械学習に置くかによって混乱することがあるが、
数学の色が強い人はSVMを「まず線形回帰 を終えてから例外を設けるもの」と見なし、∥ w ∥ 2 2 \left\| \mathbf{w} \right\|_{2}^{2} ∥ w ∥ 2 2 を最初に最小化しようとする一方で、 データサイエンスの色が強い人はSVMを「まずデータをうまく分類し、その中で最もマージンの大きな超平面 を見つけるもの」と見なし、∑ k = 1 n ξ k \sum_{k=1}^{n} \xi_{k} ∑ k = 1 n ξ k を最初に最小化しようとするためである。 どちらの視点も十分に共感できるものであり、表現者定理の応用がSVMだけでないことを考えると、ここでは暗記術のようなものを探そうとせず、問題に応じて能動的に考え受け入れる必要がある。
証明 参考文献にあるように、ノンパラメトリック表現者定理 のみを証明する。
Part 1. f = ∑ i = 1 m α i ϕ ( x i ) + v f = \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) + v f = ∑ i = 1 m α i ϕ ( x i ) + v
再生カーネルの定義 : 関数 k : X × X → C k : X \times X \to \mathbb{C} k : X × X → C が以下の二つの条件を満たす場合、H H H の再生カーネル reproducing Kernel と言う。
(i): 表現者 representer : すべての x ∈ X x \in X x ∈ X に対して
k ( ⋅ , x ) ∈ H
k \left( \cdot , x \right) \in H
k ( ⋅ , x ) ∈ H (ii) 再生性質 reproducing Property : すべての x ∈ X x \in X x ∈ X とすべての f ∈ H f \in H f ∈ H に対して
< f , k ( ⋅ , x ) > = f ( x ) = δ x ( f )
\left< f , k \left( \cdot , x \right) \right> = f(x) = \delta_{x} (f)
⟨ f , k ( ⋅ , x ) ⟩ = f ( x ) = δ x ( f )
特に、すべての x 1 , x 2 ∈ X x_{1} , x_{2} \in X x 1 , x 2 ∈ X に対して以下が成り立つ。
k ( x 1 , x 2 ) = < k ( ⋅ , x 2 ) , k ( ⋅ , x 1 ) >
k \left( x_{1} , x_{2} \right) = \left< k \left( \cdot , x_{2} \right), k \left( \cdot , x_{1} \right) \right>
k ( x 1 , x 2 ) = ⟨ k ( ⋅ , x 2 ) , k ( ⋅ , x 1 ) ⟩ 再生カーネル k : X × X → R k : X \times X \to \mathbb{R} k : X × X → R に対して x ↦ k ( ⋅ , x ) x \mapsto k (\cdot ,x) x ↦ k ( ⋅ , x ) である(表現者)関数 ϕ : X → R X \phi : X \to \mathbb{R}^{X} ϕ : X → R X を定義する。k k k は再生カーネルであるため、x ′ ∈ X x' \in X x ′ ∈ X で関数 ( ϕ ( x ) ) ( ⋅ ) \left( \phi (x) \right) (\cdot) ( ϕ ( x ) ) ( ⋅ ) の関数値はすべての x , x ′ ∈ X x, x' \in X x , x ′ ∈ X に対して
( ϕ ( x ) ) ( x ′ ) = k ( x ′ , x ) = < ϕ ( x ′ ) , ϕ ( x ) >
\left( \phi (x) \right) (x ') = k \left( x' , x \right) = \left< \phi \left( x ' \right) , \phi (x) \right>
( ϕ ( x ) ) ( x ′ ) = k ( x ′ , x ) = ⟨ ϕ ( x ′ ) , ϕ ( x ) ⟩
である。ここで < ⋅ , ⋅ > \left< \cdot , \cdot \right> ⟨ ⋅ , ⋅ ⟩ は H k H_{k} H k の内積 である。与えられた { x i } i = 1 m \left\{ x_{i} \right\}_{i=1}^{m} { x i } i = 1 m に対して、任意の関数 f ∈ F f \in \mathcal{F} f ∈ F は span { ϕ ( x i ) } i = 1 m \span \left\{ \phi \left( x_{i} \right) \right\}_{i=1}^{m} span { ϕ ( x i ) } i = 1 m の部分とそれに直交 するすべての j j j に対して
< v , ϕ ( x j ) > = 0
\left< v , \phi \left( x_{j} \right) \right> = 0
⟨ v , ϕ ( x j ) ⟩ = 0
を満たす v ∈ F v \in \mathcal{F} v ∈ F とある ( α 1 , ⋯ , α m ) ⊂ R m \left( \alpha_{1} , \cdots , \alpha_{m} \right) \subset \mathbb{R}^{m} ( α 1 , ⋯ , α m ) ⊂ R m に対して次のように表現できる。
f = ∑ i = 1 m α i ϕ ( x i ) + v
f = \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) + v
f = i = 1 ∑ m α i ϕ ( x i ) + v
ここで、
L ( f ) : = c ( ( x 1 , y 1 , f ( x 1 ) ) , ⋯ , ( x m , y m , f ( x m ) ) ) + g ( ∥ f ∥ ) = c + g
\begin{align*}
L (f) :=& c \left( \left( x_{1}, y_{1}, f \left( x_{1} \right) \right), \cdots , \left( x_{m}, y_{m}, f \left( x_{m} \right) \right) \right) + g \left( \left\| f \right\| \right)
\\ =& c + g
\end{align*}
L ( f ) := = c ( ( x 1 , y 1 , f ( x 1 ) ) , ⋯ , ( x m , y m , f ( x m ) ) ) + g ( ∥ f ∥ ) c + g
で、c c c は v v v に依存しないこと、v = 0 v = 0 v = 0 のとき f f f が L ( f ) L(f) L ( f ) を最小化することを議論する。
Part 2. c c c と v v v は独立である
関数 f = f ( ⋅ ) f = f(\cdot) f = f ( ⋅ ) と再生カーネル k ( ⋅ , x j ) k \left( \cdot , x_{j} \right) k ( ⋅ , x j ) の内積は再生性質により
= < f , k ( ⋅ , x j ) > f ( x j ) = < ∑ i = 1 m α i ϕ ( x i ) + v , ϕ ( x j ) > = ∑ i = 1 m α i < ϕ ( x i ) , ϕ ( x j ) > + 0
\begin{align*}
=& \left< f , k \left( \cdot , x_{j} \right) \right>
\\ f \left( x_{j} \right) =& \left< \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) + v , \phi \left( x_{j} \right) \right>
\\ =& \sum_{i=1}^{m} \alpha_{i} \left< \phi \left( x_{i} \right) , \phi \left( x_{j} \right) \right> + 0
\end{align*}
= f ( x j ) = = ⟨ f , k ( ⋅ , x j ) ⟩ ⟨ i = 1 ∑ m α i ϕ ( x i ) + v , ϕ ( x j ) ⟩ i = 1 ∑ m α i ⟨ ϕ ( x i ) , ϕ ( x j ) ⟩ + 0
である。これは v v v に独立であるため、L ( f ) = c + g L (f) = c + g L ( f ) = c + g で学習データ D D D と f f f にのみ依存する
c = c ( ( x 1 , y 1 , f ( x 1 ) ) , ⋯ , ( x m , y m , f ( x m ) ) )
c = c \left( \left( x_{1}, y_{1}, f \left( x_{1} \right) \right), \cdots , \left( x_{m}, y_{m}, f \left( x_{m} \right) \right) \right)
c = c ( ( x 1 , y 1 , f ( x 1 ) ) , ⋯ , ( x m , y m , f ( x m ) ) )
も v v v に独立であることがわかる。
Part 3. g g g は v = 0 v = 0 v = 0 のとき最小化される
(1): v v v は ∑ i = 1 m α i ϕ ( x i ) \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) ∑ i = 1 m α i ϕ ( x i ) に直交し、 (2): g g g が単調関数 であると仮定したため、 g ( ∥ f ∥ ) = g ( ∥ ∑ i = 1 m α i ϕ ( x i ) + v ∥ ) = g ( ∥ ∑ i = 1 m α i ϕ ( x i ) + v ∥ 2 + ∥ v ∥ 2 ) ∵ ( 1 ) ≥ g ( ∥ ∑ i = 1 m α i ϕ ( x i ) ∥ ) ∵ ( 2 )
\begin{align*}
& g \left( \left\| f \right\| \right)
\\ =& g \left( \left\| \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) + v \right\| \right)
\\ =& g \left( \sqrt{\left\| \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) + v \right\|^{2} + \left\| v \right\|^{2}} \right) & \because (1)
\\ \ge& g \left( \left\| \sum_{i=1}^{m} \alpha_{i} \phi \left( x_{i} \right) \right\| \right) & \because (2)
\end{align*}
= = ≥ g ( ∥ f ∥ ) g ( i = 1 ∑ m α i ϕ ( x i ) + v ) g i = 1 ∑ m α i ϕ ( x i ) + v 2 + ∥ v ∥ 2 g ( i = 1 ∑ m α i ϕ ( x i ) ) ∵ ( 1 ) ∵ ( 2 )
を得る。明らかに v = 0 v = 0 v = 0 のとき等式が成立し、g g g が最小化されるためには v = 0 v=0 v = 0 でなければならない。一方、Part 2で v v v は c c c に影響を与えることができないことが確認されたため、v = 0 v = 0 v = 0 としても問題なく、L = c + g L = c + g L = c + g を最小化する関数 f f f は次のような形で表現できる。
f ( ⋅ ) = ∑ i = 1 m α i k ( ⋅ , x i )
f (\cdot) = \sum_{i=1}^{m} \alpha_{i} k \left( \cdot , x_{i} \right)
f ( ⋅ ) = i = 1 ∑ m α i k ( ⋅ , x i )
■