標準ベイズ統計学 2章の章末問題解答例

Statistics
Bayes
Author

statditto

Published

May 16, 2024

library
library(tidyverse)

はじめに

BDA3の邦訳が出るらしいので、その前に読み終えたいという気持ちで記事を書いています。問題文は略記したりしなかったりします。適宜Rを利用して解きます。絶対にどこかに間違いがあると思われるので、見つけたらXで教えてください。

解答例

問一

2.5節のデータを用いて次の4つの分布を計算せよ。

  1. 父親の職業の周辺確率分布
  2. 息子の職業の周辺確率分布
  3. 父親が農家であるときの、息子の職業の条件付き分布
  4. 息子が農家であるときの、父親の職業の条件付き分布

2.5節のデータは次の通りです。

Code
df <- tribble(
  ~father, ~farmer, ~manufacturing, ~employee, ~sales, ~professor,
  "farmer", 0.018, 0.035, 0.031, 0.008, 0.018,
  "manufacturing", 0.002, 0.112, 0.064, 0.032, 0.069,
  "employee", 0.001, 0.066, 0.094, 0.032, 0.084,
  "sales", 0.001, 0.018, 0.019, 0.010, 0.051,
  "professor", 0.001, 0.029, 0.032, 0.043, 0.130)
as.data.frame(df)

父親の職業の周辺確率分布

父親について合計を取ればよさそうです。

Code
df %>%
  pivot_longer(cols=!father,names_to = "son", values_to = "prob") %>% 
  group_by(father) %>% 
  summarise(prob = sum(prob))

息子の職業の周辺確率分布

同様に息子について合計を取ればよさそうです。

Code
df %>%
  pivot_longer(cols=!father,names_to = "son", values_to = "prob") %>% 
  group_by(son) %>% 
  summarise(prob = sum(prob))

父親が農家であるときの、息子の職業の条件付き分布

条件付き分布の定義に従って同時密度を周辺密度で割ることで計算できそうです。

Code
df %>%
  pivot_longer(cols=!father,names_to = "son", values_to = "prob") %>% 
  filter(father == "farmer") %>% 
  mutate(cond_prob = prob/sum(prob))

息子が農家であるときの、父親の職業の条件付き分布

Code
df %>%
  pivot_longer(cols=!father,names_to = "son", values_to = "prob") %>% 
  filter(son == "farmer") %>% 
  mutate(cond_prob = prob/sum(prob))

問二

期待値と分散の定義から次の値を計算せよ。ただし、\(Y_1, Y_2\)\(\mathrm{E}[Y_i]=\mu_i, \mathrm{Var}[Y_i] = \sigma_i^2\)を満たす二つの独立な確率変数とする。また、\(a_1, a_2\)は定数とする。

  1. \(\mathrm{E}[a_1 Y_1+a_2 Y_2], \mathrm{Var}[a_1 Y_1+a_2 Y_2]\)
  2. \(\mathrm{E}[a_1 Y_1-a_2 Y_2], \mathrm{Var}[a_1 Y_1-a_2 Y_2]\)

和の期待値と分散

\[ \begin{aligned} \mathrm{E}[a_1 Y_1+a_2 Y_2] &= \mathrm{E}[a_1 Y_1] + \mathrm{E}[a_2 Y_2]\\ &= a_1 \mathrm{E}[Y_1] + a_2\mathrm{E}[ Y_2]\\ &= a_1 \mu_1 + a_2 \mu_2 \end{aligned} \]

\[ \begin{aligned} \mathrm{Var}[a_1 Y_1+a_2 Y_2] &= \mathrm{Var}[a_1 Y_1] + \mathrm{Var}[a_2 Y_2] + 2\mathrm{Cov}(a_1 Y_1,a_2 Y_2)\\ &= a_1 ^2\mathrm{Var}[Y_1] + a_2^2 \mathrm{Var}[ Y_2]\\ &= a_1^2 \sigma_1^2 + a_2^2 \sigma^2_2 \end{aligned} \]

差に関してはほぼ同じなので省略します。

問三

\(X,Y,Z\)を同時密度が\(p(x,y,z) \propto f(x,z)g(y,z)h(z)\)で与えられる確率変数としたとき、次を示せ。

  1. \(p(x|y,z) \propto f(x,z)\)
  2. \(p(y|x,z) \propto g(y,z)\)
  3. \(X\)\(Y\)\(Z\)を与えたもとで条件付き独立である

\(p(x|y,z) \propto f(x,z)\)について

簡単のために連続な確率変数として考えます。

\[ \begin{aligned} p(x \mid y, z) &= \frac{p(x, y, z)}{p(y, z)} \\ &= \frac{p(x, y, z)}{\int p(x, y, z) \; dx} \\ &\propto \frac{f(x, z) g(y, z) h(z)}{\int f(x, z) g(y, z) h(z) \; dx} \\ &= \frac{f(x, z) g(y, z) h(z)}{g(y, z) h(z) \int f(x, z) \; dx} \\ &= \frac{f(x, z)}{\int f(x, z) \; dx} \end{aligned} \]

