カーネル法を用いて、線型の形で最小化問題に挑むことができるようにする方法についてです。今回では、多項式回帰について適用しています。
0機械学習を理論から真剣に取り組んでみた件その2:線形化に挑戦しよう!2023-08-18 第56回NearMe技術勉強会Asahi Kaito
View Slide
1前回のスライドの復習から始めます
21. 回帰について1-1. 線形な単回帰と重回帰● 単回帰○ 1つの変数 x に依存してある従属変数 y が関係あると仮定する○ 線形な単回帰では、以下の関係 (1) を仮定、ただしci (i=0, 1)は定数○ 問題 → ci (i=0, 1)の決定!!
31. 回帰について1-1. 線形な単回帰と重回帰● 単回帰○ 問題 → ci (i=0, 1)の決定(最適な直線を引こう!)!!
41. 回帰について1-1. 線形な単回帰と重回帰● 線形な単回帰の基本的な解法○ 訓練データ を用いて、以下の誤差関数を最小化できるci (i=0, 1)を求める。
51. 回帰について1-1. 線形な単回帰と重回帰● 線形な単回帰の基本的な解法○ 連立方程式を行列で表現して...
61. 回帰について1-1. 線形な単回帰と重回帰● 線形な単回帰の基本的な解法○ 答え(係数行列の逆行列が存在すれば)
71. 回帰について1-1. 線形な単回帰と重回帰● 重回帰○ 複数の変数 xi(i=1, 2, 3, …, d) に依存している従属変数 y が関係あると仮定する○ 線形な重回帰では、以下の関係 (1) を仮定、ただしci (i=0, 1, 2, …, d)は定数○ 問題 → ci(i=0, 1, 2, …, d) の決定!!
81. 回帰について1-1. 線形な単回帰と重回帰● 重回帰○ これを、訓練データ分計算する必要があるので、さらに行列に拡張する
91. 回帰について1-1. 線形な単回帰と重回帰● 重回帰○ ここでも、二乗誤差を計算してみる
101. 回帰について1-1. 線形な単回帰と重回帰● 重回帰○ ベクトルで微分を行って、この値が0となるとき、これが存在すれば
111. 回帰について1-2. 非線形な単回帰と重回帰● 非線形とは○ 説明変数が1次以外のものが含まれている○ 例1:○ 例2:→ ものによっては、線形のときのようにうまくいかないものも... → なんとか線形化できないか?
122回目:線形化手法 〜カーネル法〜
132. 線形化手法 〜カーネル法〜2-1. カーネル関数について2-1-1. カーネル関数とは● kが集合X上の2変数関数● 以下の2つを満たすとき、kは集合X上のカーネル関数という(1)(2)
142. 線形化手法 〜カーネル法〜2-1. カーネル関数について2-1-2. カーネル関数の必要性● 次元を上げることができる○ どういうこと?■ k(x, y)の分布は、x, yが実数であれば、3次元に分布する(z=k(x, y))■ 高次元化することで、分類がより明確になることがある
152. 線形化手法 〜カーネル法〜2-1. カーネル関数について2-1-3. カーネル関数の例● 以下の2つのものは、カーネル関数の例(1) (2)
162. 線形化手法 〜カーネル法〜2-1. カーネル関数について2-1-4. カーネル関数の特徴● カーネル関数の和や積も、カーネル関数になる(1) (2)
172. 線形化手法 〜カーネル法〜2-1. カーネル関数について2-1-4. カーネル関数の特徴● これらを組み合わせて、カーネル関数を構築していく→どんなものがあるのかな?(1)(2)(3)(4)
182. 線形化手法 〜カーネル法〜2-2. カーネル関数の構築2-2-1. カーネル関数の具体例● 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう
192. 線形化手法 〜カーネル法〜2-2. カーネル関数の構築2-2-1. カーネル関数の具体例● 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう(1)
202. 線形化手法 〜カーネル法〜2-2. カーネル関数の構築2-2-1. カーネル関数の具体例● 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう(1)
212. 線形化手法 〜カーネル法〜2-2. カーネル関数の構築2-2-1. カーネル関数の具体例● 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう(1)
222. 線形化手法 〜カーネル法〜2-2. カーネル関数の構築2-2-1. カーネル関数の具体例● 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう(1)
232. 線形化手法 〜カーネル法〜2-2. カーネル関数の構築2-2-1. カーネル関数の具体例● 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう(2)
242. 線形化手法 〜カーネル法〜2-2. カーネル関数の構築2-2-1. カーネル関数の具体例● 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう(2)
252. 線形化手法 〜カーネル法〜2-2. カーネル関数の利用(多項式回帰)入力データ 出力データ 以下を最小にする次数が d 以下の多項式 f を見つけよ。
262. 線形化手法 〜カーネル法〜2-2. カーネル関数の利用(多項式回帰) 適当なベクトル 以下の多項式 fv の次数は d 以下となる。
272. 線形化手法 〜カーネル法〜2-2. カーネル関数の利用(多項式回帰) で張られる空間への直交射影 P を用いると、
282. 線形化手法 〜カーネル法〜2-2. カーネル関数の利用(多項式回帰)よって、以下のようにベクトル v を設定して良い!
292. 線形化手法 〜カーネル法〜2-2. カーネル関数の利用(多項式回帰)
302. 線形化手法 〜カーネル法〜2-2. カーネル関数の利用(多項式回帰)
312. 線形化手法 〜カーネル法〜2-2. カーネル関数の利用(多項式回帰)→ 係数 c を分離することができた!!カーネル関数
322. 線形化手法 〜カーネル法〜2-2. カーネル関数の利用(多項式回帰)
332. 線形化手法 〜カーネル法〜2-2. カーネル関数の利用(多項式回帰)入力データ 出力データ 以下を最小にする次数が d 以下の多項式 f を見つけよ。
342. 線形化手法 〜カーネル法〜2-2. カーネル関数の利用(多項式回帰)
352. 線形化手法 〜カーネル法〜2-3. カーネル関数の実践(多項式回帰)To Colab :https://colab.research.google.com/drive/1pGGa5ui-RxsKLNi5Wb50zVLyn3Hbx4Dk?usp=sharing
36次回少しステップアップ!カーネル回帰
37参考図書http://www.rokakuho.co.jp/data/books/0171.html http://www.rokakuho.co.jp/data/books/0172.html
38Thank you