差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
informatics:2011 [2011/06/16 13:43] – [ベイズ法] wataluinformatics:2011 [不明な日付] (現在) – 外部編集 (不明な日付) 127.0.0.1
行 1: 行 1:
 +
 +
 +==== 経営情報学コース分の課題 ====
 +
 +|西先生|これから40年どんな手段で世の中を良くするのか?技術や考え方をビジョン化し、具体的に説明しなさい|
 +|山田先生|講義内での課題を、A4一枚ぐらいまで膨らませて|
 +|水戸先生|[[http://wlgate.inf.uec.ac.jp/j-kiso/|ここにおいてある標示資料]]の一番最後のページ|
 +|由良先生|今日の配付資料のとおり|
 +|山本|コインの表が出る確率は1/2としても、画鋲の針が上になる確率はいくらか、画鋲を30回、投げてみよう ([[http://stat.inf.uec.ac.jp/library/informatics.2011/note-20110616.pdf|配布資料の最後のページ]]と下のコード)|
 +
 +|提出期限|2011年6月30日(木) 0500pmまで|
 +|提出場所|西五号館3階 総合情報学専攻事務室|
 +
 +宜しくお願いします。
 +
 ==== 画鋲を投げて針が上向く確率の推定 ==== ==== 画鋲を投げて針が上向く確率の推定 ====
  
行 24: 行 39:
  
 === ベイズ法 === === ベイズ法 ===
-この計算は、WinBUGSというソフトウェアを用いるのが簡単である。+ベイズ法に関する計算、特に事後分布の算出は、WinBUGSというソフトウェアを用いるのが簡単である。
  
 == データの与え方 == == データの与え方 ==
 <code> <code>
-DATA list {n=32, x=c(1,0,1,0,0,1,1,1,0,1,0,1,1,0,1,0,0,0,1,1,0,0,1,1,1,0,0,1,0,0,1,0)+DATA list(n=32, x=c(1,0,1,0,0,1,1,1,0,1,0,1,1,0,1,0,0,0,1,1,0,0,1,1,1,0,0,1,0,0,1,0))
 </code> </code>
  
行 35: 行 50:
 モデルと事前分布と初期値の指定。 モデルと事前分布と初期値の指定。
 <code> <code>
-MODEL model {+MODEL model{
   for ( i in 1:n ) {   for ( i in 1:n ) {
     x[i] ~ dbin(p,1)     x[i] ~ dbin(p,1)
行 49: 行 64:
 {{:informatics:beta-distributions.jpg?400|}} {{:informatics:beta-distributions.jpg?400|}}
  
- +ここから先の手順は、多少複雑で[[http://web.sfc.keio.ac.jp/~kogure/seminar/07fall/2/WinBUGS_usage.pdf|この手引き]]に頼るとよい。手順だけ記すと、次の通り。
-ここから先の手順は、多少複雑で+
  
  
行 68: 行 82:
   - 履歴(history)、直近の履歴(trace)、密度関数(density)、分位点の推移(quantiles)、などを眺めて、定常分布となっていることを確認 (〔Sample Monitor Tool〕の〔node〕欄に ``*'' を入力してから、各ボタンをクリックするのが便利) し、自己相関(auto cor)も確認し(妙なパターンがなく、滑らかに減少していれば良い、速く減少していればもっと良いがMCMCなので仕方ない)てから、事後分布を拾う   - 履歴(history)、直近の履歴(trace)、密度関数(density)、分位点の推移(quantiles)、などを眺めて、定常分布となっていることを確認 (〔Sample Monitor Tool〕の〔node〕欄に ``*'' を入力してから、各ボタンをクリックするのが便利) し、自己相関(auto cor)も確認し(妙なパターンがなく、滑らかに減少していれば良い、速く減少していればもっと良いがMCMCなので仕方ない)てから、事後分布を拾う
   - 定常と判断した範囲(beg〜end)までについてstatsを表示させる (〔Sample Monitor Tool〕でbegの値を1ではなく、定常と判断した歩数に変更)   - 定常と判断した範囲(beg〜end)までについてstatsを表示させる (〔Sample Monitor Tool〕でbegの値を1ではなく、定常と判断した歩数に変更)
-     
-詳細は[[http://web.sfc.keio.ac.jp/~kogure/seminar/07fall/2/WinBUGS_usage.pdf|このマニュアル]]に頼る。 
  
 === ブートストラップ法 === === ブートストラップ法 ===
行 93: 行 105:
 これは点推定の方法は正しくても、分布の仮定がそれほど正しくないかもしれない時に、一番最初の信頼区間とは異なった範囲を示す。 これは点推定の方法は正しくても、分布の仮定がそれほど正しくないかもしれない時に、一番最初の信頼区間とは異なった範囲を示す。
  
-{{:informatics:bootstrap-sample-distribution-of-p.jpg?200|}}+{{:informatics:bootstrap-sample-distribution-of-p.jpg?400|}}
  
 ただし、ブートスラップ反復回数 B の設定には要注意。 ただし、ブートスラップ反復回数 B の設定には要注意。
 +
 +=== ベータ分布の図 ===
 +<code>
 +# Beta(1,1)
 +plot(c(1:99)/100,dbeta(c(1:99)/100,1,1), xlab="p", ylab="prior probability", type="l", lty=1, xlim=c(0,1), ylim=c(0,4.5))
 +# Beta(3,2)
 +lines(c(1:99)/100,dbeta(c(1:99)/100,3,2), xlab="p", ylab="prior probability", type="l", lty=2)
 +# Beta(2,3)
 +lines(c(1:99)/100,dbeta(c(1:99)/100,2,3), xlab="p", ylab="prior probability", type="l", lty=3)
 +# Beta(10,5)
 +lines(c(1:99)/100,dbeta(c(1:99)/100,10,5), xlab="p", ylab="prior probability", type="l", lty=4)
 +# Beta(5,10)
 +lines(c(1:99)/100,dbeta(c(1:99)/100,5,10), xlab="p", ylab="prior probability", type="l", lty=5)
 +# Beta(15,5)
 +lines(c(1:99)/100,dbeta(c(1:99)/100,15,5), xlab="p", ylab="prior probability", type="l", lty=6)
 +# Beta(5,15)
 +lines(c(1:99)/100,dbeta(c(1:99)/100,5,15), xlab="p", ylab="prior probability", type="l", lty=7)
 +
 +</code>