Movatterモバイル変換
[0]
ホーム
URL:
画像なし
夜間モード
Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
SN
Uploaded by
Shuyo Nakatani
PDF, PPTX
51,506 views
数式を綺麗にプログラミングするコツ #spro2013
Technology
◦
Read more
208
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 26
2
/ 26
3
/ 26
4
/ 26
5
/ 26
6
/ 26
7
/ 26
8
/ 26
9
/ 26
10
/ 26
11
/ 26
12
/ 26
Most read
13
/ 26
Most read
14
/ 26
Most read
15
/ 26
16
/ 26
17
/ 26
18
/ 26
19
/ 26
20
/ 26
21
/ 26
22
/ 26
23
/ 26
24
/ 26
25
/ 26
26
/ 26
Recommended
PDF
機械学習と深層学習の数理
by
Ryo Nakamura
PDF
目指せグラフマスター
by
HCPC: 北海道大学競技プログラミングサークル
PDF
最適化超入門
by
Takami Sato
PDF
直交領域探索
by
okuraofvegetable
PDF
[DL輪読会]Deep Learning 第15章 表現学習
by
Deep Learning JP
PDF
Optimizer入門&最新動向
by
Motokawa Tetsuya
PDF
階層ベイズとWAIC
by
Hiroshi Shimizu
PPTX
[DL輪読会]Pay Attention to MLPs(gMLP)
by
Deep Learning JP
PDF
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料
by
Ken'ichi Matsui
PDF
グラフニューラルネットワーク入門
by
ryosuke-kojima
PPTX
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
by
Masashi Komori
PPTX
深層学習の数理
by
Taiji Suzuki
PDF
図と実装で理解する『木構造入門』
by
Proktmr
PDF
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
by
Preferred Networks
PDF
指数時間アルゴリズム入門
by
Yoichi Iwata
PDF
強化学習その2
by
nishio
PDF
Stanコードの書き方 中級編
by
Hiroshi Shimizu
PDF
機械学習のためのベイズ最適化入門
by
hoxo_m
PPTX
SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜
by
SSII
PDF
線形計画法入門
by
Shunji Umetani
PPTX
ホモトピー型理論入門
by
k h
PPTX
MCMCでマルチレベルモデル
by
Hiroshi Shimizu
PDF
合成変量とアンサンブル:回帰森と加法モデルの要点
by
Ichigaku Takigawa
PDF
Marp Tutorial
by
Rui Watanabe
PDF
階層モデルの分散パラメータの事前分布について
by
hoxo_m
PDF
最近のDeep Learning (NLP) 界隈におけるAttention事情
by
Yuta Kikuchi
PDF
最適輸送の計算アルゴリズムの研究動向
by
ohken
PDF
Variational AutoEncoder
by
Kazuki Nitta
PDF
数式をnumpyに落としこむコツ
by
Shuyo Nakatani
PDF
NumPy闇入門
by
Ryosuke Okuta
More Related Content
PDF
機械学習と深層学習の数理
by
Ryo Nakamura
PDF
目指せグラフマスター
by
HCPC: 北海道大学競技プログラミングサークル
PDF
最適化超入門
by
Takami Sato
PDF
直交領域探索
by
okuraofvegetable
PDF
[DL輪読会]Deep Learning 第15章 表現学習
by
Deep Learning JP
PDF
Optimizer入門&最新動向
by
Motokawa Tetsuya
PDF
階層ベイズとWAIC
by
Hiroshi Shimizu
PPTX
[DL輪読会]Pay Attention to MLPs(gMLP)
by
Deep Learning JP
機械学習と深層学習の数理
by
Ryo Nakamura
目指せグラフマスター
by
HCPC: 北海道大学競技プログラミングサークル
最適化超入門
by
Takami Sato
直交領域探索
by
okuraofvegetable
[DL輪読会]Deep Learning 第15章 表現学習
by
Deep Learning JP
Optimizer入門&最新動向
by
Motokawa Tetsuya
階層ベイズとWAIC
by
Hiroshi Shimizu
[DL輪読会]Pay Attention to MLPs(gMLP)
by
Deep Learning JP
What's hot
PDF
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料
by
Ken'ichi Matsui
PDF
グラフニューラルネットワーク入門
by
ryosuke-kojima
PPTX
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
by
Masashi Komori
PPTX
深層学習の数理
by
Taiji Suzuki
PDF
図と実装で理解する『木構造入門』
by
Proktmr
PDF
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
by
Preferred Networks
PDF
指数時間アルゴリズム入門
by
Yoichi Iwata
PDF
強化学習その2
by
nishio
PDF
Stanコードの書き方 中級編
by
Hiroshi Shimizu
PDF
機械学習のためのベイズ最適化入門
by
hoxo_m
PPTX
SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜
by
SSII
PDF
線形計画法入門
by
Shunji Umetani
PPTX
ホモトピー型理論入門
by
k h
PPTX
MCMCでマルチレベルモデル
by
Hiroshi Shimizu
PDF
合成変量とアンサンブル:回帰森と加法モデルの要点
by
Ichigaku Takigawa
PDF
Marp Tutorial
by
Rui Watanabe
PDF
階層モデルの分散パラメータの事前分布について
by
hoxo_m
PDF
最近のDeep Learning (NLP) 界隈におけるAttention事情
by
Yuta Kikuchi
PDF
最適輸送の計算アルゴリズムの研究動向
by
ohken
PDF
Variational AutoEncoder
by
Kazuki Nitta
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料
by
Ken'ichi Matsui
グラフニューラルネットワーク入門
by
ryosuke-kojima
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
by
Masashi Komori
深層学習の数理
by
Taiji Suzuki
図と実装で理解する『木構造入門』
by
Proktmr
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
by
Preferred Networks
指数時間アルゴリズム入門
by
Yoichi Iwata
強化学習その2
by
nishio
Stanコードの書き方 中級編
by
Hiroshi Shimizu
機械学習のためのベイズ最適化入門
by
hoxo_m
SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜
by
SSII
線形計画法入門
by
Shunji Umetani
ホモトピー型理論入門
by
k h
MCMCでマルチレベルモデル
by
Hiroshi Shimizu
合成変量とアンサンブル:回帰森と加法モデルの要点
by
Ichigaku Takigawa
Marp Tutorial
by
Rui Watanabe
階層モデルの分散パラメータの事前分布について
by
hoxo_m
最近のDeep Learning (NLP) 界隈におけるAttention事情
by
Yuta Kikuchi
最適輸送の計算アルゴリズムの研究動向
by
ohken
Variational AutoEncoder
by
Kazuki Nitta
Viewers also liked
PDF
数式をnumpyに落としこむコツ
by
Shuyo Nakatani
PDF
NumPy闇入門
by
Ryosuke Okuta
PDF
無限関係モデル (続・わかりやすいパターン認識 13章)
by
Shuyo Nakatani
PDF
CuPy解説
by
Ryosuke Okuta
PDF
Prml 2.3
by
Yuuki Saitoh
PDF
Prml4.4 ラプラス近似~ベイズロジスティック回帰
by
Yuki Matsubara
PPTX
Simple perceptron by TJO
by
Takashi J OZAKI
PDF
猫に教えてもらうルベーグ可測
by
Shuyo Nakatani
PDF
多次元配列の効率的利用法の検討
by
Yu Sato
PDF
Chainer meetup lt
by
Ace12358
PDF
ボケるRNNを学習したい (Chainer meetup 01)
by
Motoki Sato
PDF
Chainer Contribution Guide
by
Kenta Oono
PPTX
ディープラーニングにおける学習の高速化の重要性とその手法
by
Yuko Fujiyama
PDF
111015 tokyo scipy2_ディスカッション
by
Shohei Hido
PDF
PRML 2.3
by
Yuto Suzuki
PDF
Lighting talk chainer hands on
by
Ogushi Masaya
数式をnumpyに落としこむコツ
by
Shuyo Nakatani
NumPy闇入門
by
Ryosuke Okuta
無限関係モデル (続・わかりやすいパターン認識 13章)
by
Shuyo Nakatani
CuPy解説
by
Ryosuke Okuta
Prml 2.3
by
Yuuki Saitoh
Prml4.4 ラプラス近似~ベイズロジスティック回帰
by
Yuki Matsubara
Simple perceptron by TJO
by
Takashi J OZAKI
猫に教えてもらうルベーグ可測
by
Shuyo Nakatani
多次元配列の効率的利用法の検討
by
Yu Sato
Chainer meetup lt
by
Ace12358
ボケるRNNを学習したい (Chainer meetup 01)
by
Motoki Sato
Chainer Contribution Guide
by
Kenta Oono
ディープラーニングにおける学習の高速化の重要性とその手法
by
Yuko Fujiyama
111015 tokyo scipy2_ディスカッション
by
Shohei Hido
PRML 2.3
by
Yuto Suzuki
Lighting talk chainer hands on
by
Ogushi Masaya
Similar to 数式を綺麗にプログラミングするコツ #spro2013
PDF
行列計算アルゴリズム
by
Takuo Tachibana
PDF
競技プログラミングでの線型方程式系
by
tmaehara
PDF
PRML復々習レーン#9 前回までのあらすじ
by
sleepy_yoshi
PDF
PRML 8.4-8.4.3
by
KunihiroTakeoka
PDF
Rで学ぶデータマイニングI 第8章〜第13章
by
Prunus 1350
PDF
データ解析1 ベクトルの復習
by
Hirotaka Hachiya
PDF
PRML10-draft1002
by
Toshiyuki Shimono
PDF
Matrix
by
Hisao Soyama
PPTX
【Deep Learning (MIT Press)】線形代数 2.1~2.7
by
京都大学人工知能研究会 KaiRA
PDF
さくっと線形代数
by
Kota Mori
PDF
第9回 配信講義 計算科学技術特論A(2021)
by
RCCSRENKEI
PDF
第7回スキル養成講座講義スライド
by
keiodig
PDF
PRML輪講用資料10章(パターン認識と機械学習,近似推論法)
by
Toshiyuki Shimono
PDF
PFI Christmas seminar 2009
by
Preferred Networks
PPT
R intro
by
yayamamo @ DBCLS Kashiwanoha
PDF
2015年度春学期 画像情報処理 第8回 行列の直交変換と画像情報圧縮 (2015. 6. 10)
by
Akira Asano
PDF
2014年度春学期 画像情報処理 第8回 行列の直交変換 (2014. 6. 4)
by
Akira Asano
PPTX
mathemaical_notation
by
Kenta Oono
PDF
CMSI計算科学技術特論A (2015) 第11回 行列計算における高速アルゴリズム2
by
Computational Materials Science Initiative
PDF
El text.tokuron a(2019).yamamoto190627
by
RCCSRENKEI
行列計算アルゴリズム
by
Takuo Tachibana
競技プログラミングでの線型方程式系
by
tmaehara
PRML復々習レーン#9 前回までのあらすじ
by
sleepy_yoshi
PRML 8.4-8.4.3
by
KunihiroTakeoka
Rで学ぶデータマイニングI 第8章〜第13章
by
Prunus 1350
データ解析1 ベクトルの復習
by
Hirotaka Hachiya
PRML10-draft1002
by
Toshiyuki Shimono
Matrix
by
Hisao Soyama
【Deep Learning (MIT Press)】線形代数 2.1~2.7
by
京都大学人工知能研究会 KaiRA
さくっと線形代数
by
Kota Mori
第9回 配信講義 計算科学技術特論A(2021)
by
RCCSRENKEI
第7回スキル養成講座講義スライド
by
keiodig
PRML輪講用資料10章(パターン認識と機械学習,近似推論法)
by
Toshiyuki Shimono
PFI Christmas seminar 2009
by
Preferred Networks
R intro
by
yayamamo @ DBCLS Kashiwanoha
2015年度春学期 画像情報処理 第8回 行列の直交変換と画像情報圧縮 (2015. 6. 10)
by
Akira Asano
2014年度春学期 画像情報処理 第8回 行列の直交変換 (2014. 6. 4)
by
Akira Asano
mathemaical_notation
by
Kenta Oono
CMSI計算科学技術特論A (2015) 第11回 行列計算における高速アルゴリズム2
by
Computational Materials Science Initiative
El text.tokuron a(2019).yamamoto190627
by
RCCSRENKEI
More from Shuyo Nakatani
PDF
星野「調査観察データの統計科学」第3章
by
Shuyo Nakatani
PDF
ノンパラベイズ入門の入門
by
Shuyo Nakatani
PDF
星野「調査観察データの統計科学」第1&2章
by
Shuyo Nakatani
PDF
Active Learning 入門
by
Shuyo Nakatani
PDF
画像をテキストで検索したい!(OpenAI CLIP) - VRC-LT #15
by
Shuyo Nakatani
PDF
ドラえもんでわかる統計的因果推論 #TokyoR
by
Shuyo Nakatani
PDF
Generative adversarial networks
by
Shuyo Nakatani
PDF
Zipf? (ジップ則のひみつ?) #DSIRNLP
by
Shuyo Nakatani
PDF
言語処理するのに Python でいいの? #PyDataTokyo
by
Shuyo Nakatani
PDF
Short Text Language Detection with Infinity-Gram
by
Shuyo Nakatani
PDF
RとStanでクラウドセットアップ時間を分析してみたら #TokyoR
by
Shuyo Nakatani
PDF
ACL2014 Reading: [Zhang+] "Kneser-Ney Smoothing on Expected Count" and [Pickh...
by
Shuyo Nakatani
PDF
[Yang, Downey and Boyd-Graber 2015] Efficient Methods for Incorporating Knowl...
by
Shuyo Nakatani
PDF
Memory Networks (End-to-End Memory Networks の Chainer 実装)
by
Shuyo Nakatani
PDF
アラビア語とペルシャ語の見分け方 #DSIRNLP 5
by
Shuyo Nakatani
PDF
ソーシャルメディアの多言語判定 #SoC2014
by
Shuyo Nakatani
PDF
どの言語でつぶやかれたのか、機械が知る方法 #WebDBf2013
by
Shuyo Nakatani
PDF
[Karger+ NIPS11] Iterative Learning for Reliable Crowdsourcing Systems
by
Shuyo Nakatani
PDF
[Kim+ ICML2012] Dirichlet Process with Mixed Random Measures : A Nonparametri...
by
Shuyo Nakatani
PDF
人工知能と機械学習の違いって?
by
Shuyo Nakatani
星野「調査観察データの統計科学」第3章
by
Shuyo Nakatani
ノンパラベイズ入門の入門
by
Shuyo Nakatani
星野「調査観察データの統計科学」第1&2章
by
Shuyo Nakatani
Active Learning 入門
by
Shuyo Nakatani
画像をテキストで検索したい!(OpenAI CLIP) - VRC-LT #15
by
Shuyo Nakatani
ドラえもんでわかる統計的因果推論 #TokyoR
by
Shuyo Nakatani
Generative adversarial networks
by
Shuyo Nakatani
Zipf? (ジップ則のひみつ?) #DSIRNLP
by
Shuyo Nakatani
言語処理するのに Python でいいの? #PyDataTokyo
by
Shuyo Nakatani
Short Text Language Detection with Infinity-Gram
by
Shuyo Nakatani
RとStanでクラウドセットアップ時間を分析してみたら #TokyoR
by
Shuyo Nakatani
ACL2014 Reading: [Zhang+] "Kneser-Ney Smoothing on Expected Count" and [Pickh...
by
Shuyo Nakatani
[Yang, Downey and Boyd-Graber 2015] Efficient Methods for Incorporating Knowl...
by
Shuyo Nakatani
Memory Networks (End-to-End Memory Networks の Chainer 実装)
by
Shuyo Nakatani
アラビア語とペルシャ語の見分け方 #DSIRNLP 5
by
Shuyo Nakatani
ソーシャルメディアの多言語判定 #SoC2014
by
Shuyo Nakatani
どの言語でつぶやかれたのか、機械が知る方法 #WebDBf2013
by
Shuyo Nakatani
[Karger+ NIPS11] Iterative Learning for Reliable Crowdsourcing Systems
by
Shuyo Nakatani
[Kim+ ICML2012] Dirichlet Process with Mixed Random Measures : A Nonparametri...
by
Shuyo Nakatani
人工知能と機械学習の違いって?
by
Shuyo Nakatani
数式を綺麗にプログラミングするコツ #spro2013
1.
数式を綺麗にプログラミングするコツ夏のプログラミングシンポジウム 20132013/8/25中谷 秀洋@サイボウズ・ラボ
/ @shuyo
2.
今回のおはなし
3.
「ビッグデータの手法を実装」ってどうするの?手法いろいろ数式! 数式!! 数式!!!実装
4.
「数式→実装」は共通機械学習数式! 数式!! 数式!!!実装ここは共通←数値解析
統計処理
5.
数式から実装まで数式! 数式!! 数式!!!実装数式見てすぐ実装?ムリムリ!
6.
小さいステップに分解数式! 数式!! 数式!!!実装数式から行間の情報を読み解く「逐語訳」できる形に数式を書き換える今日のポイント
7.
この後の流れ1. 数式がそこにあった– 「式はどうやって出てきたか」は考慮しない2.
数式を読み解く3. 数式を書き換える4. 数式を「逐語訳」で実装
8.
対象とする「数式」• 行列やその要素の掛け算が出てくる数式– 機械学習などの手法には、行列を使って表されているものが多い–
強力な線形代数ライブラリをうまく使えば楽に実装できる• 数式の例はC.M.ビショップ「パターン認識と機械学習」(以降 PRML)から採用– ただし機械学習の知識は一切要求しない
9.
方針• 「楽に」「確実に」実装しよう– 間違いにくく、可読性が高い–
最速は必ずしも目指していない• 動くものを確かに作れるようになってから• Python/numpy と R での実装例を紹介– 基本的な行列計算しか使わないので、その他の環境(Eigen など)にも参考になる(はず)
10.
書き換え不要なパターン
11.
まずは一番簡単なパターンから𝒘 = 𝚽
𝑇 𝚽 −1 𝚽 𝑇 𝒕 (PRML 3.15 改)• 線形回帰のパラメータ推定の式– 「線形回帰とは何か」などは一切気にせず、この式を実装することのみ考える
12.
数式の「読み解き」𝒘 = 𝚽
𝑇 𝚽 −1 𝚽 𝑇 𝒕 (PRML 3.15 改)• 𝚽:N×M次元の特徴行列– 「特徴行列とは?」は気にしない– 「N×M次元の行列」ということだけ• t:N次のベクトル(正解データ)– 中身は気にしない(以下同様)• w はベクトル? 行列? 何次の?
13.
掛け算した行列(ベクトル)のサイズ𝒘 = 𝚽
𝑇𝚽 −1𝚽 𝑇𝒕M×1 ← (M×N N×M) M×N N×1隣接する行列の列数と行数は一致。そうでなければどこかが間違ってる各行列のサイズ。ベクトルは1列の行列としてこの段階で勘違いしていると実装できないので丁寧に確認しておく両端の行数・列数が行列(ベクトル)のサイズ。列数が1ならベクトル
14.
numpy に「逐語訳」𝒘 =
𝚽 𝑇 𝚽 −1 𝚽 𝑇 𝒕 (PRML 3.15 改)# PHI = N×M次元の特徴行列# t = N次のベクトル(正解データ)w = numpy.linalg.solve(numpy.dot(PHI.T, PHI),numpy.dot(PHI.T, t))※ 逆行列のところで inv() を使ってもいいがsolve() の方がコードが短く、速度も速いnumpy.dot(PHI.T, PHI) numpy.dot(PHI.T, t)𝑨−1 𝒃 = numpy.linalg.solve(𝑨, 𝒃)
15.
R に「逐語訳」𝒘 =
𝚽 𝑇 𝚽 −1 𝚽 𝑇 𝒕 (PRML 3.15 改)# PHI = N×M次元の特徴行列# T = N次のベクトル(正解データ)w <- solve(t(PHI) %*% PHI, t(PHI) %*% T)# crossprod(X) = t(X) %*% X 関数を使っても良いw <- solve(crossprod(PHI), crossprod(PHI, T))t(PHI) %*% PHI t(PHI) %*% T𝑨−1 𝒃 = solve(𝑨, 𝒃)
16.
書き換えが必要になるパターン
17.
多クラスロジスティック回帰の誤差関数の勾配𝛻𝒘 𝑘𝐸 𝑾
= 𝑦 𝑛𝑘 − 𝑡 𝑛𝑘 𝝓 𝑛𝑁𝑛=1(k = 1, ⋯ , 𝐾)(PRML 4.109 改)• 𝒀 = 𝑦 𝑛𝑘 : N×K 次行列(予測値)• 𝑻 = 𝑡 𝑛𝑘 : N×K 次行列(1-of-K 表現)• 𝑾 = 𝒘1, … , 𝒘 𝐾 = (𝑤 𝑚𝑘) : M×K 次行列• 𝚽 = 𝜙 𝑛𝑚 = 𝝓1, ⋯ , 𝝓 𝑁𝑇: N×M 次行列– 𝝓 𝑛 = 𝝓 𝒙 𝑛 = 𝜙 𝑚 𝒙 𝑛𝑇: M 次ベクトル与えられている情報実装に関係するのはサイズだけ
18.
「勾配」の扱い𝛻𝒘 𝑘𝐸 𝑾
= 𝑦 𝑛𝑘 − 𝑡 𝑛𝑘 𝝓 𝑛𝑁𝑛=1• 右辺は M 次ベクトル– 𝑦 𝑛𝑘 − 𝑡 𝑛𝑘 はただのスカラー– 一般には先ほどの方法で次元を読み解けばいい• だから左辺 𝛻𝒘 𝑘𝐸 𝑾 も M 次ベクトル– それが k=1,……,K 個あるだけ• 「M×K次元の行列 𝛻𝐸 𝑾 」を求めると読み解く– 「勾配」そのものは実装には関係ないこれ
19.
「逐語訳」できる形に書き換える• 掛けて行列になるパターンは大きく3通り– 上から要素積、行列積、直積𝑐𝑖𝑗
= 𝑎𝑖𝑗 𝑏𝑖𝑗 ⇔ C = A * B𝑐𝑖𝑗 = 𝑎𝑖𝑘 𝑏 𝑘𝑗𝑘 ⇔ C=numpy.dot(A, B)𝑐𝑖𝑗 = 𝑎𝑖 𝑏𝑗 ⇔ C=numpy.outer(a, b)数式を左の形に書き換えれば、右の numpy コードに「逐語訳」できる※他に「外積」もあるが、使う人やシーンが限られるので略
20.
R 版「逐語訳」• 掛けて行列になるパターンは大きく3通り–
上から要素積、行列積、直積𝑐𝑖𝑗 = 𝑎𝑖𝑗 𝑏𝑖𝑗 ⇔ C <- A * B𝑐𝑖𝑗 = 𝑎𝑖𝑘 𝑏 𝑘𝑗𝑘 ⇔ C <- A %*% B𝑐𝑖𝑗 = 𝑎𝑖 𝑏𝑗 ⇔ C <- outer(a, b)※直積は outer(a, b) の他に a %o% b という書き方もある
21.
式を書き換える (1)𝛻𝒘 𝑘𝐸
𝑾 = 𝑦 𝑛𝑘 − 𝑡 𝑛𝑘 𝝓 𝑛𝑁𝑛=1• 行列の要素の式になおす𝛻𝐸 𝑾 𝑚𝑘= 𝑦 𝑛𝑘 − 𝑡 𝑛𝑘 𝜙 𝑛𝑚𝑁𝑛=1(𝑚 = 1, ⋯ , 𝑀; 𝑘 = 1, ⋯ , 𝐾)– 「求める行列𝛻𝐸 𝑾 」の (m, k) 成分の式にするM次ベクトルの式スカラー
22.
式を書き換える (2)𝛻𝐸 𝑾
𝑚𝑘= 𝑦 𝑛𝑘 − 𝑡 𝑛𝑘 𝜙 𝑛𝑚𝑁𝑛=1• 注:右辺の添え字に未解決のものは残らない– 左辺に現れる : m, k– 右辺で解決 : n (総和で消える)• 3種類の積のどれかに帰着するよう変形– この場合、総和があるので 𝑐𝑖𝑗 = 𝑎𝑖𝑘 𝑏 𝑘𝑗𝑘 に
23.
式を書き換える (3)𝑨 =
𝑎 𝑛𝑘 = 𝑦 𝑛𝑘 − 𝑡 𝑛𝑘 とおくと(𝑁 × 𝐾 行列)𝛻𝐸 𝑾 𝑚𝑘= 𝑎 𝑛𝑘 𝜙 𝑛𝑚𝑁𝑛=1= Φ 𝑇𝑚𝑛 𝐴 𝑛𝑘𝑁𝑛=1• ○mk=Σn○mn○nk の形に調整– 右辺の内側の添え字とΣは同じ n– 添え字の順序を逆にしたければ転置• 𝛻𝐸 𝑾 = 𝚽 𝑇𝑨 であることがわかる
24.
numpyに「逐語訳」𝛻𝒘 𝑘𝐸 𝑾
= 𝑦 𝑛𝑘 − 𝑡 𝑛𝑘 𝝓 𝑛 (k = 1, ⋯ , 𝐾)𝑁𝑛=1𝑨 = 𝒀 − 𝑻, 𝛻𝐸 𝑾 = 𝚽 𝑇𝑨• ここまで簡単になれば、実装は一瞬# PHI = N×M 次元の特徴行列# Y, T = N×K 次元の行列gradient_E = numpy.dot(PHI.T, Y - T)式の書き換え
25.
R に「逐語訳」𝛻𝒘 𝑘𝐸
𝑾 = 𝑦 𝑛𝑘 − 𝑡 𝑛𝑘 𝝓 𝑛 (k = 1, ⋯ , 𝐾)𝑁𝑛=1𝑨 = 𝒀 − 𝑻, 𝛻𝐸 𝑾 = 𝚽 𝑇𝑨• 同様に R での実装例:# PHI = N×M 次元の特徴行列# Y, T = N×K 次元の行列gradient_E <- t(PHI) %*% (Y - T)
26.
まとめ• 数式から条件を読み解こう– この段階で間違っていると、うまく行かない–
さぼらず紙と鉛筆で確認するのが一番賢い• 「逐語訳」できる数式なら実装かんたん– 難しい数式は「逐語訳」できる形に書き換え– さぼらず紙と鉛筆
Download
[8]
ページ先頭
©2009-2025
Movatter.jp