SlideShare a Scribd company logo
1 of 25
最尤推定法
-NNにおける応用例-
2018/12/10
東京工業大学 工学院 経営工学系 3年 松井諒生
1
推定とは
母集団全てを調査して、母集団の特徴を知ることは現実的に難しい
母集団から一部分(標本)だけを取り出しその取り出したものの特徴
から母集団の特徴を予測する
知りたい母集団の特徴の例
・平均 ・割合 ・分散 など
2
推定の簡単な例
ある一部分のデータの割合から全体の割合を推測する
ex)
画鋲を投げて針が下になる確率は?
コインと違って、画鋲の重さや重心、形、空気抵抗などを計算しない
と理論上の確率は割り出せない。
→数回繰り返し、そこから近似値を求める
100回のうち30回針が下になったからおおよその確率は3/10
3
本当にそうなのか?
ここで最尤推定法が用いられる
画鋲の例で考える。
標本の大きさはn、針が下になる確率をθとすると、
x回成功する確率Pは
P 𝑥, 𝜃 =
𝑛
𝑥
𝜃 𝑥
1 − 𝜃 𝑛−𝑥
この式はxを変数と見れば、xに関する確率分布を表す確率関数と
みなせ、 𝑥=0
𝑛 𝑛
𝑥
𝜃 𝑥
(1 − 𝜃) 𝑛−𝑥
= 1となる
しかし、この例のように実際にはθでなくxがわかっていること
も多い。 4
θを変数と見れば、xが定められたときにθがいかに適切か(尤も
らしいか)を示す「尤度」を表す尤度関数だとみなせる。
したがって、P(x,θ)を実験で求められたxの値で固定して、θ
を変数としてみると、この実験での尤度関数がとなる。
尤度関数が最大⇔θが最も適切
となることから、この尤度関数を最大にさせるθが理論上の値に
最も近いとみなせる。
5
理論値(と推定できる値)を求める
log 𝑃 = 𝑥 log(𝜃) − (𝑛 − 𝑥) log(1 − 𝜃) + log(
𝑛
𝑥
)
𝑑
𝑑𝜃
log 𝑃 =
𝑥
𝜃
−
𝑛 − 𝑥
1 − 𝜃
𝑑
𝑑𝜃
log 𝑃 = 0 ⟺ 𝜃 =
𝑥
𝑛
logP
x/n
Max(logP)
100回中、30回針が下になったとき、針が下になる確率は3/10
と事が推定することが最も適当であることが確かめられた
6
二値分類ニューラルネットでは
出力を一つのノードにし、0~1の値を出力させる
その入力が0.5より小さければ0、大きければ1と決定する。
0.5~1 → 1
0~0.5 → 0
7
まずは1入力を2値分類する場合
8
入力A(X,t)は判断させたいベクトルXと教師データ値tをもっている
tは0か1である
出力関数をf(X,W)とすると、
(Wは全重みと全バイアスを成分に持つベクトル)
・t=0のときはf(X,W)<0.5で正解、f(X,W)>0.5で不正解
・t=1のときはf(X,W)<0.5で不正解、f(X,W)>0.5で正解
このように整理できる。
二値分類ニューラルネットでは
(入力ベクトル1個)
9
これをまとめるとp(x)を以下のように置いたとき、
𝑝 𝑿, 𝑾 = 𝑓 𝑿, 𝑾
𝑡
(1 − 𝑓 𝑿, 𝑾 )1−𝑡
p(X,W)<0.5で不正解、p(X,W)>0.5で正解となるといえる
二値分類ニューラルネットでは
(入力ベクトル1個)
10
Xは簡単に知ることができるデータ(針が下になる回数)
Wは知りたい、適切なパラメータ(針が下になる確率)
p(X,W)は正解となる確率(厳密には少し違う)であり、かつWがど
れだけ適切かを表す尤度関数である。
したがってWを変数として、
p(X,W)を最大とするWを求めれば最も
適切なパラメータが算出できる
二値分類ニューラルネットでは
(入力ベクトル1個)
11
𝑝 𝑿, 𝑾 = 𝑓 𝑿, 𝑾
𝑡
(1 − 𝑓 𝑿, 𝑾 )1−𝑡
p(X,W)が最大⇔logp(x)が最大⇔-logp(x)が最小 だから
𝐸 𝑾 = − log 𝑝 𝑿, 𝑾 = − tlog 𝑓 𝑿, 𝑾 + 1 − 𝑡 log(1 − 𝑓 𝑿, 𝑾 )
E(W)を損失関数として、これを最小にしていくことを考える
二値分類ニューラルネットでは
(入力ベクトル1個)
12
𝑑
𝑑𝑊
𝐸 𝑾∗ = 0
⟺ 任意の 𝑘, 𝑖, 𝑗 で
𝜕
𝜕𝑤𝑘𝑖𝑗
𝐸 𝑾∗ = 0
となるときE(W)が最小、つまりXにとって最も適切なWとなる。
二値分類ニューラルネットでは
(入力ベクトル1個)
W* W
13
n個の入力を2値分類する場合
14
入力が A1(X1,t1) A2(X2,t2) ・・・ An(Xn,tn) と、n個ある場合を考
えると、k回目の入力の尤度は下のようにあらわせる。
𝑝𝑘 𝑿𝒌, 𝑾 = 𝑓 𝑿𝒌, 𝑾
𝑡𝑛
(1 − 𝑓 𝑿𝒌, 𝑾 )1−𝑡𝑛
k回目の出力は p(Xk,W)<0.5で不正解、p(Xk,W)>0.5で正解
k回の試行はすべて独立であるから1~n回目の全体の尤度関数(確率関数)
は下のようにあらわせる。
𝑝 𝑿𝟏, 𝑿𝟐, ⋯ 𝑿𝒏, 𝑾 =
𝑘=1
𝑛
𝑝(𝑿𝒌, 𝑾)
二値分類ニューラルネットでは
(入力ベクトルn個)
15
入力ベクトル1個のときと同様に対数とって符号をかえることで、
𝐸 𝑾 = −log(
𝑘=1
𝑛
𝑝(𝑿𝒌, 𝑾)) =
𝑘=1
𝑛
−log(𝑝(𝑿𝒌, 𝑾))
を損失関数として定義できる。
(*ミニバッチではそれぞれの平均をとる操作があり、右辺に1/Nが
かけられていることがあるが、学習係数に含まれるためあまり意味
はない)
二値分類ニューラルネットでは
(入力ベクトルn個)
16
1入力を多値分類する場合
17
出力N個のノードにし、0~1の値を出力させる
その入力が最も大きいクラスの出力を1、そのほかの出力を0と
することで一つのクラスに分類する。
多値分類ニューラルネットでは
(入力ベクトル1個)
g1(X,W) 0~1
gN(X,W) 0~1
g(X,W)
18
入力(X,t)は判断させたいベクトルXと教師ベクトルtをもっている
t=(t1,t2,t3・・・tN)で、例えば3番目のクラスに分けたいときは
t=(0,0,1,0,0・・・0)となる。
出力関数g(X,W)のm番目の成分をgm(X,W)とすると、これはm番目
のクラスに分類される確率とみなせるので、
・tm=0であるmは考えず、
・tm=1であるmで、gm(X,W)が大きいほど正解に近づく
と、整理できる
多値分類ニューラルネットでは
(入力ベクトル1個)
19
これをまとめると、p(x)を以下のように置いたとき、
𝑝 𝑿, 𝑾 =
𝑚=1
𝑁
𝑔𝑚 𝑿, 𝑾
𝑡𝑚
これが大きいほど正解に近いといえる。
(右辺はm番目以外1なので、実質はk=1のfm(X,W)を表す)
多値分類ニューラルネットでは
(入力ベクトル1個)
20
これまでと同様に、このp(X,W)をXを固定してWの尤度関数とみて、
E 𝒘 = −log 𝑝 𝑿, 𝑾 = −
𝑚=1
𝑁
𝑡m(log 𝑔 𝑿, 𝑾 ))
と、損失関数を定義することで、最適なWを求めていく。
多値分類ニューラルネットでは
(入力ベクトル1個)
21
1入力を多値分類する場合
22
入力が A1(X1,t1) A2(X2,t2) ・・・ An(Xn,tn) と、n個ある場
合を考えると、k回目の入力の尤度は
𝑝 𝑿𝒌, 𝑾 =
𝑚=1
𝑁
𝑔𝑚 𝑿𝒌, 𝑾
𝑡𝑚
すべてのkについて、これが大きいほど正解に近づくので、
1~n回目の全体の尤度関数は下のようにあらわせる
多値分類ニューラルネットでは
(入力ベクトルn個)
𝑝 𝑿𝟏, 𝑿𝟐, ⋯ 𝑿𝒏, 𝑾 =
𝑘=1
𝑛
𝑚=1
𝑁
𝑔𝑚(𝑿𝒌, 𝑾)
23
これまでと同様に、対数とって符号を変えることで、
多値分類ニューラルネットでは
(入力ベクトルn個)
𝐸 𝒘 = −log(
𝑘=1
𝑛
𝑚=1
𝑁
𝑔𝑚(𝑿𝒌, 𝑾))
= −
𝑘=1
𝑛
𝑚=1
𝑁
𝑡 𝑘𝑚 log 𝑔 𝑚(𝑿 𝒌, 𝑾)
として、損失関数を決定できる。
また、このE(W)をクロスエントロピーと呼ぶ
24
関数f(x)、g(x)について
𝑓 𝑥 =
1
1+𝑒−𝑦:シグモイド関数
𝑔 𝑥 =
𝑒 𝑦𝑖
𝑘 𝑒 𝑦𝑘:ソフトマックス関数
y=WX+B
ソフトマックス関数の𝑦 𝑘のすべてに定数sを加えた時も約分され
て値は変わらない。よって、制約を付けなければ出力層に入る結
合の重みW、Bが一つに定まらない。
重み減衰 重み上限 ドロップアウト などを取り入れる
25

