グラフィカル・モデルを基にした因果探索

2025/1/21

Rによるベイジアンネットワークを用いた因果探索。 有向グラフ因果モデル(DGCMs)、またはDAGは、因果関係を説明し、データから真の因果の関係を探索するために計算に用いる方法です。 causal-learnやcausalpyというpythonの因果探索ライブラリを評価しました、Rにも同様のライブラリが提供されています。ここでは、CRANに登録されているRのライブラリpcalgとbnlearnに実装されているいくつかの因果探索アルゴリズムを評価します。 2025年の10大リスク  ユーラシア・グループは、 ...

ReadMore

JupyterノートブックでRを使う方法

2025/1/20

Pythonの開発環境としてJupyter notebookがよく使われています。RでもPython同様にJupyter によるコードの編集、実行環境が利用できます。データサイエンスでは、主にJulia, Python, Rという言語が使用されますが、このイニシャルを繋げるとJupyterになります。 Jupyter notebook  R環境設定  JupyterからRを使うには、Rを起動したコマンドプロンプトから以下のコマンドを使います。  使用しているバージョンのR環境にJupyterのカーネルのパ ...

ReadMore

ドル円為替レートと物価上昇の関係:非線形モデル

2024/12/29

【マネーサプライと物価上昇の因果推論】で、線形モデルを適用して因果関係を調べてみました。物価上昇がドル円為替レートと因果関係があり、国内の金融政策には影響を受けていないことを示しました。ここでは、このドル円為替レートと物価上昇の関係に非線形なモデルを適用した例を示します。 USDJPY為替レートと物価上昇  最初に、【マネーサプライと物価上昇の因果推論】で使った同じデータセットを読み込みます。 図1 CPIーUSDJPY為替レートのデータセット  このデータセット(期間2001年12月〜2023年11月の ...

ReadMore

Apple Silicon Mac の R バージョン更新・インストール

2024/12/25

ARM Mac(Apple silicon)用の新しいバージョンの R バイナリパッケージがリリースされていたので(R4.4.2 released on 2024/10/31) 更新します。 CRANから Rバイナリパッケージをインストール 以下のCRANのサイトにアクセスしてダウンロードします。 https://cran.rstudio.com "Download R for macOS" をクリックします。  Linux(Debian, Fedora/Redhat, Ubuntu) またはWindow ...

ReadMore

書評:Essential Math for AI

2024/12/23

Essential Math for AI:Next-Level Mathematics for Efficient and Successful AI Systems Hala Nelson Essential Math for AI:Next-Level Mathematics for Efficient and Successful AI Systems  本書は、機械学習に関してトピックごとに関連する数学が挿入してあります。数学の理論や証明、プラミングコードは記述してありません。  読者として、数 ...

ReadMore

書評:Supremacy

2024/12/20

Supremacy: AI, ChatGPT and the race that will change the world Parmy Olson Supremacy - AI, ChatGPT and the race that will change the world  ジェフリー・ヒントン氏のチームがGPUにCNNを実装したAlexNetを使って画像認識でブレークスルーを起こしたのが2012年です。  5年後の2017年にGoogleのチームがAttentionモデルを使ったTransforme ...

ReadMore

R統合開発環境 RStudioのインストール

2024/12/10

 ARMネイティブなRStudioがリリースされていたのでインストールしました。  AppleSilcon版(ARMコアのMシリーズプロセッサ) Mac用のAnacondaをインストールしたときに、RStudioはバンドルされていませんでした。  Rの統合開発環境(IDE) RStudioは、公益法人RStudioが開発元でしたが、2022年に法人形態が変更され、Positという名称になっています。また、Positは、Rの開発、メンテナンスを行なっているR ファウンデーションとは無関係です。 RStudi ...

ReadMore

書評:Why Machines Learn

2024/11/25

Why Machines Learn: The Elegant Math Behind Modern AI Anil Ananthaswamy Why Machines Learn: The Elegant Math Behind Modern AI  本書は1950年代のローゼンブラットのパーセプトロンから現代の深層機械学習までの物語を記述してあります。  今年、2024年のノーベル物理学賞を授与された、ホップフィールド氏(John Hopfield)とヒントン氏(Geoffey Hinton)の仕事も ...

ReadMore

書評:The Model Thinker

2024/11/18

The Model Thinker: What You Need to Know to Make Data Work for You Scott E. Page The Model Thinker: What You Need to Know to Make Data Work for You  本書のサンプルを目を通してみると、本文がチャーリー・マンガー氏の言葉の引用から始まっています。  ー賢明になるためには、頭の中にモデルを持つことだ。このモデルの格子の中に、直接の経験と、代行による間接的な経験の両 ...

ReadMore

市場創造型のイノベーション 書評:The Prosperity Paradox

2024/12/26

ノーベル物理学賞の対象としての機械学習  今年のストックホルムの物理学賞に、機械学習の分野への貢献に対してジョン・ホップフィールド氏と以前グーグルにも所属していたトロントのジェフリー・ヒントン氏が選出された。  ACM、チューリング賞なら自然なのだが、コンピュータサイエンスの分野から物理学賞として選ばれるのは珍しい。ストックホルムの賞は物理学と化学と生理学の3種類しかないので、物理学的な考えがアルゴリズムに導入されているので物理学という枠組みが適用されるのであろう。それだけ機械学習の社会へのインパクトが大 ...

ReadMore

システム リスクモデル

ShinyStan のセットアップ

ShinyStanというShinyのWebアプリケーション・フレームワークを使ったStanの診断ツールをインストールします。

ShinyStanはRのパッケージとして利用できます。

Stan

 Stanは、ハミルトニアンモンテカルロ(以下、HMC)を使ったMCMCです。Rインターフェイスの他、Pythonインターフェイス、コマンドラインインターフェイスからも利用できます。

 Stanはモデリング言語で、ベイジアンモデルを記述する確率プログラミング言語と言えます。StanのコアライブラリはC++で記述されており、Stanで記述したモデルもソースを変換し、C++でコンパイルして実行します。MCMCのサンプリングにはHMC、No U-Turn Sampler(NUTS)アルゴリズムを使います。

 ShinyStanは、Stanが計算したMCMCの出力を分析する対話的な視覚化ツールです。

ShinyStanのインストール

 Rを起動し、パッケージをインストールします。

install.packages('shinystan')

 依存関係と必要なパッケージが表示されます。それらのパッケージもCRANからインストールします。

$ r

R version 4.2.3 (2023-03-15) -- "Shortstop Beagle"
Copyright (C) 2023 The R Foundation for Statistical Computing
Platform: aarch64-apple-darwin20 (64-bit)

R は、自由なソフトウェアであり、「完全に無保証」です。 
一定の条件に従えば、自由にこれを再配布することができます。 
配布条件の詳細に関しては、'license()' あるいは 'licence()' と入力してください。 

R は多くの貢献者による共同プロジェクトです。 
詳しくは 'contributors()' と入力してください。 
また、R や R のパッケージを出版物で引用する際の形式については 
'citation()' と入力してください。 

'demo()' と入力すればデモをみることができます。 
'help()' とすればオンラインヘルプが出ます。 
'help.start()' で HTML ブラウザによるヘルプがみられます。 
'q()' と入力すれば R を終了します。 

 [以前にセーブされたワークスペースを復帰します] 

> install.packages('shinystan')
 --- このセッションで使うために、CRAN のミラーサイトを選んでください --- 

 依存対象 (dependency) ‘tensorA’, ‘distributional’, ‘ggridges’, ‘posterior’, ‘crosstalk’, ‘plyr’, ‘BH’, ‘bayesplot’, ‘colourpicker’, ‘DT’, ‘dygraphs’, ‘gtools’, ‘markdown’, ‘reshape2’, ‘rstan’, ‘shinyjs’, ‘shinythemes’, ‘threejs’ もインストールします 

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/tensorA_0.36.2.tgz' を試しています 
Content type 'application/x-gzip' length 222335 bytes (217 KB)
==================================================
downloaded 217 KB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/distributional_0.3.2.tgz' を試しています 
Content type 'application/x-gzip' length 531344 bytes (518 KB)
==================================================
downloaded 518 KB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/ggridges_0.5.4.tgz' を試しています 
Content type 'application/x-gzip' length 2258660 bytes (2.2 MB)
==================================================
downloaded 2.2 MB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/posterior_1.4.1.tgz' を試しています 
Content type 'application/x-gzip' length 867796 bytes (847 KB)
==================================================
downloaded 847 KB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/crosstalk_1.2.0.tgz' を試しています 
Content type 'application/x-gzip' length 405077 bytes (395 KB)
==================================================
downloaded 395 KB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/plyr_1.8.8.tgz' を試しています 
Content type 'application/x-gzip' length 1014282 bytes (990 KB)
==================================================
downloaded 990 KB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/BH_1.81.0-1.tgz' を試しています 
Content type 'application/x-gzip' length 13497219 bytes (12.9 MB)
==================================================
downloaded 12.9 MB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/bayesplot_1.10.0.tgz' を試しています 
Content type 'application/x-gzip' length 5357606 bytes (5.1 MB)
==================================================
downloaded 5.1 MB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/colourpicker_1.2.0.tgz' を試しています 
Content type 'application/x-gzip' length 1286527 bytes (1.2 MB)
==================================================
downloaded 1.2 MB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/DT_0.27.tgz' を試しています 
Content type 'application/x-gzip' length 1613079 bytes (1.5 MB)
==================================================
downloaded 1.5 MB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/dygraphs_1.1.1.6.tgz' を試しています 
Content type 'application/x-gzip' length 424406 bytes (414 KB)
==================================================
downloaded 414 KB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/gtools_3.9.4.tgz' を試しています 
Content type 'application/x-gzip' length 356982 bytes (348 KB)
==================================================
downloaded 348 KB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/markdown_1.6.tgz' を試しています 
Content type 'application/x-gzip' length 196227 bytes (191 KB)
==================================================
downloaded 191 KB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/reshape2_1.4.4.tgz' を試しています 
Content type 'application/x-gzip' length 339140 bytes (331 KB)
==================================================
downloaded 331 KB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/rstan_2.21.8.tgz' を試しています 
Content type 'application/x-gzip' length 23073862 bytes (22.0 MB)
==================================================
downloaded 22.0 MB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/shinyjs_2.1.0.tgz' を試しています 
Content type 'application/x-gzip' length 1086616 bytes (1.0 MB)
==================================================
downloaded 1.0 MB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/shinythemes_1.2.0.tgz' を試しています 
Content type 'application/x-gzip' length 978182 bytes (955 KB)
==================================================
downloaded 955 KB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/threejs_0.3.3.tgz' を試しています 
Content type 'application/x-gzip' length 941813 bytes (919 KB)
==================================================
downloaded 919 KB

 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/shinystan_2.6.0.tgz' を試しています 
Content type 'application/x-gzip' length 1336744 bytes (1.3 MB)
==================================================
downloaded 1.3 MB


 ダウンロードされたパッケージは、以下にあります 
 	/var/folders/z3/y2vb_4653kjcytsygg5bkv7w0000gn/T//RtmpqTGd2O/downloaded_packages 

 devtoolsパッケージもインストールします。

> install.packages("devtools")
 URL 'https://cran.ism.ac.jp/bin/macosx/big-sur-arm64/contrib/4.2/devtools_2.4.5.tgz' を試しています 
Content type 'application/x-gzip' length 421790 bytes (411 KB)
==================================================
downloaded 411 KB


 ダウンロードされたパッケージは、以下にあります 
 	/var/folders/z3/y2vb_4653kjcytsygg5bkv7w0000gn/T//RtmpqTGd2O/downloaded_packages 
> 

 

 インストールが終了したら、デモを起動してみます。

library('shinystan')
launch_shinystan_demo()

デモ画面

Diagnose パラメータはmu

サンプル情報

パラメータmuのカーネル密度、Autocorrelationのマルチビュー

パラメータの推定やカーネル密度の表示もよくできています。

Rで頻繁に使用するPlotに比べると、WebベースのShinyは解像度が高いようです。

ShinyStanには、deploy_shinystanという関数も用意されており、ShinyStanアプリケーションをデプロイできるようになっています。

 次の機会に、公開可能な興味深いモデル(金融市場に関連したモデル)のモンテカルロシミュレーションの結果をこのツールで分析してみましょう。

-システム, リスクモデル
-