Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

指数分布とポアソン分布のいけない関係

66,428 views

Published on

指数分布とポアソン分布について簡単に説明した後、それらは同じ事象を別々の視点から見たものであることを説明。さらにR言語を用いて実際にそれを確認。第20回R勉強会@東京(#TokyoR)(http://atnd.org/events/24629)でのトーク資料。

指数分布とポアソン分布のいけない関係

  1. 1. ポアソン分布と指数分布 のいけない関係 @teramonagi第20回R勉強会@東京(#TokyoR) 2012/01/28
  2. 2. Agenda• 自己紹介• ポアソン分布ってなに?• 指数分布ってなに?• 2つの分布のいけない関係 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 2
  3. 3. 自己紹介
  4. 4. こういう者です◆職業:クオンツ(計量的に金融する)◆使う道具 データ・数理解析/プログラム C++/C#/R/Python/Excel/VBA…..◆最近の興味: 関数型言語・統計(科)学・確率論 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 4
  5. 5. ポアソン分布ってなに?
  6. 6. ポアソン分布ってなに?単位時間当りの生起確率• 単位時間:1時間・1秒間・(1m)等• 生起確率:事象が起こる確率 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 6
  7. 7. ポアソン分布ってなに?• 単位時間当り平均λ回起こる事象が 単位時間中にx回起こる確率は・・・  x px   e  x! x  0,1,2,... ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 7
  8. 8. ポアソン分布の例 ~1年間での1日あたりの交通事故死亡者数~ x 度数 0 119 1 152 2 68頻度 3 20 4 4 5 1 6 1 6以上 0 計 365 死亡者数 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 8
  9. 9. ポアソン分布の特徴• 平均:λ、分散: λ• ただ1つλというパラメーターだけで特徴づけられる ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 9
  10. 10. ポアソン分布を計算してみる• 1時間に平均5人が訪れるWebサイ トがある。1時間に3人訪問者があ る確率を求める• λ=5、x=3を公式に代入> (5^3) / (3 * 2) * exp(-5)[1] 0.1403739(約14%!) ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 10
  11. 11. 稀な現象としてのポアソン分布• 高校で習った二項分布を思い出す• 表が出る確率がpのコインをN回投 げてx回表が出る確率は? px  N Cx p 1  p  x N x ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 11
  12. 12. 稀な現象としてのポアソン分布px  N Cx p 1  p  x N x ただし以下のようにp, λの積を固定N  , p  0   Np  x px   e  x! ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 12
  13. 13. ちなみにRだと(d,r,p,q)pois関数 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 13
  14. 14. 指数分布ってなに?
  15. 15. 指数分布ってなに? 事象の生起間隔の確率• 生起間隔:ある事象が起こって次に また発生するまでの間隔 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 15
  16. 16. 指数分布ってなに?• 単位時間当り平均λ回起こる事象を 考える。その事象の発生間隔がt単 位時間である確率(密度)は・・・ pt   e  t t  0, 実数 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 16
  17. 17. 指数分布の例 ~30歳のおっさんの平均余命の分布~確率(密度) 余命(年) ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 17
  18. 18. 指数分布を計算してみる• 1時間に平均5人が訪れるWebサイト がある。次の訪問者が来るまでの間隔 が12分である確率を求めよ• λ=5、t=12/60を公式に代入> 5 * exp(-5 * 12 / 60)[1] 1.839397(確率“密度“なんで1越えます) ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 18
  19. 19. 指数分布の特徴• 平均:1/λ、分散: 1/λ^2• ただ1つλというパラメーターだけで特 徴づけられる• 次に事象が発生するまでの時間は今 まで待った時間とは関係ない(無記憶 性) ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 19
  20. 20. ちなみにRだと(d,r,p,q)exp関数 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 20
  21. 21. 2つの分布のいけない関係
  22. 22. 2つの分布のいけない関係 ポアソン分布単位時間当りの生起確率 指数分布事象の生起間隔の確率 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 22
  23. 23. 2つの分布のいけない関係 ポアソン分布単位時間当たり平均λ回 指数分布平均1/λ単位時間に一回 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 23
  24. 24. 2つの分布のいけない関係ある“事象”に対して ポアソン分布 単位時間当たり平均λ回回数に注目:ポアソン分布 指数分布時間に注目:指数分布 1/λ単位時間に一回 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 24
  25. 25. 同じ物(事象)を異なる視点から見てるわ けだね!
  26. 26. Rで確かめてみる• Rを使って指数分布を生成• 1単位時間に何回事象が発生する かをカウント• その頻度がポアソン分布に従うかを チェック! ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 26
  27. 27. アルゴリズムの流れー1指数分布に従う乱数生成 2 8 9 3 61  5 7 4 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 27
  28. 28. アルゴリズムの流れー2 作った乱数の合計が単位時間に何個入るかカウント1(単位時間) 1 +  2 +  3 ≧1 28 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR)
  29. 29. アルゴリズムの流れー2 作った乱数の合計がこの場合3番目の指数分布 単位時間に何個入るかカウントの値を足しちゃうと合計が1 1(単位時間)を越えるので、2とカウント  1 +  2 +  3 ≧1 29 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR)
  30. 30. アルゴリズムの流れー2’ 作った乱数の合計が単位時間に何個入るかカウント1(単位時間) 1 ≧1 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 30
  31. 31. アルゴリズムの流れー2’ 作った乱数の合計がこの場合1番目の指数分布 単位時間に何個入るかカウントの値が1を越えるので、0と 1(単位時間)カウント 1 ≧1 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 31
  32. 32. アルゴリズムの流れー31と2を繰り返して出てきたカウント値の統計量を計算 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 32
  33. 33. 結果のチェック(分布比較)頻度(確率) 訪問者数 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 33
  34. 34. 結果のチェック(分布比較)頻度(確率) 指数分布からポアソン分布 を作成することができた! 訪問者数 ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 34
  35. 35. まとめ• ポアソン/指数分布について説明• ある“事象”に対して –“回数“に注目:ポアソン分布 –“時間”に注目:指数分布• Rでシミュレーションしてみた ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 35
  36. 36. Rのコード#1単位時間内に到着する訪問者数を数えるシミュレーションVisitorCounter <- function(lambda){ counter <- 0 time.arrival <- rexp(1, rate = lambda) while(time.arrival < 1) { counter <- counter + 1 #次の訪問者の到着時間を計算 time.arrival <- time.arrival + rexp(1, rate = lambda) } counter} ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 36
  37. 37. Rのコード#1単位時間あたりの訪問者数の平均値lambda <- 5#シミュレーション回数N <- 10^4#シミュレーション実施x <- sapply(1:N, function(i){VisitorCounter(lambda)})#表示barplot(rbind(table(x) / N, dpois(0:max(x), lambda)), col = c("violetred1", "slateblue4"), legend.text = c("Simulation", "Theoritical"), args.legend = list(x = "topright"), beside = TRUE ) ポアソン分布と指数分布のいけない関係@第20回R勉強会@東京(#TokyoR) 37

×