More Related Content

What's hot

機械学習の理論と実践
機械学習の理論と実践機械学習の理論と実践
機械学習の理論と実践Preferred Networks
 
PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門tmtm otm
 
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定Akira Masuda
 
工学系大学4年生のための論文の読み方
工学系大学4年生のための論文の読み方工学系大学4年生のための論文の読み方
工学系大学4年生のための論文の読み方ychtanaka
 
マルコフ連鎖モンテカルロ法入門-1
マルコフ連鎖モンテカルロ法入門-1マルコフ連鎖モンテカルロ法入門-1
マルコフ連鎖モンテカルロ法入門-1Nagi Teramo
 
強化学習と逆強化学習を組み合わせた模倣学習
強化学習と逆強化学習を組み合わせた模倣学習強化学習と逆強化学習を組み合わせた模倣学習
強化学習と逆強化学習を組み合わせた模倣学習Eiji Uchibe
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門Kawamoto_Kazuhiko
 
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)RyuichiKanoh
 
[DL輪読会]1次近似系MAMLとその理論的背景
[DL輪読会]1次近似系MAMLとその理論的背景[DL輪読会]1次近似系MAMLとその理論的背景
[DL輪読会]1次近似系MAMLとその理論的背景Deep Learning JP
 
機械学習におけるオンライン確率的最適化の理論
機械学習におけるオンライン確率的最適化の理論機械学習におけるオンライン確率的最適化の理論
機械学習におけるオンライン確率的最適化の理論Taiji Suzuki
 