\(p(y|x,z) \propto g(y,z)\)について

\[ \begin{aligned} p(y \mid x, z) &= \frac{p(x, y, z)}{p(x, z)} \\ &= \frac{p(x, y, z)}{\int p(x, y, z) \; dy} \\ &\propto \frac{f(x, z) g(y, z) h(z)}{\int f(x, z) g(y, z) h(z) \; dy} \\ &= \frac{f(x, z) g(y, z) h(z)}{f(x, z) h(z) \int g(y, z) \; dy}\\ &= \frac{g(y, z)}{\int g(y, z) \; dy} \end{aligned} \]

\(X\)\(Y\)\(Z\)を与えたもとで条件付き独立であること

\(p(x \mid z) = p(x \mid y, z)\)を示せばよさそうです。

\[ \begin{aligned} p(x \mid z) &= \frac{p(x, z)}{p(z)} \\ &= \frac{\int p(x, y, z) \; dy}{\int \int p(x, y, z) \; dy \; dx} \\ &\propto \frac{\int f(x, z) g(y, z) h(z) \; dy}{\int \int f(x, z) g(y, z) h(z) \; dy \; dx} \\ &= \frac{f(x, z) h(z) \int g(y, z) \; dy}{h(z) \left( \int g(y, z) \; dy \right) \left( \int f(x, z) \; dx \right)} \\ &= \frac{f(x, z)}{\int f(x, z) \; dx} \\ &= p(x \mid y, z) \end{aligned} \]

\(p(x \mid z) \propto p(x \mid y, z)\)を示せました。\(p(x \mid z) = kp(x \mid y, z)\)としたとき、\(\int p(x \mid z)dx =\int p(x \mid y, z)dx = 1\)であることから\(k=1\)、つまり\(p(x \mid z) = p(x \mid y, z)\)が成り立ちます。

問四

公理 Theorem 1 ~ Theorem 3 のみを利用してベイズルールを証明せよ。

Theorem 1 \[ 0 = \Pr(Hではない|H) \leq \Pr(F|H) \leq \Pr(H|H) = 1 \]

Theorem 2 \[ F \cap G = \emptyset ならば,\Pr(F \cup G | H) = \Pr(F|H) + \Pr(G|H) \]

Theorem 3 \[ \Pr(F \cap G | H) = \Pr( G | H)\Pr(F|G \cap H ) \]

a

条件付き確率の定義から示します。

\[ \begin{aligned} \Pr(H_j\mid E)\Pr(E) &= \frac{\Pr(H_j\cap E)}{\Pr(E)}\Pr(E)\\ &=\Pr(E\cap H_j)\\ &= \Pr(E\mid H_j)\Pr(H_j) \end{aligned} \]

b

\(H_k\)\(E\)の分割であることから、集合の性質を利用して示します。

\[ \begin{aligned} \Pr(E) &= \Pr (H_1\cup H_2 \cup \ldots \cup H_K)\\ &=\Pr( H_1) + \Pr( H_2 \cup \ldots \cup H_K)\\ &= \Pr(E \cap H_1) + \Pr( E \cap (H_2 \cup \ldots \cup H_K))\\ &= \Pr(E \cap H_1) + \Pr( E \cap (\bigcup_{k=2}^K H_k ))\\ \end{aligned} \]

c

bより明らかです(これでいいのだろうか)。

d

\[ \begin{aligned} \Pr(H_j\mid E) &=\frac{ \Pr(E\mid H_j)\Pr(H_j)}{\Pr(E)}\\ &=\frac{ \Pr(E\mid H_j)\Pr(H_j)}{\sum_{k=1}^K Pr(E \cap H_k)}\\ &=\frac{ \Pr(E\mid H_j)\Pr(H_j)}{\sum_{k=1}^K\Pr(E\mid H_k)\Pr(H_k)} \end{aligned} \]

問五

壺から球を引くときの分布を考えます。

a

Code
df <- tribble(
  ~X, ~Y, ~prob,
  0, 0, 0.2,
  1, 0, 0.3,
  0, 1, 0.3,
  1, 1, 0.2)
as.data.frame(df)

b

Code
df %>% 
  mutate(E = Y*prob) %>% 
  select(E) %>% 
  sum()
[1] 0.5
Code
df %>% 
  filter(Y == 1) %>% 
  select(prob) %>% 
  sum()
[1] 0.5

c

\[ \begin{aligned} \mathrm{Var}(Y \mid X = 0) &= \mathrm{E}((Y \mid X = 0)^2) - \mathrm{E}(Y \mid X = 0)^2 \\ &= 1^2 p(Y = 1 \mid X = 0) + 0^2 p(Y = 0 \mid X = 0) - \\ & \quad (1 p(Y = 1 \mid X = 0) + 0 p(Y = 0 \mid X = 0))^2 \\ &= .6 - (.6)^2 \\ &= 0.24 \end{aligned} \]

\(\mathrm{Var}(Y \mid X = 1)\)も同様です。

