Soumettre la recherche
Mettre en ligne
pymcとpystanでベイズ推定してみた話
•
0 j'aime
•
1,951 vues
Classi.corp
Suivre
mcmcをPythonで行うためのパッケージ比較についての話
Lire moins
Lire la suite
Données & analyses
Signaler
Partager
Signaler
Partager
1 sur 21
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
階層モデルの分散パラメータの事前分布について
階層モデルの分散パラメータの事前分布について
hoxo_m
一般化線形モデル (GLM) & 一般化加法モデル(GAM)
一般化線形モデル (GLM) & 一般化加法モデル(GAM)
Deep Learning Lab(ディープラーニング・ラボ)
ベイズファクターとモデル選択
ベイズファクターとモデル選択
kazutantan
統計的因果推論への招待 -因果構造探索を中心に-
統計的因果推論への招待 -因果構造探索を中心に-
Shiga University, RIKEN
ベイズ統計学の概論的紹介
ベイズ統計学の概論的紹介
Naoki Hayashi
質的変数の相関・因子分析
質的変数の相関・因子分析
Mitsuo Shimohata
Stanコードの書き方 中級編
Stanコードの書き方 中級編
Hiroshi Shimizu
階層ベイズと自由エネルギー
階層ベイズと自由エネルギー
Hiroshi Shimizu
Recommandé
階層モデルの分散パラメータの事前分布について
階層モデルの分散パラメータの事前分布について
hoxo_m
一般化線形モデル (GLM) & 一般化加法モデル(GAM)
一般化線形モデル (GLM) & 一般化加法モデル(GAM)
Deep Learning Lab(ディープラーニング・ラボ)
ベイズファクターとモデル選択
ベイズファクターとモデル選択
kazutantan
統計的因果推論への招待 -因果構造探索を中心に-
統計的因果推論への招待 -因果構造探索を中心に-
Shiga University, RIKEN
ベイズ統計学の概論的紹介
ベイズ統計学の概論的紹介
Naoki Hayashi
質的変数の相関・因子分析
質的変数の相関・因子分析
Mitsuo Shimohata
Stanコードの書き方 中級編
Stanコードの書き方 中級編
Hiroshi Shimizu
階層ベイズと自由エネルギー
階層ベイズと自由エネルギー
Hiroshi Shimizu
2 6.ゼロ切断・過剰モデル
2 6.ゼロ切断・過剰モデル
logics-of-blue
Stan超初心者入門
Stan超初心者入門
Hiroshi Shimizu
MICの解説
MICの解説
logics-of-blue
第4回DARM勉強会 (構造方程式モデリング)
第4回DARM勉強会 (構造方程式モデリング)
Yoshitake Takebayashi
幾何を使った統計のはなし
幾何を使った統計のはなし
Toru Imai
因果探索: 基本から最近の発展までを概説
因果探索: 基本から最近の発展までを概説
Shiga University, RIKEN
自動微分変分ベイズ法の紹介
自動微分変分ベイズ法の紹介
Taku Yoshioka
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
Akira Masuda
【解説】 一般逆行列
【解説】 一般逆行列
Kenjiro Sugimoto
『バックドア基準の入門』@統数研研究集会
『バックドア基準の入門』@統数研研究集会
takehikoihayashi
負の二項分布について
負の二項分布について
Hiroshi Shimizu
Rで学ぶ回帰分析と単位根検定
Rで学ぶ回帰分析と単位根検定
Nagi Teramo
変分推論法(変分ベイズ法)(PRML第10章)
変分推論法(変分ベイズ法)(PRML第10章)
Takao Yamanaka
2 4.devianceと尤度比検定
2 4.devianceと尤度比検定
logics-of-blue
不均衡データのクラス分類
不均衡データのクラス分類
Shintaro Fukushima
最適化超入門
最適化超入門
Takami Sato
階層ベイズとWAIC
階層ベイズとWAIC
Hiroshi Shimizu
最適輸送入門
最適輸送入門
joisino
因果推論の奥へ: "What works" meets "why it works"
因果推論の奥へ: "What works" meets "why it works"
takehikoihayashi
Bayesian Neural Networks : Survey
Bayesian Neural Networks : Survey
tmtm otm
if-up 2019 | A2. クラウドにつながり始めたハードウェア
if-up 2019 | A2. クラウドにつながり始めたハードウェア
SORACOM,INC
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
Takashi Suzuki
Contenu connexe
Tendances
2 6.ゼロ切断・過剰モデル
2 6.ゼロ切断・過剰モデル
logics-of-blue
Stan超初心者入門
Stan超初心者入門
Hiroshi Shimizu
MICの解説
MICの解説
logics-of-blue
第4回DARM勉強会 (構造方程式モデリング)
第4回DARM勉強会 (構造方程式モデリング)
Yoshitake Takebayashi
幾何を使った統計のはなし
幾何を使った統計のはなし
Toru Imai
因果探索: 基本から最近の発展までを概説
因果探索: 基本から最近の発展までを概説
Shiga University, RIKEN
自動微分変分ベイズ法の紹介
自動微分変分ベイズ法の紹介
Taku Yoshioka
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
Akira Masuda
【解説】 一般逆行列
【解説】 一般逆行列
Kenjiro Sugimoto
『バックドア基準の入門』@統数研研究集会
『バックドア基準の入門』@統数研研究集会
takehikoihayashi
負の二項分布について
負の二項分布について
Hiroshi Shimizu
Rで学ぶ回帰分析と単位根検定
Rで学ぶ回帰分析と単位根検定
Nagi Teramo
変分推論法(変分ベイズ法)(PRML第10章)
変分推論法(変分ベイズ法)(PRML第10章)
Takao Yamanaka
2 4.devianceと尤度比検定
2 4.devianceと尤度比検定
logics-of-blue
不均衡データのクラス分類
不均衡データのクラス分類
Shintaro Fukushima
最適化超入門
最適化超入門
Takami Sato
階層ベイズとWAIC
階層ベイズとWAIC
Hiroshi Shimizu
最適輸送入門
最適輸送入門
joisino
因果推論の奥へ: "What works" meets "why it works"
因果推論の奥へ: "What works" meets "why it works"
takehikoihayashi
Bayesian Neural Networks : Survey
Bayesian Neural Networks : Survey
tmtm otm
Tendances
(20)
2 6.ゼロ切断・過剰モデル
2 6.ゼロ切断・過剰モデル
Stan超初心者入門
Stan超初心者入門
MICの解説
MICの解説
第4回DARM勉強会 (構造方程式モデリング)
第4回DARM勉強会 (構造方程式モデリング)
幾何を使った統計のはなし
幾何を使った統計のはなし
因果探索: 基本から最近の発展までを概説
因果探索: 基本から最近の発展までを概説
自動微分変分ベイズ法の紹介
自動微分変分ベイズ法の紹介
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
【解説】 一般逆行列
【解説】 一般逆行列
『バックドア基準の入門』@統数研研究集会
『バックドア基準の入門』@統数研研究集会
負の二項分布について
負の二項分布について
Rで学ぶ回帰分析と単位根検定
Rで学ぶ回帰分析と単位根検定
変分推論法(変分ベイズ法)(PRML第10章)
変分推論法(変分ベイズ法)(PRML第10章)
2 4.devianceと尤度比検定
2 4.devianceと尤度比検定
不均衡データのクラス分類
不均衡データのクラス分類
最適化超入門
最適化超入門
階層ベイズとWAIC
階層ベイズとWAIC
最適輸送入門
最適輸送入門
因果推論の奥へ: "What works" meets "why it works"
因果推論の奥へ: "What works" meets "why it works"
Bayesian Neural Networks : Survey
Bayesian Neural Networks : Survey
Similaire à pymcとpystanでベイズ推定してみた話
if-up 2019 | A2. クラウドにつながり始めたハードウェア
if-up 2019 | A2. クラウドにつながり始めたハードウェア
SORACOM,INC
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
Takashi Suzuki
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Recruit Technologies
JupyterLabを中心とした快適な分析生活
JupyterLabを中心とした快適な分析生活
Classi.corp
Icml2018読み会_overview&GANs
Icml2018読み会_overview&GANs
Kentaro Tachibana
ディープラーニングによるユーザーの行動予測
ディープラーニングによるユーザーの行動予測
澪標アナリティクス
エスキュービズムの考えるDXの取り組み
エスキュービズムの考えるDXの取り組み
s-cubism sales_marketing
【Azureデータ分析シリーズ】非専門家向け/利用部門主導で始めるデータ分析_ナレッジコミュニケーション公開資料
【Azureデータ分析シリーズ】非専門家向け/利用部門主導で始めるデータ分析_ナレッジコミュニケーション公開資料
Takaya Nakanishi
Spark+AI Summit Europe 2019 セッションハイライト(Spark Meetup Tokyo #2 講演資料)
Spark+AI Summit Europe 2019 セッションハイライト(Spark Meetup Tokyo #2 講演資料)
NTT DATA Technology & Innovation
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
Amazon Web Services Japan
Batch Reinforcement Learning
Batch Reinforcement Learning
Takuma Oda
<インフラ管理者向け>チームでのAI開発を支援するAI開発プラットフォームKAMONOHASHI
<インフラ管理者向け>チームでのAI開発を支援するAI開発プラットフォームKAMONOHASHI
Kamonohashi
タクシーxAIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて [SRE NEXT 2020]
タクシーxAIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて [SRE NEXT 2020]
DeNA
CData general proposal
CData general proposal
CData Software Japan
時系列問題に対するCNNの有用性検証
時系列問題に対するCNNの有用性検証
Masaharu Kinoshita
入社半年での開発ストーリー - 千人規模の顔認証受付サービスを 1ヶ月で作った話 -
入社半年での開発ストーリー - 千人規模の顔認証受付サービスを 1ヶ月で作った話 -
Yoshitaka Haribara
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
Sei Kato (加藤 整)
『MobageのAnalytics活用したサービス開発』 - データマイニングCROSS2014 #CROSS2014
『MobageのAnalytics活用したサービス開発』 - データマイニングCROSS2014 #CROSS2014
Koichi Hamada
Mulesoft meetup #02 Anypointで日本のクラウドサービスを繋いでみた!
Mulesoft meetup #02 Anypointで日本のクラウドサービスを繋いでみた!
Kazuya Sugimoto
Tokyo H2O.ai Meetup#2 by Iida
Tokyo H2O.ai Meetup#2 by Iida
Hidenori Fujioka
Similaire à pymcとpystanでベイズ推定してみた話
(20)
if-up 2019 | A2. クラウドにつながり始めたハードウェア
if-up 2019 | A2. クラウドにつながり始めたハードウェア
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
JupyterLabを中心とした快適な分析生活
JupyterLabを中心とした快適な分析生活
Icml2018読み会_overview&GANs
Icml2018読み会_overview&GANs
ディープラーニングによるユーザーの行動予測
ディープラーニングによるユーザーの行動予測
エスキュービズムの考えるDXの取り組み
エスキュービズムの考えるDXの取り組み
【Azureデータ分析シリーズ】非専門家向け/利用部門主導で始めるデータ分析_ナレッジコミュニケーション公開資料
【Azureデータ分析シリーズ】非専門家向け/利用部門主導で始めるデータ分析_ナレッジコミュニケーション公開資料
Spark+AI Summit Europe 2019 セッションハイライト(Spark Meetup Tokyo #2 講演資料)
Spark+AI Summit Europe 2019 セッションハイライト(Spark Meetup Tokyo #2 講演資料)
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
Batch Reinforcement Learning
Batch Reinforcement Learning
<インフラ管理者向け>チームでのAI開発を支援するAI開発プラットフォームKAMONOHASHI
<インフラ管理者向け>チームでのAI開発を支援するAI開発プラットフォームKAMONOHASHI
タクシーxAIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて [SRE NEXT 2020]
タクシーxAIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて [SRE NEXT 2020]
CData general proposal
CData general proposal
時系列問題に対するCNNの有用性検証
時系列問題に対するCNNの有用性検証
入社半年での開発ストーリー - 千人規模の顔認証受付サービスを 1ヶ月で作った話 -
入社半年での開発ストーリー - 千人規模の顔認証受付サービスを 1ヶ月で作った話 -
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
ポストAiを見据えた日本企業の経営戦略 加藤整 20171020_v1.2
『MobageのAnalytics活用したサービス開発』 - データマイニングCROSS2014 #CROSS2014
『MobageのAnalytics活用したサービス開発』 - データマイニングCROSS2014 #CROSS2014
Mulesoft meetup #02 Anypointで日本のクラウドサービスを繋いでみた!
Mulesoft meetup #02 Anypointで日本のクラウドサービスを繋いでみた!
Tokyo H2O.ai Meetup#2 by Iida
Tokyo H2O.ai Meetup#2 by Iida
pymcとpystanでベイズ推定してみた話
1.
Copyright © 2019
Classi Corp. All Rights Reserved. 1 pymc3とpystanを比較してみた話 Classi株式会社 データAI部 小原
2.
Copyright © 2019
Classi Corp. All Rights Reserved. ● 自己紹介 ● pymc3/pystanを使おうと思ったきっかけ ● pymc3/pystanとは ○ 特徴 ○ 使い方 ○ 比較結果 ● まとめ アジェンダ
3.
Copyright © 2019
Classi Corp. All Rights Reserved.3 ◯ 高校への営業 ◯ 学習支援アプリ開発 ◯ 活用コンサルテーション ◯ プラットフォーム開発 ◯ ネイティブアプリ開発 ◯ 学校へのICT関連サポート 会社概要 ベネッセとソフトバンクのジョイントベンチャー
4.
Copyright © 2019
Classi Corp. All Rights Reserved. 「Classi」は教育現場を支援する クラウドサービス • 国内No.1、全国の高校の 50%超が導入 • 利用者数83万人超 • 先生、生徒、保護者が繋がる 学習支援プラットフォーム 4 事業について
5.
Copyright © 2019
Classi Corp. All Rights Reserved. ● 名前: 小原陽介(Twitter: @deerto_herajika) ● 所属: Classi株式会社 データAI部 ○ 学校教育現場をICT活用で支援する会社です ● 職業: DataScientist ○ 元データ整備職人 ○ 普段の業務 ■ 学習データに関する分析・モデル開発/社内BI環境の構築/ etc ○ 使用している言語・ツール: Python(Jupyter Lab)/GCP/Tableau ■ 一昨年R→Pythonにチェンジしました 自己紹介
6.
Copyright © 2019
Classi Corp. All Rights Reserved. pymc3・pystanを触ろうと思ったきっかけ ● 業務でベイズ推定を行う必要が発生した ● 既存のパッケージでサクッと事後分布を取得したい ○ pymc3とpystanが良さそう ■ 両方試してみよう ● pymc3とpystanとは: MCMC法(マルコフ連鎖モンテカルロ法)を行うパッケージ ○ MCMC法: マルコフ連鎖に則りサンプリングを行うことで、解析的に解くことので きない計算や分布を求める方法
7.
Copyright © 2019
Classi Corp. All Rights Reserved. pymc3の特徴 ● 環境 ○ python: >=3.5.4 ○ Theano:>=3.3 and < 3.6 ○ 3.6までは開発テスト済み ■ →3.5.4の環境で使用 ● 使い方 ○ with pm.model()でモデルを定義 し、確率分布を記述
8.
Copyright © 2019
Classi Corp. All Rights Reserved. pstanの特徴 ● 環境 ○ python: >=3.3 ● 特徴 ○ .stan(C++の確率的プログラミン グ言語)でモデルを定義 ○ 下記の3構造で構成される ■ data: 渡すデータ(dict) ■ parameters: 推定するパラ メータ ■ model: モデル(確率分布)
9.
Copyright © 2019
Classi Corp. All Rights Reserved. 使い方 ● 流れ: モデルを記述→サンプリングを「iteration × chain」回実行→結果を取得 ○ 推定結果のsummaryとplotが取得できる summary plot
10.
Copyright © 2019
Classi Corp. All Rights Reserved. 使い方 ● 「モデルを記述→サンプリング→結果を取得」の流れ ○ summary: 推定量のパラメータ毎に統計量が算出される
11.
Copyright © 2019
Classi Corp. All Rights Reserved. 使い方 ● 「モデルを記述→サンプリング→結果を取得」の流れ ○ summary: 推定量のパラメータ毎に統計量が算出される 平均・分散 収束結果 (r_hat < 1.1が目安)
12.
Copyright © 2019
Classi Corp. All Rights Reserved. 使い方 ● 「モデルを記述→サンプリング→結果を取得」の流れ ○ summary: 推定量のパラメータ毎に統計量が算出される
13.
Copyright © 2019
Classi Corp. All Rights Reserved. 使い方 ● 「モデルを記述→サンプリング→結果を取得」の流れ ○ summary: 推定量のパラメータ毎に統計量が算出される カーネル密度推定結果 (色はchain) サンプリング段階毎の サンプル値 (ある近辺を蛇行してい ればOK)
14.
Copyright © 2019
Classi Corp. All Rights Reserved. 使用したシチュエーション ● 8つのカテゴリに所属する試行をN回行う 場合の確率を推定したい ● 事前情報も(後々)反映させたい ● データの確からしさも推定結果の表現に 入れたい ○ 下記のベイズモデリング ■ 尤度:多項分布 ■ 事前/事後分布:ディリクレ分布 ○ (まとめに繋がるが)そもそもMCMCす る必要なかった。。。 ややこしい離散分布に関するまとめより 引用
15.
Copyright © 2019
Classi Corp. All Rights Reserved. 使用したシチュエーション ● pymc3でMCMCの実行 ○ pymc3の文法上、尤度(y)は 1 レコード文の尤度を記述する ● カテゴリ毎の確率を算出 ○ 点推定ではなく、曖昧さを 定量 的に表現できる
16.
Copyright © 2019
Classi Corp. All Rights Reserved. pymc3とpystanの比較 ● (社内データを出せないの で)sklearn.datasets.load_wineに対し て重回帰モデルを使って比較 ● 相関の高い2つの変数を選択し、 下 記のモデルを定義 wine_dataのインポート 相関表 モデル式
17.
Copyright © 2019
Classi Corp. All Rights Reserved. pymc3とpystanの比較 ~pymc3~ カーネル密度推定結果 inputデータの定義 モデルの定義 説明変数の次元が2なのでshapeを入力
18.
Copyright © 2019
Classi Corp. All Rights Reserved. pymc3とpystanの比較 ~pystan~ データ・モデルの読み込み・サンプリング モデルの定義(.stan) カーネル密度推定結果
19.
Copyright © 2019
Classi Corp. All Rights Reserved. pymc3とpystanの比較 ● 推定結果はだいたい同じ(ともに収束) ● pymc3の方が実行時間がかかったが、pythonっぽく書ける事はメリット pymc3 pystan
20.
Copyright © 2019
Classi Corp. All Rights Reserved. まとめ ● pymc3とpystan(あくまで個人の感想です) ○ 実行スピード: pymc3 < pystan ○ 書きやすさ: pymc3 > pystan ○ ドキュメントの充実度: pymc3 < pystan ○ モデルの表現度: pymc3 < pystan (?) ■ pymc3で使っているtheanoの開発が終了しているのも気になるところ ● 業務のベイズ推定はそもそも解析的に解けるパターンだった ○ (ディリクレ分布 × 多項分布 = ディリクレ分布) ○ まずは解析的に解けるかどうか考える癖をつける ■ 解析的に解けない / 階層モデルを作る際に初めて選択肢に入れる
21.
Copyright © 2019
Classi Corp. All Rights Reserved. We are Hiring! Classiでは一緒に働く仲間を募集しています ● Pythonエンジニア/データサイエンティスト/データエンジニア/… ● 詳細は採用ページにて https://hrmos.co/pages/classi
Télécharger maintenant