Hyperoptとその周辺について
Hyperoptとその周辺についてHyperoptとその周辺について
Hyperoptとその周辺についてKeisuke Hosaka
 
3分でわかる多項分布とディリクレ分布
3分でわかる多項分布とディリクレ分布3分でわかる多項分布とディリクレ分布
3分でわかる多項分布とディリクレ分布Junya Saito
 
不均衡データのクラス分類
不均衡データのクラス分類不均衡データのクラス分類
不均衡データのクラス分類Shintaro Fukushima
 
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...Deep Learning JP
 
[DL輪読会]GLIDE: Guided Language to Image Diffusion for Generation and Editing
[DL輪読会]GLIDE: Guided Language to Image Diffusion  for Generation and Editing[DL輪読会]GLIDE: Guided Language to Image Diffusion  for Generation and Editing
[DL輪読会]GLIDE: Guided Language to Image Diffusion for Generation and EditingDeep Learning JP
 
プログラミングコンテストでの動的計画法
プログラミングコンテストでの動的計画法プログラミングコンテストでの動的計画法
プログラミングコンテストでの動的計画法Takuya Akiba
 
【DL輪読会】マルチエージェント強化学習における近年の 協調的方策学習アルゴリズムの発展
【DL輪読会】マルチエージェント強化学習における近年の 協調的方策学習アルゴリズムの発展【DL輪読会】マルチエージェント強化学習における近年の 協調的方策学習アルゴリズムの発展
【DL輪読会】マルチエージェント強化学習における近年の 協調的方策学習アルゴリズムの発展Deep Learning JP
 
PRML上巻勉強会 at 東京大学 資料 第1章前半
PRML上巻勉強会 at 東京大学 資料 第1章前半PRML上巻勉強会 at 東京大学 資料 第1章前半
PRML上巻勉強会 at 東京大学 資料 第1章前半Ohsawa Goodfellow
 
pymcとpystanでベイズ推定してみた話
pymcとpystanでベイズ推定してみた話pymcとpystanでベイズ推定してみた話
pymcとpystanでベイズ推定してみた話Classi.corp
 
ベイズ統計入門
ベイズ統計入門ベイズ統計入門
ベイズ統計入門Miyoshi Yuya
 

What's hot (20)

機械学習の理論と実践
機械学習の理論と実践機械学習の理論と実践
機械学習の理論と実践
 
PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門PRML学習者から入る深層生成モデル入門
PRML学習者から入る深層生成モデル入門
 
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
 
工学系大学4年生のための論文の読み方
工学系大学4年生のための論文の読み方工学系大学4年生のための論文の読み方
工学系大学4年生のための論文の読み方
 
マルコフ連鎖モンテカルロ法入門-1
マルコフ連鎖モンテカルロ法入門-1マルコフ連鎖モンテカルロ法入門-1
マルコフ連鎖モンテカルロ法入門-1
 
