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の技術発表資料です
August 18, 2023
Science
0
110
機械学習を理論から真剣に取り組んでみた件 その2:線形化に挑戦しよう!
カーネル法を用いて、線型の形で最小化問題に挑むことができるようにする方法についてです。今回では、多項式回帰について適用しています。
NearMeの技術発表資料です
August 18, 2023
Tweet
Share
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
サードパーティクッキーの終焉と Topics APIによる代替の可能性
nearme_tech
1
11
ONNXハンズオン
nearme_tech
2
15
DBのindex(B-tree周り) に触れてみよう
nearme_tech
0
18
Infrastructure as Code: Intro to Pulumi
nearme_tech
1
26
OR-Toolsの中⾝ -VRPの解法について-
nearme_tech
0
67
GTFSのデータを Streamlitで可視化してみた
nearme_tech
0
53
Offset / Cursor Paginationについて
nearme_tech
2
98
⼤規模⾔語モデルの拡張(RAG)が 終わったかも知れない件について
nearme_tech
23
16k
VRPを深層強化学習で解く
nearme_tech
0
82
Other Decks in Science
See All in Science
DEIM2024 チュートリアル ~AWSで生成AIのRAGを使ったチャットボットを作ってみよう~
yamahiro
3
810
統計的因果探索の方法
sshimizu2006
1
920
Pandas 2 vs Polars vs Dask (PyDataGlobal 2023 December)
ianozsvald
0
530
東大・松尾研主催 LLM Summer 2023 コンペ解法 (11位 – 20位枠での優秀賞)
hayataka88
0
210
効果検証入門に物申してみた_JapanR_2023
s1ok69oo
6
4.7k
Running llama.cpp on the CPU
ianozsvald
0
250
拡散モデルの原理紹介
brainpadpr
3
2.4k
HIBINO Aiko
genomethica
0
410
Spark_Task_Optimization_Journey_How_I_Increased_10x_Speed_by_Performance_Tuning
tlyu0419
0
210
LCG20
lcolladotor
0
240
Presenting Effectively with Data (in a Hurry)
thomaselove
1
270
Machine Learning for Materials (Lecture 1)
aronwalsh
1
1.6k
Featured
See All Featured
How GitHub Uses GitHub to Build GitHub
holman
469
290k
Embracing the Ebb and Flow
colly
80
4.2k
For a Future-Friendly Web
brad_frost
172
9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
16
1.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
117
18k
How to train your dragon (web standard)
notwaldorf
76
5.3k
Infographics Made Easy
chrislema
238
18k
The Art of Programming - Codeland 2020
erikaheidi
43
12k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
85
45k
Statistics for Hackers
jakevdp
790
220k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
9
3.6k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
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