今回の課題19-11 と 19-13 はセットで、19-11 の 標準偏差 for Normal Prior Part1 で示した手順で事前確率を仮定する。19-13 では、その事前確率を使って 標準偏差 for Normal Prior Part2 の手順で事後確率を求める。
ちなみに、今回でトピック19 は終了で、次回からトピック20。
Activity 19-11: Average Sentence Length of Shakespeare’s Plays
課題:William Shakespeare の著作の本で、一文あたりの単語数の平均と、90%の確率であり得る平均単語数を仮定して、正規分布をグラフで示せ。
最後の「90%の確率」の意味は「平均単語数がある単語数以下である確率が90%」。少しややこしい表現だが、原文は以下の通り
Make a guess at M90, the value such that you are 90 percent confident that the average sentence length is smaller than that value.
つまり、平均単語数が 100 以下であるのは、ほぼ間違いない確率(そんな長い1文は通常ありえない)。ではその確率を 90% まで落とした時に平均単語数の長さはどの程度になっているか、ということ。50 とした場合、50より大きい平均になる確率は 10% 以下ということ。
さて、課題に取り組む。
私は Shakespeare の本を読んだことがないが、一般的な英文の長さから 15 と仮定した。しかし「90%の確率の平均」は全く想像がつかないので、平均の 2倍の 30 とした。よって
m0 = 15, M90 = 30
と仮定。
本来は、適当な Shakespeare の本か、同年代の作家の本を元に m0 と M90 を仮定すべきかもしれないが、今回は「楽な」方法を採用。
左の 標準偏差 for Normal Prior Part1 で紹介した標準偏差 h0 の算出方法に従い求める。
(h0 <- (30 - 15)/(qnorm(0.9,0,1)))
## [1] 11.70456
この事前確率の正規分布は左のようになる。マイナス値も含むかなり「弱い確信」の分布となってしまった。
curve(dnorm(x,15,h),
from=-25,to=60,n=100,
xlab="M",ylab="",
main="Normal Prior for Actiivty 19-11")
text(-10,0.03,"M=15,h0=11.7")
Activity 19-13: Average Sentence Length of Shakespeare (Continued.)
課題:William Shakespeare 著 "The Taming of The Shrew" から無作為に選んだ 20ページの最初のセンテンスの単語数が以下の通りだった
課題19-11 より m0 = 15, h0 = 11.70456、そして上記観測データを使って、左の手順で事後確率を算出する(標準偏差 for Normal Prior Part2 参照)。
> h0
[1] 11.70456
> m0 <- 15
> c0 <- 1/h0^2
> cD <- length(x)/var(x)
> c1 <- c0 + cD
> m1 <- (c0*m0+cD*mean(x))/c1
> h1 <- 1/sqrt(c1)
> m1; h1
[1] 13.55274
[1] 2.194673
> curve(dnorm(x,m1,h1),from=11,to=16,n=100,xlab="M",ylab="",main="Normal Prior for Activitiy 19-2")
> text(7.5,0.15,"M=13.6,h=2.2")
事前確率:M=15, h=11.7
事後確率:M=13.5, h=2.2
標準偏差の小ささに驚いた。まぁ、事前確率の標準偏差が大きすぎた気もするが...。
二つをY軸目盛りを比較すれば精度の違い一目瞭然だが、一応二つを重ねる。
> curve(dnorm(x,m1,h1),from=-25,to=60,n=1000,xlab="M",ylab="",col="red")
> curve(dnorm(x,m0,h0),from=-25,to=60,n=1000,xlab="M",ylab="",add=T)
> text(-10,0.05,"M=15,h=11.7")
> text(22,0.15,"M=13.6,h=2.2",col="red")
課題20-1 Controlled Experiment の重要性 に続く。
課題:William Shakespeare 著 "The Taming of The Shrew" から無作為に選んだ 20ページの最初のセンテンスの単語数が以下の通りだった
15 6 8 13 34 23 6 23 18 4 2 15 6 4 5 17 38 17 9 7
[1] 11.70456
> m0 <- 15
> c0 <- 1/h0^2
> cD <- length(x)/var(x)
> c1 <- c0 + cD
> m1 <- (c0*m0+cD*mean(x))/c1
> h1 <- 1/sqrt(c1)
> m1; h1
[1] 13.55274
[1] 2.194673
> curve(dnorm(x,m1,h1),from=11,to=16,n=100,xlab="M",ylab="",main="Normal Prior for Activitiy 19-2")
> text(7.5,0.15,"M=13.6,h=2.2")
事前確率:M=15, h=11.7
事後確率:M=13.5, h=2.2
標準偏差の小ささに驚いた。まぁ、事前確率の標準偏差が大きすぎた気もするが...。
二つをY軸目盛りを比較すれば精度の違い一目瞭然だが、一応二つを重ねる。
> curve(dnorm(x,m1,h1),from=-25,to=60,n=1000,xlab="M",ylab="",col="red")
> curve(dnorm(x,m0,h0),from=-25,to=60,n=1000,xlab="M",ylab="",add=T)
> text(-10,0.05,"M=15,h=11.7")
> text(22,0.15,"M=13.6,h=2.2",col="red")
課題20-1 Controlled Experiment の重要性 に続く。





0 件のコメント:
コメントを投稿