強化学習と逆強化学習を組み合わせた模倣学習
強化学習と逆強化学習を組み合わせた模倣学習強化学習と逆強化学習を組み合わせた模倣学習
強化学習と逆強化学習を組み合わせた模倣学習
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門
 
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
 
[DL輪読会]1次近似系MAMLとその理論的背景
[DL輪読会]1次近似系MAMLとその理論的背景[DL輪読会]1次近似系MAMLとその理論的背景
[DL輪読会]1次近似系MAMLとその理論的背景
 
機械学習におけるオンライン確率的最適化の理論
機械学習におけるオンライン確率的最適化の理論機械学習におけるオンライン確率的最適化の理論
機械学習におけるオンライン確率的最適化の理論
 
Hyperoptとその周辺について
Hyperoptとその周辺についてHyperoptとその周辺について
Hyperoptとその周辺について
 
3分でわかる多項分布とディリクレ分布
3分でわかる多項分布とディリクレ分布3分でわかる多項分布とディリクレ分布
3分でわかる多項分布とディリクレ分布
 
不均衡データのクラス分類
不均衡データのクラス分類不均衡データのクラス分類
不均衡データのクラス分類
 
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
 
[DL輪読会]GLIDE: Guided Language to Image Diffusion for Generation and Editing
[DL輪読会]GLIDE: Guided Language to Image Diffusion  for Generation and Editing[DL輪読会]GLIDE: Guided Language to Image Diffusion  for Generation and Editing
[DL輪読会]GLIDE: Guided Language to Image Diffusion for Generation and Editing
 
プログラミングコンテストでの動的計画法
プログラミングコンテストでの動的計画法プログラミングコンテストでの動的計画法
プログラミングコンテストでの動的計画法
 
【DL輪読会】マルチエージェント強化学習における近年の 協調的方策学習アルゴリズムの発展
【DL輪読会】マルチエージェント強化学習における近年の 協調的方策学習アルゴリズムの発展【DL輪読会】マルチエージェント強化学習における近年の 協調的方策学習アルゴリズムの発展
【DL輪読会】マルチエージェント強化学習における近年の 協調的方策学習アルゴリズムの発展
 
PRML上巻勉強会 at 東京大学 資料 第1章前半
PRML上巻勉強会 at 東京大学 資料 第1章前半PRML上巻勉強会 at 東京大学 資料 第1章前半
PRML上巻勉強会 at 東京大学 資料 第1章前半
 
pymcとpystanでベイズ推定してみた話
pymcとpystanでベイズ推定してみた話pymcとpystanでベイズ推定してみた話
pymcとpystanでベイズ推定してみた話
 
ベイズ統計入門
ベイズ統計入門ベイズ統計入門
ベイズ統計入門
 

More from MatsuiRyo

ベイズ最適化
ベイズ最適化ベイズ最適化
ベイズ最適化MatsuiRyo
 
多目的遺伝的アルゴリズム
多目的遺伝的アルゴリズム多目的遺伝的アルゴリズム
多目的遺伝的アルゴリズムMatsuiRyo
 
一般化線形モデル
一般化線形モデル一般化線形モデル
一般化線形モデルMatsuiRyo
 
一般線形モデル
一般線形モデル一般線形モデル
一般線形モデルMatsuiRyo
 
統計と機械学習
統計と機械学習統計と機械学習
統計と機械学習MatsuiRyo
 
Warshall froyd
Warshall froydWarshall froyd
Warshall froydMatsuiRyo
 
遺伝的アルゴリズム・遺伝的プログラミング
遺伝的アルゴリズム・遺伝的プログラミング遺伝的アルゴリズム・遺伝的プログラミング
遺伝的アルゴリズム・遺伝的プログラミングMatsuiRyo
 

More from MatsuiRyo (8)

ベイズ最適化
ベイズ最適化ベイズ最適化
ベイズ最適化
 
多目的遺伝的アルゴリズム
多目的遺伝的アルゴリズム多目的遺伝的アルゴリズム
多目的遺伝的アルゴリズム
 
MCMC法
MCMC法MCMC法
MCMC法
 
一般化線形モデル
一般化線形モデル一般化線形モデル
一般化線形モデル
 
一般線形モデル
一般線形モデル一般線形モデル
一般線形モデル
 
統計と機械学習
統計と機械学習統計と機械学習
統計と機械学習
 
Warshall froyd
Warshall froydWarshall froyd
Warshall froyd
 
遺伝的アルゴリズム・遺伝的プログラミング
遺伝的アルゴリズム・遺伝的プログラミング遺伝的アルゴリズム・遺伝的プログラミング
遺伝的アルゴリズム・遺伝的プログラミング
 

最尤推定法(NNでの応用)