ブログ

ベイズとR


ベイズの定理の初めのほうをまとめておこうと思います。ミーハーなのでついでにプラグインの\(\LaTeX\) の練習も兼ねてます。(読み返すとかえって数式のせいで読みにくくなっている気もするのでとりあえず下にある青字の部分を読んで、困ったら”これならわかる!”を読んでみてください。)
参考は史上最強図解 これならわかる!ベイズ統計学StanとRでベイズ統計モデリング (Wonderful R)
〇楽しいR
Rで何ができるかをそれとなくなぞることができた。すべてのデータの相関係数を一度に出すことができる上に、GUIとCUIの違いのようになれればエクセルの数倍早く操作できるのではないかと思えました(最終物はExcelなので、まあデータの確認とか整理とかの面で)。ただ、慣れればというのが鬼門でこの本を見てもいまいち表題の通り楽しいだけで身についたりはしないので要練習ですね。眺めるのが一番正しい使い方だと思います。あと、Rstudio入れてやったほうがいいと思います。
〇史上最強図解 これならわかる!ベイズ統計学
・内容
集合の基本の式\(P(A|B) = \cfrac{P(B|A)P(A)}{P(B)}\)の説明から始まって,ベイズの展開公式・(突然連続関数にベイズの定理を使ってきてびっくりしますが)確率密度関数に対してのベイズの公式まで導いてくれます。僕のような数学弱者にも優しく同じことを何度も別の例を使って教えてくれる反面、さすがにくどいのではないのかと思うところも多々ありました。しかし、メールフィルターの応用例(すごく単純ですが)等ベイズ統計学すごいなー、と思わせてくれる本でした。
・ベイズの定理
\begin{align}
P(A)=\cfrac{n_{A}}{n_{U}} , P(A|B)=\cfrac{P(A \cap B)}{P(B)}
\end{align}
から考えるとベイズの公式自体はすごく単純なものですが、A<-H(Hは原因や仮定),B<-D(DはHのもとで生まれたデータ)と置き換えてやると、
\begin{align}
P(H|D) = \cfrac{P(D|H)P(H)}{P(D)}
\end{align}
P(D|H): 尤度(ある仮説からそのデータが得られる確率)
P(H):事前確率(ある仮説が正しい確率)
P(H|D):事後確率(データを考量して、ある仮説が正しい確率)
となって、さらに原因が \(H_{1},H_{2},…H_{n}\)と存在するとすると, \(P(D)=P(D \cap H_{1})P(H_{1})+P(D \cap H_{2})P(H_{2})+…+P(D \cap H_{n})P(H_{n}) \) より
\begin{align}
P(H_{i}|D) = \cfrac{P(D|H_{i})P(H_{i})}{P(D \cap H_{1})P(H_{1})+P(D \cap H_{2})P(H_{2})+…+P(D \cap H_{n})P(H_{n})}  (ベイズの展開公式)
\end{align}
 
◎例題として、モンティ・ホール問題を考えます。

  1. 箱が三つあります。
  2. 箱を一つ選んだあと、司会者が一つはずれの箱を消去してくれます。
  3. その後、改めて箱を選びなおすことができます。選びなおしたほうがよいでしょうか?

という問題です。
選んだ箱をA,司会者が空ける箱をB,余りをCと名付けて箱Aが当たりである仮説を\(H_{A}\),司会者がBを開けるという事象を\(D_{B}\)とおいて,
\(P(H_{A}|D_{B}) = \cfrac{P(D_{B}|H_{A})P(H_{A})}{P(D_{B} \cap H_{A})P(H_{B})+P(D_{B} \cap H_{B})P(H_{B})+P(D_{B} \cap H_{C})P(H_{C})}= \cfrac{1}{3}\)
\(P(H_{A})=P(H_{B})=P(H_{C})= \cfrac{1}{3},  P(D_{B}|H_{A})= \cfrac{1}{2} ,  P(D_{B} \cap H_{C} )= 1\)
となって、実は選びなおしたほうがよいという結果が出ます。
ここで、司会者がBを選んだことによってAが当たりである確率が変化したことをベイズ更新 といいます。
事前確率を得られたデータをもとにさらに研ぎ澄ませる感じでしょうか。
また、勝手にすべての箱が同様の当たりの確率であると仮定していますが、このように自然な勘や経験を生かした事前確率を含ませることができるのがベイズの定理の強みであるということです※。
※ただし後述のMCMCでは解析の再現性の低下を避けるために一様分布か薄い正規分布を使う。
 
 
実際には仮説というのは代表値がどんなものであるか、という指標であらわされると考えて\(H_{i} = \theta _{i}\) としてやり、これが連続な値をとると考えてPを確率密度関数に読み替えてあげると
 
\( \pi(\theta_{i}|D)= \cfrac{f(D|\theta_{i})\pi(\theta_{i})}{\pi(D)}\)
という式が出てきます。
 
・MCMC(マルコフ連鎖モンテカルロ法)
モンテカルロ法自体はwikipediaを読んでもらえるとよいのですが、イメージでいうと”円を描いた正方形の紙にマシンガンをぶっ放して(円の中の銃弾)/(打った銃弾の数)で円の面積を推定するという方法です。
ベイズを使って実際にデータを解析するとなると、事前確率\( \pi(\theta_{i})\)や尤度\(f(D|\theta_{i})\)を求めることはできますが、\( \pi(D) \)を求めるのは難しいです。ただ、\( \pi(D) \)は\(\theta\)に依らない正規化定数でとみなせるので、\(f(D|\theta_{i})\pi(\theta_{i})\)から乱数サンプルを多数発生させてその代用とするのがMCMCです。
stanはこれを扱うのに便利なフリーソフトで、心理学関連でよく使われているようです。
もう少し書きたいのですが、思ったよりベイズが長くなったので次回とします。
今試験中かつ風邪をひいている状態なのでなかなか読書が進みませんが読んだ本があったら追加していこうと思います。おそらく1.5週間以内に「まぐれ」の記事を書いて、それから次回の続きを書いていこうと思います。
 
 

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. ブログ

    初めましてのご挨拶と、業務内容のご紹介

    こんにちは!インターン生の加納です!先月末からこのエクスチュアでお世…

  2. ブログ

    レポートビルダーについて

    お久しぶりです!インターン生の藤本です。今回も前回に引き続き(10月…

  3. ブログ

    ダッシュボードでよくある間違い①

    こんにちは!インターン生の山本です。前回はダッシュボードの定義を振り…

  4. ブログ

    大学3年生、マーケティングオートメーションを学ぶ

    こんにちは!エクスチュアでインターンシップに参加している柳沼です。今…

  5. ブログ

    東南アジアのデジタルマーケティング

    こんにちは!インターン生の山本です!今回は、現在私が調…

  6. ブログ

    夏休みのまとめ

    こんにちは!エクスチュアインターン生の柳沼です。夏休みも終わりに近づい…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


最近の記事

  1. 【GA4/GTM】dataLayerを使ってカスタムイベント…
  2. 【GA4/GTM】dataLayerを活用しよう
  3. ジャーニーマップをデジタルマーケティングの視点で
  4. ChatGPT ProからClaude3 Proへ移行した話…
  5. その分析、やり方あってる?記述統計と推測統計の違い
  1. タグを設定

    Mouseflow

    AdverTimes Days 2017に出展いたしました
  2. Google BigQuery

    Treasure DataからBigQueryにデータを移動させる方法
  3. 本棚

    統計関連の本
  4. Databricks

    databricksのnotebookを使ってみよう その1
  5. IT用語集

    API(Application Programming Interface)って…
PAGE TOP