Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
機械学習を理論から真剣に取り組んでみた件 その2:線形化に挑戦しよう!
Search
NearMeの技術発表資料です
PRO
August 18, 2023
Science
0
120
機械学習を理論から真剣に取り組んでみた件 その2:線形化に挑戦しよう!
カーネル法を用いて、線型の形で最小化問題に挑むことができるようにする方法についてです。今回では、多項式回帰について適用しています。
NearMeの技術発表資料です
PRO
August 18, 2023
Tweet
Share
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
2つの曲線を比較する方法ってあるの? 〜フレシェ距離を試してみた〜 with Python
nearme_tech
PRO
1
18
Constrained K-means Clustering (クラスタサイズの制限をしたK-means法) を調べてみた
nearme_tech
PRO
0
16
VRPの近傍操作SWAP*について調べてみた
nearme_tech
PRO
1
49
新人エンジニアが読んでためになった本
nearme_tech
PRO
2
21
Object–relational mapping and query builder battle 1: Intro to Prisma
nearme_tech
PRO
1
29
深層学習モデルの最適化 -Deep Learning Tuning Playbookを読む-
nearme_tech
PRO
1
52
機械学習を支える連続最適化
nearme_tech
PRO
1
44
サードパーティクッキーの終焉と Topics APIによる代替の可能性
nearme_tech
PRO
1
81
ONNXハンズオン
nearme_tech
PRO
2
28
Other Decks in Science
See All in Science
拡散モデルの原理紹介
brainpadpr
3
3.3k
深層学習を利用して 大豆の外部欠陥を判別した研究事例の紹介
kentaitakura
0
150
Mechanistic Interpretability の紹介
sohtakahashi
0
160
(Forkwell Library #48)『詳解 インシデントレスポンス』で学び倒すブルーチーム技術
scientia
2
1.2k
DEIM2024 チュートリアル ~AWSで生成AIのRAGを使ったチャットボットを作ってみよう~
yamahiro
3
1k
AI科学の何が“哲学”の問題になるのか ~問いマッピングの試み~
rmaruy
1
1.9k
「国と音楽」 ~spotifyrを用いて~ #muana
bob3bob3
2
390
ベイズ最適化をゼロから
brainpadpr
2
360
20240420 Global Azure 2024 | Azure Migrate でデータセンターのサーバーを評価&移行してみる
olivia_0707
2
800
AI(人工知能)の過去・現在・未来 —AIは人間を超えるのか—
tagtag
0
280
遺伝子発現プロファイルに基づく新しい薬物間相互作用予測法
tagtag
0
130
【健康&筋肉と生産性向上の関連性】 【Google Cloudを企業で運用する際の知識】 をお届け
yasumuusan
0
200
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
17
1.5k
The Art of Programming - Codeland 2020
erikaheidi
48
13k
The Pragmatic Product Professional
lauravandoore
29
6.1k
Typedesign – Prime Four
hannesfritz
37
2.2k
Robots, Beer and Maslow
schacon
PRO
157
8.1k
Fontdeck: Realign not Redesign
paulrobertlloyd
79
5.1k
Agile that works and the tools we love
rasmusluckow
325
20k
Facilitating Awesome Meetings
lara
46
5.8k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
224
21k
Rebuilding a faster, lazier Slack
samanthasiow
78
8.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
44
4.7k
Docker and Python
trallard
37
2.9k
Transcript
0 機械学習を理論から真剣に取り組んでみた件 その2:線形化に挑戦しよう! 2023-08-18 第56回NearMe技術勉強会 Asahi Kaito
1 前回のスライドの復習から始めます
2 1. 回帰について 1-1. 線形な単回帰と重回帰 • 単回帰 ◦ 1つの変数 x
に依存してある従属変数 y が関係あると仮定する ◦ 線形な単回帰では、以下の関係 (1) を仮定、ただしci (i=0, 1)は定数 ◦ 問題 → ci (i=0, 1)の決定!!
3 1. 回帰について 1-1. 線形な単回帰と重回帰 • 単回帰 ◦ 問題 →
ci (i=0, 1)の決定(最適な直線を引こう!)!!
4 1. 回帰について 1-1. 線形な単回帰と重回帰 • 線形な単回帰の基本的な解法 ◦ 訓練データ を用いて、以下の誤差関数を最小化できるci
(i=0, 1)を求める。
5 1. 回帰について 1-1. 線形な単回帰と重回帰 • 線形な単回帰の基本的な解法 ◦ 連立方程式を行列で表現して...
6 1. 回帰について 1-1. 線形な単回帰と重回帰 • 線形な単回帰の基本的な解法 ◦ 答え(係数行列の逆行列が存在すれば)
7 1. 回帰について 1-1. 線形な単回帰と重回帰 • 重回帰 ◦ 複数の変数 xi
(i=1, 2, 3, …, d) に依存している従属変数 y が関係あると仮定する ◦ 線形な重回帰では、以下の関係 (1) を仮定、ただしci (i=0, 1, 2, …, d)は定数 ◦ 問題 → ci (i=0, 1, 2, …, d) の決定!!
8 1. 回帰について 1-1. 線形な単回帰と重回帰 • 重回帰 ◦ これを、訓練データ分計算する必要があるので、さらに行列に拡張する
9 1. 回帰について 1-1. 線形な単回帰と重回帰 • 重回帰 ◦ ここでも、二乗誤差を計算してみる
10 1. 回帰について 1-1. 線形な単回帰と重回帰 • 重回帰 ◦ ベクトルで微分を行って、この値が0となるとき、 これが存在すれば
11 1. 回帰について 1-2. 非線形な単回帰と重回帰 • 非線形とは ◦ 説明変数が1次以外のものが含まれている ◦
例1: ◦ 例2: → ものによっては、線形のときのようにうまくいかないものも... → なんとか線形化できないか?
12 2回目:線形化手法 〜カーネル法〜
13 2. 線形化手法 〜カーネル法〜 2-1. カーネル関数について 2-1-1. カーネル関数とは • kが集合X上の2変数関数 •
以下の2つを満たすとき、kは集合X上のカーネル関数という (1) (2)
14 2. 線形化手法 〜カーネル法〜 2-1. カーネル関数について 2-1-2. カーネル関数の必要性 • 次元を上げることができる ◦
どういうこと? ▪ k(x, y)の分布は、x, yが実数であれば、3次元に分布する(z=k(x, y)) ▪ 高次元化することで、分類がより明確になることがある
15 2. 線形化手法 〜カーネル法〜 2-1. カーネル関数について 2-1-3. カーネル関数の例 • 以下の2つのものは、カーネル関数の例 (1)
(2)
16 2. 線形化手法 〜カーネル法〜 2-1. カーネル関数について 2-1-4. カーネル関数の特徴 • カーネル関数の和や積も、カーネル関数になる (1)
(2)
17 2. 線形化手法 〜カーネル法〜 2-1. カーネル関数について 2-1-4. カーネル関数の特徴 • これらを組み合わせて、カーネル関数を構築していく→どんなものがあるのかな? (1)
(2) (3) (4)
18 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の構築 2-2-1. カーネル関数の具体例 • 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう
19 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の構築 2-2-1. カーネル関数の具体例 • 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう (1)
20 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の構築 2-2-1. カーネル関数の具体例 • 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう (1)
21 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の構築 2-2-1. カーネル関数の具体例 • 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう (1)
22 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の構築 2-2-1. カーネル関数の具体例 • 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう (1)
23 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の構築 2-2-1. カーネル関数の具体例 • 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう (2)
24 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の構築 2-2-1. カーネル関数の具体例 • 以下の関数(ガウスカーネル)がカーネル関数であることを示しましょう (2)
25 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の利用(多項式回帰) 入力データ 出力データ 以下を最小にする次数が d
以下の多項式 f を見つけよ。
26 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の利用(多項式回帰) 適当なベクトル 以下の多項式 fv の次数は
d 以下となる。
27 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の利用(多項式回帰) で張られる空間への直交射影 P を用いると、
28 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の利用(多項式回帰) よって、以下のようにベクトル v を設定して良い!
29 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の利用(多項式回帰)
30 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の利用(多項式回帰)
31 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の利用(多項式回帰) → 係数 c を分離することができた!! カーネル関数
32 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の利用(多項式回帰)
33 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の利用(多項式回帰) 入力データ 出力データ 以下を最小にする次数が d
以下の多項式 f を見つけよ。
34 2. 線形化手法 〜カーネル法〜 2-2. カーネル関数の利用(多項式回帰)
35 2. 線形化手法 〜カーネル法〜 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
38 Thank you