\[ \begin{aligned} \mathrm{Var}(Y) &= \mathrm{E}(Y^2) - \mathrm{E}(Y)^2 \\ &= 1^2 p(Y = 1) + 0^2 p(Y = 0) - (0.5)^2 \\ &= 0.5 - (0.5)^2 \\ &= 0.25 \end{aligned} \]

コインを投げていないときはどのボールが出るかわからないので、分散が大きくなるが、壺がわかっていれば不確実性が小さくなるので分散が小さくなるというイメージです。ここの説明は個人差がありそうなので他の人の意見も聞いてみたいです。

d

\[ \begin{aligned} \Pr(X = 0 \mid Y = 1) &= 0.6 \end{aligned} \]

問六

条件付き独立の定義から導きます。

\[ \begin{align} \Pr(A, B \mid C) &= \Pr(A \mid C) \Pr(B \mid C) \\ \Pr(A, B \mid C) &= (1 - \Pr(A^c \mid C))\Pr(B \mid C) \\ \Pr(A, B \mid C) &= \Pr(B \mid C) - P(A^c \mid C)\Pr(B \mid C)\\ \Pr(A, B \mid C) &= \Pr(A, B \mid C) + \Pr(A^c, B \mid C) - \Pr(A^c \mid C)\Pr(B \mid C)\\ \Pr(A^c, B \mid C)&= P(A^c \mid C)\Pr(B \mid C) \end{align} \]

他二つについても同様です。

反例として、サイコロを投げる試行を考えてみます。

  • A:偶数が出る
  • B:3以上が出る
  • C:いかさまサイコロを選択する

いかさまサイコロは\(Pr(C=6)=0.5\)として、それ以外の目は等確率とします。\(C^c\)は通常のサイコロを選択する事象とします。この場合明かに\(A \perp B \mid C^c\)ですが\(A \not\perp B \mid C\)となります。

問七

この問題は日本語がよくわかりませんでした。原著の問題文を読んだ方がよさそうです。

a

\(p(E)\leq1\)が良いアイデアであることを示せ。

この表記なら理解できます。\(p(E)\)が1を超えてしまうと、常に最大リターンの1ドルよりも大きい額を胴元に支払うことになり、賭けとして成立しなさそうです。

a

\(p(E)+p(E^c)=1\)が良いアイデアであることを示せ。

こちらもこの表記なら一応理解できます。\(E,E^c\)のどちらの賭けも存在するとします。どっちにもかけた場合、収支が\(1-p(E)-p(E^c)\)になります。収支がマイナスになるゲームに参加する人はいない1という主張は理解出来るので、いいアイデアなのかもしれません。

問八

全く自信がないので解答がふわふわです。

a

i

国勢調査台帳から無作為にたくさんのxを復元抽出したときのヒンドゥー教徒の割合。ベイジアンっぽい解答だと、無作為に選んだxをヒンドゥー教徒だと信じる信念の度合い、みたいになるのでしょうか?有識者の方に教えて欲しいです。

ii

国勢調査台帳から無作為にたくさんのxを復元抽出したときの6452859番の割合。ベイジアンっぽい解答だと、選んだxが6452859番だと信じる信念の度合いでしょうか。

iii

国勢調査台帳から無作為にたくさんのxを復元抽出してxが6452859番ときに、そのxがヒンドゥー教徒である割合。頻度論っぽい考え方だと意味不明な文章になりますね。ベイジアンっぽい解答だと、6452859番がヒンドゥー教徒だと信じる信念の度合いでしょうか。

b

i

これは同時分布ですか?よくわからないので原著を読みました。「\(P(\theta = 1/3)\)、ただし\(\theta\)は長期的にコインを投げたときの表が出る相対頻度とする」という意味らしいです。変な表現ですが、表が出る確率が\(1/3\)である確率みたいなものでしょうか。たくさんコイン投げをする試行をたくさんのセット数やったときに、表が出る相対頻度が\(1/3\)であるセット数の割合を表していそうです。ベイジアンっぽい解答だと、\(\theta\)\(1/3\)だと信じる度合いでいいでしょうか。

ii

たくさんのセットのなかで、最初に表が出る割合と考えることが出来そうです。ベイジアンっぽい解答だとそのまま最初に表が出ると信じる度合いになりそうです。

iii

たくさんコイン投げをする試行をたくさんのセット数やったときに、表が出る相対頻度が\(1/3\)とわかっているもとで、そのたくさんのセットの中から1セット選んだ時に、そのセットの最初のコイン投げが表である割合でしょうか。ベイジアンっぽい解答だと、長期的に見た表が出る相対頻度が\(1/3\)であるときに、最初に表が出ると信じる度合いになりそうです。

c

これは頻度論的にはどう解釈するんでしょうか。コインを既に投げたが結果を見ていない、という試行を何度もやったときにコインが表である試行の割合、となるんでしょうか?ベイジアンっぽい解答だと表がでたと信じる度合いになりそうです。

感想

計算問題以外の、解釈を問う問題が面白いです。ちゃんとベイズの考え方に触れたことがない&頻度論もちゃんと理解しているわけではないため、たくさん間違っていると思うのでたくさん槍を投げて僕を強くしてほしいです(適当)。