統計的機械学習」カテゴリーアーカイブ

サポートベクトルは必ず1個以上存在

「統計的機械学習の数理」の8章(サポートベクトルマシン)3節と同じ議論は、“The Elements of Statistical Learning”やBishop本(“Pattern Recognition and Machine Learning”)でもされていますが、$y_i(\beta_0+x_i\beta)=1$なる$i$が少なくとも1個存在する理由について書かれていません。拙書で記載したのですが、よく検討したら誤っていました。直感的には、「サポートベクトルが存在しないとマージンをもっと大きくできる」が正解ですが、それを数学的にしかも短く書けないかと思っていました。

まず、$y_1,\ldots,y_N$がすべて等しいということはないと仮定します。この仮定は一般的です。すべて等しい場合は、マージンが存在しません。

その上で、$A=\{i|y_i(\beta_0+x_i\beta)>1\}$, $B=\{i|y_i(\beta_0+x_i\beta)<1\}$の和集合が$\{1,\ldots,N\}$であるとして、矛盾を導きます。ただし、$B$が空集合で$A$ばかりの場合は$\beta=0$となり、$y_i\beta_0>1$がすべての$i\in A$で成立することを意味し、仮定と矛盾します。そこで、以下では、$B$が空集合ではないと仮定します。

まず、(8.18), (8.19)がそれぞれ$$\beta=C\sum_{i\in B}y_ix_i^\top$$ $$\sum_{i\in B}y_i=0$$ (8.16)で$i=1,\ldots, N$ に関して和を取ると、$i\in A$について$\alpha_i=0$であるので、$$C\sum_{i\in B}\{ y_i(\beta_0+x_i\beta)-(1-\epsilon_i)\}=0$$であり、上の2式を代入すると、$$\beta^\top \beta=C\sum_{i\in B}(1-\epsilon_i)$$が成立します。それらを(8.3)に代入すると、$$L_P=C\{-\frac{1}{2}\sum_{i\in B}(1-\epsilon_i)+\sum_{i\in A}\epsilon_i+N\}$$となります。ここで、$i\in A$では(8.17)より$\epsilon_i=0$、$i\in B$では(8.14)より$\epsilon_i>0$となります。このことは、集合$A,B$の要素を変えない範囲で、$i\in B$の$\epsilon_i$のどれかを小さくすれば、$L_P$の値をさらに小さくでき、最適性と矛盾します。したがって、$A\cup B\not=\{1,\ldots,N\}$が成立します。

いずれの場合でも、$y_i(\beta_0+x_i\beta)=1$なる$i$が1個は存在します。

統計的機械学習の数理100問 with Rが、日本行動計量学会出版賞を受賞

鈴木讓著『統計的機械学習の数理100問 with R』が2023年度日本行動計量学会出版賞(杉山明子賞)を受賞しました。受賞理由は、「本書は、機械学習を実際に行うことを通じて基礎的な仕組みを理解させるもので、行動計量学に携わろうとする研究者が研究をおこなっていく基礎力の修得をさせ、将来的にも理解して活用する研究を進めるのに多大の貢献が期待され,出版賞に十分値する。また、著者は、機械学習の数理について一連のシリーズ本を書いており、そのことの意義も大きい。」ということでした。8月28日から31日まで青山学院大学で開催された日本行動計量学会第51回大会で、狩野裕理事長(大阪大学)から賞状と副賞をいただきました。