Enviar pesquisa
Carregar
レプリカ交換モンテカルロ法で乱数の生成
•
18 gostaram
•
13,154 visualizações
Nagi Teramo
Seguir
第五回Tokyo.Scipyでのトーク資料です。
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 41
Baixar agora
Baixar para ler offline
Recomendados
ベイズ統計学の概論的紹介
ベイズ統計学の概論的紹介
Naoki Hayashi
PRML輪読#11
PRML輪読#11
matsuolab
混合モデルとEMアルゴリズム(PRML第9章)
混合モデルとEMアルゴリズム(PRML第9章)
Takao Yamanaka
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
Akira Masuda
計算論的学習理論入門 -PAC学習とかVC次元とか-
計算論的学習理論入門 -PAC学習とかVC次元とか-
sleepy_yoshi
深層学習 勉強会第5回 ボルツマンマシン
深層学習 勉強会第5回 ボルツマンマシン
Yuta Sugii
coordinate descent 法について
coordinate descent 法について
京都大学大学院情報学研究科数理工学専攻
階層ベイズとWAIC
階層ベイズとWAIC
Hiroshi Shimizu
Recomendados
ベイズ統計学の概論的紹介
ベイズ統計学の概論的紹介
Naoki Hayashi
PRML輪読#11
PRML輪読#11
matsuolab
混合モデルとEMアルゴリズム(PRML第9章)
混合モデルとEMアルゴリズム(PRML第9章)
Takao Yamanaka
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
Akira Masuda
計算論的学習理論入門 -PAC学習とかVC次元とか-
計算論的学習理論入門 -PAC学習とかVC次元とか-
sleepy_yoshi
深層学習 勉強会第5回 ボルツマンマシン
深層学習 勉強会第5回 ボルツマンマシン
Yuta Sugii
coordinate descent 法について
coordinate descent 法について
京都大学大学院情報学研究科数理工学専攻
階層ベイズとWAIC
階層ベイズとWAIC
Hiroshi Shimizu
変分ベイズ法の説明
変分ベイズ法の説明
Haruka Ozaki
MCMCサンプルの使い方 ~見る・決める・探す・発生させる~
MCMCサンプルの使い方 ~見る・決める・探す・発生させる~
. .
MCMC法
MCMC法
MatsuiRyo
PRML輪読#3
PRML輪読#3
matsuolab
異常検知と変化検知 9章 部分空間法による変化点検知
異常検知と変化検知 9章 部分空間法による変化点検知
hagino 3000
機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化
gree_tech
階層ベイズと自由エネルギー
階層ベイズと自由エネルギー
Hiroshi Shimizu
MCMCと正規分布の推測
MCMCと正規分布の推測
Gen Fujita
時系列分析による異常検知入門
時系列分析による異常検知入門
Yohei Sato
因果探索: 基本から最近の発展までを概説
因果探索: 基本から最近の発展までを概説
Shiga University, RIKEN
Chapter2.3.6
Chapter2.3.6
Takuya Minagawa
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
弘毅 露崎
基礎からのベイズ統計学第5章
基礎からのベイズ統計学第5章
hiro5585
自動微分変分ベイズ法の紹介
自動微分変分ベイズ法の紹介
Taku Yoshioka
今さら聞けないカーネル法とサポートベクターマシン
今さら聞けないカーネル法とサポートベクターマシン
Shinya Shimizu
変分推論法(変分ベイズ法)(PRML第10章)
変分推論法(変分ベイズ法)(PRML第10章)
Takao Yamanaka
クラシックな機械学習の入門 10. マルコフ連鎖モンテカルロ 法
クラシックな機械学習の入門 10. マルコフ連鎖モンテカルロ 法
Hiroshi Nakagawa
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
narumikanno0918
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
Yoshitake Takebayashi
グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知
Yuya Takashina
マルコフ連鎖モンテカルロ法入門-2
マルコフ連鎖モンテカルロ法入門-2
Nagi Teramo
ベイズ推定でパラメータリスクを捉える&優れたサンプラーとしてのMCMC
ベイズ推定でパラメータリスクを捉える&優れたサンプラーとしてのMCMC
基晴 出井
Mais conteúdo relacionado
Mais procurados
変分ベイズ法の説明
変分ベイズ法の説明
Haruka Ozaki
MCMCサンプルの使い方 ~見る・決める・探す・発生させる~
MCMCサンプルの使い方 ~見る・決める・探す・発生させる~
. .
MCMC法
MCMC法
MatsuiRyo
PRML輪読#3
PRML輪読#3
matsuolab
異常検知と変化検知 9章 部分空間法による変化点検知
異常検知と変化検知 9章 部分空間法による変化点検知
hagino 3000
機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化
gree_tech
階層ベイズと自由エネルギー
階層ベイズと自由エネルギー
Hiroshi Shimizu
MCMCと正規分布の推測
MCMCと正規分布の推測
Gen Fujita
時系列分析による異常検知入門
時系列分析による異常検知入門
Yohei Sato
因果探索: 基本から最近の発展までを概説
因果探索: 基本から最近の発展までを概説
Shiga University, RIKEN
Chapter2.3.6
Chapter2.3.6
Takuya Minagawa
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
弘毅 露崎
基礎からのベイズ統計学第5章
基礎からのベイズ統計学第5章
hiro5585
自動微分変分ベイズ法の紹介
自動微分変分ベイズ法の紹介
Taku Yoshioka
今さら聞けないカーネル法とサポートベクターマシン
今さら聞けないカーネル法とサポートベクターマシン
Shinya Shimizu
変分推論法(変分ベイズ法)(PRML第10章)
変分推論法(変分ベイズ法)(PRML第10章)
Takao Yamanaka
クラシックな機械学習の入門 10. マルコフ連鎖モンテカルロ 法
クラシックな機械学習の入門 10. マルコフ連鎖モンテカルロ 法
Hiroshi Nakagawa
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
narumikanno0918
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
Yoshitake Takebayashi
グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知
Yuya Takashina
Mais procurados
(20)
変分ベイズ法の説明
変分ベイズ法の説明
MCMCサンプルの使い方 ~見る・決める・探す・発生させる~
MCMCサンプルの使い方 ~見る・決める・探す・発生させる~
MCMC法
MCMC法
PRML輪読#3
PRML輪読#3
異常検知と変化検知 9章 部分空間法による変化点検知
異常検知と変化検知 9章 部分空間法による変化点検知
機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化
階層ベイズと自由エネルギー
階層ベイズと自由エネルギー
MCMCと正規分布の推測
MCMCと正規分布の推測
時系列分析による異常検知入門
時系列分析による異常検知入門
因果探索: 基本から最近の発展までを概説
因果探索: 基本から最近の発展までを概説
Chapter2.3.6
Chapter2.3.6
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
基礎からのベイズ統計学第5章
基礎からのベイズ統計学第5章
自動微分変分ベイズ法の紹介
自動微分変分ベイズ法の紹介
今さら聞けないカーネル法とサポートベクターマシン
今さら聞けないカーネル法とサポートベクターマシン
変分推論法(変分ベイズ法)(PRML第10章)
変分推論法(変分ベイズ法)(PRML第10章)
クラシックな機械学習の入門 10. マルコフ連鎖モンテカルロ 法
クラシックな機械学習の入門 10. マルコフ連鎖モンテカルロ 法
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知
Semelhante a レプリカ交換モンテカルロ法で乱数の生成
マルコフ連鎖モンテカルロ法入門-2
マルコフ連鎖モンテカルロ法入門-2
Nagi Teramo
ベイズ推定でパラメータリスクを捉える&優れたサンプラーとしてのMCMC
ベイズ推定でパラメータリスクを捉える&優れたサンプラーとしてのMCMC
基晴 出井
逐次モンテカルロ法の基礎
逐次モンテカルロ法の基礎
ShoutoYonekura
Quantum Computer
Quantum Computer
Kuniaki Igarashi
RBM、Deep Learningと学習(全脳アーキテクチャ若手の会 第3回DL勉強会発表資料)
RBM、Deep Learningと学習(全脳アーキテクチャ若手の会 第3回DL勉強会発表資料)
Takuma Yagi
PRML2.3.8~2.5 Slides in charge
PRML2.3.8~2.5 Slides in charge
Junpei Matsuda
MLaPP 24章 「マルコフ連鎖モンテカルロ法 (MCMC) による推論」
MLaPP 24章 「マルコフ連鎖モンテカルロ法 (MCMC) による推論」
moterech
Prml 1.3~1.6 ver3
Prml 1.3~1.6 ver3
Toshihiko Iio
Stanの紹介と応用事例(age heapingの統計モデル)
Stanの紹介と応用事例(age heapingの統計モデル)
. .
モンテカルロ法と情報量
モンテカルロ法と情報量
Shohei Miyashita
Icp3.2 takmin
Icp3.2 takmin
Takuya Minagawa
モンテカルロサンプリング
モンテカルロサンプリング
Kosei ABE
確率的自己位置推定
確率的自己位置推定
Horiguchi Shuhei
PRML読み会第一章
PRML読み会第一章
Takushi Miki
Quantum Support Vector Machine
Quantum Support Vector Machine
Yuma Nakamura
LTspiceを活用した正規分布を考慮したモンテカルロ解析の基礎(動画情報あり)
LTspiceを活用した正規分布を考慮したモンテカルロ解析の基礎(動画情報あり)
Tsuyoshi Horigome
LTspiceを活用した正規分布を考慮したモンテカルロ解析の基礎
LTspiceを活用した正規分布を考慮したモンテカルロ解析の基礎
Tsuyoshi Horigome
量子コンピュータの時代へ:現在の量子コンピュータで何ができるか
量子コンピュータの時代へ:現在の量子コンピュータで何ができるか
Ahmad Zufri
LTspiceを活用した正規分布を考慮したモンテカルロ解析の基礎
LTspiceを活用した正規分布を考慮したモンテカルロ解析の基礎
Tsuyoshi Horigome
お披露目会05/2010
お披露目会05/2010
JAVA DM
Semelhante a レプリカ交換モンテカルロ法で乱数の生成
(20)
マルコフ連鎖モンテカルロ法入門-2
マルコフ連鎖モンテカルロ法入門-2
ベイズ推定でパラメータリスクを捉える&優れたサンプラーとしてのMCMC
ベイズ推定でパラメータリスクを捉える&優れたサンプラーとしてのMCMC
逐次モンテカルロ法の基礎
逐次モンテカルロ法の基礎
Quantum Computer
Quantum Computer
RBM、Deep Learningと学習(全脳アーキテクチャ若手の会 第3回DL勉強会発表資料)
RBM、Deep Learningと学習(全脳アーキテクチャ若手の会 第3回DL勉強会発表資料)
PRML2.3.8~2.5 Slides in charge
PRML2.3.8~2.5 Slides in charge
MLaPP 24章 「マルコフ連鎖モンテカルロ法 (MCMC) による推論」
MLaPP 24章 「マルコフ連鎖モンテカルロ法 (MCMC) による推論」
Prml 1.3~1.6 ver3
Prml 1.3~1.6 ver3
Stanの紹介と応用事例(age heapingの統計モデル)
Stanの紹介と応用事例(age heapingの統計モデル)
モンテカルロ法と情報量
モンテカルロ法と情報量
Icp3.2 takmin
Icp3.2 takmin
モンテカルロサンプリング
モンテカルロサンプリング
確率的自己位置推定
確率的自己位置推定
PRML読み会第一章
PRML読み会第一章
Quantum Support Vector Machine
Quantum Support Vector Machine
LTspiceを活用した正規分布を考慮したモンテカルロ解析の基礎(動画情報あり)
LTspiceを活用した正規分布を考慮したモンテカルロ解析の基礎(動画情報あり)
LTspiceを活用した正規分布を考慮したモンテカルロ解析の基礎
LTspiceを活用した正規分布を考慮したモンテカルロ解析の基礎
量子コンピュータの時代へ:現在の量子コンピュータで何ができるか
量子コンピュータの時代へ:現在の量子コンピュータで何ができるか
LTspiceを活用した正規分布を考慮したモンテカルロ解析の基礎
LTspiceを活用した正規分布を考慮したモンテカルロ解析の基礎
お披露目会05/2010
お披露目会05/2010
Mais de Nagi Teramo
第86回R勉強会@東京 LT資料
第86回R勉強会@東京 LT資料
Nagi Teramo
Rでを作る
Rでを作る
Nagi Teramo
Reproducebility 100倍 Dockerマン
Reproducebility 100倍 Dockerマン
Nagi Teramo
healthplanetパッケージで体組成データを手に入れて健康な体も手に入れる
healthplanetパッケージで体組成データを手に入れて健康な体も手に入れる
Nagi Teramo
闇と向き合う
闇と向き合う
Nagi Teramo
機械の体を手に入れるのよ、鉄郎!!!
機械の体を手に入れるのよ、鉄郎!!!
Nagi Teramo
続わかりやすいパターン認識11章(11.1 - 11.4)
続わかりやすいパターン認識11章(11.1 - 11.4)
Nagi Teramo
5分でわかるかもしれないglmnet
5分でわかるかもしれないglmnet
Nagi Teramo
Ultra Lightning Talk × 3
Ultra Lightning Talk × 3
Nagi Teramo
F#談話室(17)
F#談話室(17)
Nagi Teramo
RFinanceJはじめました
RFinanceJはじめました
Nagi Teramo
東京R非公式おじさんが教える本当に気持ちいいパッケージ作成法
東京R非公式おじさんが教える本当に気持ちいいパッケージ作成法
Nagi Teramo
お前の逐モン、GETだぜ!
お前の逐モン、GETだぜ!
Nagi Teramo
Trading volume mapping R in recent environment
Trading volume mapping R in recent environment
Nagi Teramo
~knitr+pandocではじめる~『R MarkdownでReproducible Research』
~knitr+pandocではじめる~『R MarkdownでReproducible Research』
Nagi Teramo
とある金融屋の統計技師が時系列解析してみた
とある金融屋の統計技師が時系列解析してみた
Nagi Teramo
可視化周辺の進化がヤヴァイ~rChartsを中心として~
可視化周辺の進化がヤヴァイ~rChartsを中心として~
Nagi Teramo
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
Nagi Teramo
Tokyo.R 白熱教室「これからのRcppの話をしよう」
Tokyo.R 白熱教室「これからのRcppの話をしよう」
Nagi Teramo
Rで学ぶ逆変換(逆関数)法
Rで学ぶ逆変換(逆関数)法
Nagi Teramo
Mais de Nagi Teramo
(20)
第86回R勉強会@東京 LT資料
第86回R勉強会@東京 LT資料
Rでを作る
Rでを作る
Reproducebility 100倍 Dockerマン
Reproducebility 100倍 Dockerマン
healthplanetパッケージで体組成データを手に入れて健康な体も手に入れる
healthplanetパッケージで体組成データを手に入れて健康な体も手に入れる
闇と向き合う
闇と向き合う
機械の体を手に入れるのよ、鉄郎!!!
機械の体を手に入れるのよ、鉄郎!!!
続わかりやすいパターン認識11章(11.1 - 11.4)
続わかりやすいパターン認識11章(11.1 - 11.4)
5分でわかるかもしれないglmnet
5分でわかるかもしれないglmnet
Ultra Lightning Talk × 3
Ultra Lightning Talk × 3
F#談話室(17)
F#談話室(17)
RFinanceJはじめました
RFinanceJはじめました
東京R非公式おじさんが教える本当に気持ちいいパッケージ作成法
東京R非公式おじさんが教える本当に気持ちいいパッケージ作成法
お前の逐モン、GETだぜ!
お前の逐モン、GETだぜ!
Trading volume mapping R in recent environment
Trading volume mapping R in recent environment
~knitr+pandocではじめる~『R MarkdownでReproducible Research』
~knitr+pandocではじめる~『R MarkdownでReproducible Research』
とある金融屋の統計技師が時系列解析してみた
とある金融屋の統計技師が時系列解析してみた
可視化周辺の進化がヤヴァイ~rChartsを中心として~
可視化周辺の進化がヤヴァイ~rChartsを中心として~
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
Tokyo.R 白熱教室「これからのRcppの話をしよう」
Tokyo.R 白熱教室「これからのRcppの話をしよう」
Rで学ぶ逆変換(逆関数)法
Rで学ぶ逆変換(逆関数)法
Último
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
Último
(8)
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
レプリカ交換モンテカルロ法で乱数の生成
1.
第5回Tokyo.
ciPy レプリカ交換モンテカルロ法 で乱数の生成 @teramonagi
2.
目次 1.
自己紹介 2. モチベーション 3. マルコフ連鎖モンテカルロ法 4. レプリカ交換モンテカルロ法 5. まとめ 2
3.
1. 自己紹介
3
4.
自己紹介 • @teramonagi • Numpy/Scipy歴:2年程度 •
Tokyo. でお世話になっております • 仕事:半導体→金融 • 言語:C++/R/python/VBA/F# • 興味:数理/Simulation/データ分析 4
5.
2. モチベーション
5
6.
(主に私の)モチベーション • 乱数をよく生成するので、統一的な
共通の枠組で楽に乱数生成したい –「○○分布の時はA法、××分布 の時はB法を使う」は面倒 • 出来れば確率密度関数を指定する だけでOKな仕組みが欲しい 6
7.
そんな貴方の我儘を 適える素敵な魔法
7
8.
3. マルコフ連鎖モンテカルロ法
8
9.
マルコフ連鎖モンテカルロ法 • 略して
–MCMC(Markov Chain MonteCarlo) • 指定した確率(密度)関数に従う乱 数をマルコフ連鎖を活用することで 生成するモンテカルロ法のこと • かなり汎用的な枠組み 9
10.
MCMCの詳しい話は… • 【パターン認識と
機械学習 下】の 11章、サンプリ ング法を参照 10
11.
細かい突っ込んだ話は… • 【計算統計 2
マ ルコフ連鎖モン テカルロ法とそ の周辺】を参照 11
12.
MCMCの直感的な説明 • 標本空間上の点を逐次的に移動 • 今いる所の近所に移動、確率密度
の高い付近でちょっと長居、そして またウロウロする手法 小 確率 密度 大 標本空間上の点 12
13.
MCMCの直感的な説明 図:MCMCでサンプリングされる点の軌跡イメージ
(2次元正規分布) 13
14.
MCMC(メトロポリス法) 1.
#適当なサイズだけ回す 2. SIZE = 10000 3. #初期状態を生成 4. x = [initial()] * SIZE 5. for i in range(1,SIZE): 6. #①:現在の状態から次の状態(候補)を選定 7. x_proposed = propose_next(x[i]) 8. #②:確率密度の比を計算,target=密度関数 9. ratio = target(x_proposed) / target(x[i]) 10. #③:一様乱数と比較し、遷移 or 元の状態のままを決定 11. if(np.random.uniform(size=1) < ratio): 12. x[i] = x_proposed 13. else: 14. x[i] = x[i-1] Code:メトロポリス法実装例 in python 14
15.
MCMCで正規分布の生成 • 平均・標準偏差がそれぞれ (
, ) : となる正規分布 N x | を生成 (次元は2次元に設定) • 平均(3,3),標準偏差2行2列の単位 行列として設定 • メトロポリス法を10,000回試行 15
16.
MCMCで正規分布の生成 図:2次元正規分布 by
MCMC 16
17.
MCMCで正規分布の生成 図:2次元正規分布の周辺分布(青)by MCMC
と、その確率密度(赤線) 17
18.
実際のコード(一部) 1.
#正規分布の平均値 2. MU = 3.0 3. #シミュレーション・サイズ 4. SIZE_SIMULATION = 10000 5. X0 = np.array([0,0]) 6. #次候補の選定関数 7. propose_next = lambda x:x+0.5*np.random.normal(size=len(x)) 8. #target関数&MCMCオブジェクト生成 9. target = generate_target(MU) 10. mcmc = pyremc.MCMC(X0, target, propose_next, 10) 11. #MCMC実行 12. x = X0 13. for i in range(SIZE_SIMULATION): 14. x = np.vstack((x, mcmc.next())) 15. plot_result(x, MU) Code:シミュレーションコード一部抜粋 in python 18
19.
MCMCで正規分布生成 • 結果(概要)
–X方向:平均:3.05,標準偏差:1.03 –Y方向:平均:3.00,標準偏差:1.03 • うまくいっているように思える • これはいい方法ダゾ!!! 19
20.
混合正規分布 • 正規分布の重ね合わせで表現され
る分布 N • 密度関数: px wi N x | i i 1 • パラメータ N : 正規分布の混合数 wi : 混合ウェイト([0,1]) 20
21.
混合正規分布の例(1次元)
図:1次元混合正規分布の例 (平均±3,ウェイト3:7,標準偏差1(共通),混合数2) 21
22.
MCMCで混合正規分布生成 • 2次元の混合正規分布を生成
–混合数:2 –パラメータ 1 0 1 , 1 , w1 2,2, ,0.3 0 1 1 0 2 , 2 , w2 2,2, ,0.7 0 1 • メトロポリス法を10,000回試行 22
23.
MCMCで混合正規分布生成 図:2次元混合正規分布 by
MCMC 23
24.
MCMCで混合正規分布生成 • 2次元の混合正規分布を生成
–混合数:2 –パラメータ 1 0 1 , 1 , w1 3,3, ,0.3 0 1 1 0 2 , 2 , w2 3,3, ,0.7 0 1 • メトロポリス法を10,000回試行 24
25.
MCMCで混合正規分布生成 図:2次元混合正規分布 by
MCMC 25
26.
MCMCで混合正規分布生成 図:2次元混合正規分布 by
MCMC 26
27.
うまくいかない理由 • MCMC(メトロポリス法)は確率が高い
場所の側もまた高い確率を持つだろう という思想が根底にある。 • MCMC(メトロポリス法)≒局所的な探索。 確率が連続でほぼに0なるような深い 谷を越えることは難しい • どうにかうまくやれる方法はないか? 27
28.
4. レプリカ交換モンテカルロ法
28
29.
レプリカ交換モンテカルロ法 • 異なるパラメータを持つ確率分布(レプリカ)
を考えてそれらを交換するモンテカルロ法 –Replica Exchange MonteCarlo(REMC) • 別名:パラレル・テンパリング法 • 元々はスピングラスのシミュレーション手法 – Hukushima-Nemoto, (1996), Multiple coupled Markov chain MC , Parallel tempering – Swendsen RH and Wang JS (1986) Replica Monte Carlo simulation of spin glasses Physical Review Letters 57 29
30.
REMCのアルゴリズム 1. 異なるパラメーターを持つ系を同
時・並列にMCMC 2. 各MCMC間の位置をメトロポリス 法等で入れ替える 3. 1と2を繰り返す ※今扱っている問題だと、パラメータは平均ベクト ルに該当 30
31.
1:異なるパラメーター系のMCMC
3,3 メトロポリス法 でイケる 2,2 1,1 メトロポリス法 でイケない 図:平均ベクトルのみが異なる3つのレプリカ系 31
32.
1:異なるパラメーター系のMCMC
3,3 独立に MCMCを実行 2,2 レプリカ① 1,1 レプリカ② レプリカ③ 32
33.
2:位置の交換
2つのレプリカを選択 レプリカ① レプリカ② 33
34.
2:位置の交換
位置を交換! レプリカ① レプリカ② 34
35.
REMCのコード 1.
self._counter+=1 2. #①:全てのレプリカをMCMCで回す 3. for index_replica in range(self._replica_size): 4. self._mcmcs[index_replica].next() 5. #②:適当な交換頻度で位置の交換 6. if(self._counter % self._exchange_frequency == 0): 7. index_exchange = int(np.random.uniform(0, self._replica_size-1)) 8. x1 = self._mcmcs[index_exchange ].x 9. x2 = self._mcmcs[index_exchange+1].x 10. target1 = self._mcmcs[index_exchange ]._target 11. target2 = self._mcmcs[index_exchange+1]._target 12. #③:位置の交換はメトロポリス法に従う形で実行 13. if(np.random.uniform(size=1) < (target1(x2)*target2(x1))/(target1(x1)*target2(x2))): 14. self._mcmcs[index_exchange].x, self._mcmcs[index_exchange+1].x = np.copy(x2),np.copy(x1) Code:REMC実装例(一部抜粋) in python 35
36.
REMCで混合正規分布生成
3,3 図:2次元混合正規分布 by REMC 36
37.
REMC vs MCMC
3,3 3,3 図:REMC vc MCMC REMCの場合、確率が非常に小さくなる領域を乗 り越えて移動できている様子がわかる 37
38.
うまくいったね!
38
39.
5. まとめ
39
40.
まとめ • 汎用的な乱数生成法としてMCMCを紹
介 • MCMCではうまくいかないようなケース に対してREMCを適用 • 結果、REMCだと比較的うまくいくようだ • 分布依存部分をもっとうまく切り分けた い。。。 40
41.
Source code is
available here… github.com/teramonagi/Pyremc 41
Baixar agora