Loading article…
| 原作者 | スタン開発チーム |
|---|---|
| 初回リリース | 2012年8月30日 |
| 安定リリース | 2.35.0 [1]
/ 2024年6月3日 |
| リポジトリ |
|
| 書かれた | C++ |
| オペレーティング·システム | Unix系、Microsoft Windows、Mac OS X |
| プラットフォーム | Intel x86 - 32 ビット、x64 |
| タイプ | 統計パッケージ |
| ライセンス | 新しいBSDライセンス |
| Webサイト | mc-stan.org |
StanはC++で書かれた統計的推論のための確率的プログラミング言語です。 [ 2] Stan言語は、対数確率密度関数を計算する命令型プログラムで(ベイズ)統計モデルを指定するために使用されます。[2]
StanはNew BSD Licenseに基づいてライセンスされています。Stanはモンテカルロ法の先駆者であるスタニスワフ・ウラムに敬意を表して命名されました。[2]
Stanは、アンドリュー・ゲルマン、ボブ・カーペンター、ダニエル・リー、ベン・グッドリッチなど を含む52名[3]からなる開発チームによって作成されました。
例
単純な線形回帰モデルは と記述できます。ここで です。これは と表現することもできます。後者の形式は Stan では次のように記述できます。
データ {
int < lower = 0 > N ;
ベクトル[ N ] x ;
ベクトル[ N ] y ;
}
パラメータ {
実数 アルファ;
実数 ベータ;
実数< lower = 0 > シグマ;
}
モデル {
y ~ normal ( alpha + beta * x , sigma ); }
インターフェース
Stan 言語自体には、いくつかのインターフェースを通じてアクセスできます。
- CmdStan –シェル用のコマンドライン実行ファイル、
- CmdStanR および rstan – R ソフトウェアライブラリ、
- CmdStanPyとPyStan – Pythonプログラミング言語のライブラリ、
- CmdStan.rb - Rubyプログラミング言語のライブラリ、
- MatlabStan – MATLAB数値計算環境との統合、
- Stan.jl – Juliaプログラミング言語との統合、
- StataStan – Stataとの統合。
- スタンプレイグラウンド - [[1]]でオンライン
さらに、Stanをバックエンドとして使用するパッケージでは、主にR言語で高レベルのインターフェースが提供されています。[4]
- rstanarm は、 R の式構文を使用して、 base R およびlme4によって提供される頻度主義モデルのドロップイン置換を提供します。
- brms [5]は、 R式の構文を使用して幅広い線形および非線形モデルを提供します。
- Prophet は時系列 予測のための自動化された手順を提供します。
アルゴリズム
Stan は、ベイズ推論用の勾配ベースのマルコフ連鎖モンテカルロ(MCMC) アルゴリズム、近似ベイズ推論用の確率的勾配ベースの変分ベイズ法、およびペナルティ付き最大尤度推定用の勾配ベースの最適化を実装します。
- MCMC アルゴリズム:
- ハミルトンモンテカルロ(HMC)
- No-U-Turnサンプラー[2] [6] (NUTS)、HMCとStanのデフォルトMCMCエンジンの変種
- 変分推論アルゴリズム:
- 自動微分変分推論[7]
- パスファインダー: 並列準ニュートン変分推論[8]
- 最適化アルゴリズム:
- メモリ制限 BFGS (Stan のデフォルトの最適化アルゴリズム)
- ブロイデン・フレッチャー・ゴールドファーブ・シャノアルゴリズム
- 古典的な標準誤差推定値と近似ベイズ事後分布に対するラプラス近似
自動微分
Stanは、HMC、NUTS、L-BFGS、BFGS、変分推論に必要なモデルの勾配を計算するために逆モードの自動微分を実装しています。 [2] Stan内の自動微分は、確率プログラミング言語の外部でも使用できます。
使用法
Stanは社会科学、[9]、 製薬統計、[10]、 市場調査、[11]、医療画像[12]などの分野で使用されています。
参照
参考文献
- ^ “リリース 2.35.0”. 2024年6月3日. 2024年6月26日閲覧。
- ^ abcde Stan 開発チーム。2015 年。Stan モデリング言語ユーザーズ ガイドおよびリファレンス マニュアル、バージョン 2.9.0
- ^ 「開発チーム」stan-dev.github.io . 2024年11月21日閲覧。
- ^ Gabry, Jonah. 「R における Stan エコシステムの現状」。統計モデリング、因果推論、社会科学。2020年8 月 25 日閲覧。
- ^ 「BRMS: 'Stan' を使用したベイズ回帰モデル」。2021年8月23日。
- ^ Hoffman, Matthew D.; Gelman, Andrew (2014 年 4 月)。「No-U-Turn Sampler: Hamiltonian Monte Carlo におけるパス長の適応的設定」。Journal of Machine Learning Research。15 : pp . 1593–1623。
- ^ Kucukelbir, Alp; Ranganath, Rajesh; Blei, David M. (2015 年 6 月). 「Stan における自動変分推論」. 1506 (3431). arXiv : 1506.03431 . Bibcode :2015arXiv150603431K.
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要です - ^ Zhang, Lu; Carpenter, Bob; Gelman, Andrew; Vehtari, Aki (2022). 「Pathfinder: 並列準ニュートン変分推論」.機械学習研究ジャーナル. 23 (306): 1–49.
- ^ グッドリッチ、ベンジャミン・キング、ワウロ、グレゴリー、カッツネルソン、アイラ、「定量的歴史社会調査の設計:スタン入門」(2012年)。APSA 2012 年次会議論文。SSRN 2105531で入手可能。
- ^ Natanegara, Fanni; Neuenschwander, Beat; Seaman, John W.; Kinnersley, Nelson; Heilmann, Cory R.; Ohlssen, David; Rochester, George (2013). 「医療製品開発におけるベイズ法の現状: DIA ベイズ科学ワーキンググループによる調査結果と推奨事項」.医薬品統計. 13 (1): 3–12. doi :10.1002/pst.1595. ISSN 1539-1612. PMID 24027093. S2CID 19738522.
- ^ Feit, Elea (2017年5月15日). 「Stanを使用した階層ベイズモデルの推定」 . 2019年3月19日閲覧。
- ^ Gordon, GSD; Joseph, J; Alcolea, MP; Sawyer, T; Macfaden, AJ; Williams, C; Fitzpatrick, CRM; Jones, PH; di Pietro, M; Fitzgerald, RC; Wilkinson, TD; Bohndiek, SE (2019). 「光ファイバーを介した定量的位相および偏光イメージングの早期食道腫瘍形成の検出への応用」. Journal of Biomedical Optics . 24 (12): 1–13. arXiv : 1811.03977 . Bibcode :2019JBO....24l6004G. doi :10.1117/1.JBO.24.12.126004. PMC 7006047. PMID 31840442 .
さらに読む
- Carpenter, Bob; Gelman, Andrew; Hoffman, Matthew; Lee, Daniel; Goodrich, Ben; Betancourt, Michael; Brubaker, Marcus; Guo, Jiqiang; Li, Peter; Riddell, Allen (2017). 「Stan: 確率的プログラミング言語」. Journal of Statistical Software . 76 (1): 1–32. doi : 10.18637/jss.v076.i01 . ISSN 1548-7660. PMC 9788645. PMID 36568334 .
- Gelman, Andrew, Daniel Lee、Jiqiang Guo (2015)。Stan: ベイズ推論と最適化のための確率的プログラミング言語、Journal of Educational and Behavioral Statistics。
- Hoffman, Matthew D.、Bob Carpenter、Andrew Gelman (2012)。Stan、ベイジアンモデリングのためのスケーラブルなソフトウェア、Wayback Machineに 2015-01-21 にアーカイブ、確率的プログラミングに関する NIPS ワークショップの議事録。
