Home
Explore
Submit Search
Upload
Login
Signup
Advertisement
Check these out next
マクロ経済学I 「第8章 総需要・総供給分析(AD-AS分析)」
Wataru Shito
経済数学II 「第9章 最適化(Optimization)」
Wataru Shito
マクロ経済学I 「第10章 総需要 II.IS-LM分析とAD曲線」
Wataru Shito
第9回 大規模データを用いたデータフレーム操作実習(3)
Wataru Shito
第8回 大規模データを用いたデータフレーム操作実習(2)
Wataru Shito
経済数学II 「第12章 制約つき最適化」
Wataru Shito
マクロ経済学I 「第9章 総需要 I」
Wataru Shito
経済数学II 「第11章 選択変数が2個以上の場合の最適化」
Wataru Shito
1
of
25
Top clipped slide
2019年 演習II.第2章 例題: スペースシャトル「チャレンジャー号」の悲劇
Jul. 31, 2019
•
0 likes
0 likes
×
Be the first to like this
Show More
•
509 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Download Now
Download to read offline
Report
Data & Analytics
西南学院大学経済学部 演習2 講義スライド 講義ページ: http://courses.wshito.com/semi2/2019-bayes-AI テキスト「Pythonで体験するベイズ推論」
Wataru Shito
Follow
Advertisement
Advertisement
Advertisement
Recommended
統計的推定の基礎 2 -- 分散の推定
Wataru Shito
360 views
•
3 slides
統計的推定の基礎 1 -- 期待値の推定
Wataru Shito
179 views
•
7 slides
第4章 確率的学習---単純ベイズを使った分類
Wataru Shito
470 views
•
39 slides
演習II.第1章 ベイズ推論の考え方 Part 3.講義ノート
Wataru Shito
93 views
•
5 slides
演習II.第1章 ベイズ推論の考え方 Part 3.スライド
Wataru Shito
82 views
•
25 slides
演習II.第1章 ベイズ推論の考え方 Part 2.講義ノート
Wataru Shito
107 views
•
10 slides
More Related Content
More from Wataru Shito
(20)
マクロ経済学I 「第8章 総需要・総供給分析(AD-AS分析)」
Wataru Shito
•
388 views
経済数学II 「第9章 最適化(Optimization)」
Wataru Shito
•
231 views
マクロ経済学I 「第10章 総需要 II.IS-LM分析とAD曲線」
Wataru Shito
•
433 views
第9回 大規模データを用いたデータフレーム操作実習(3)
Wataru Shito
•
290 views
第8回 大規模データを用いたデータフレーム操作実習(2)
Wataru Shito
•
292 views
経済数学II 「第12章 制約つき最適化」
Wataru Shito
•
374 views
マクロ経済学I 「第9章 総需要 I」
Wataru Shito
•
579 views
経済数学II 「第11章 選択変数が2個以上の場合の最適化」
Wataru Shito
•
268 views
マクロ経済学I 「第6章 開放経済の長期分析」
Wataru Shito
•
776 views
経済数学II 「第8章 一般関数型モデルの比較静学」
Wataru Shito
•
289 views
マクロ経済学I 「第4,5章 貨幣とインフレーション」
Wataru Shito
•
617 views
マクロ経済学I 「第3章 長期閉鎖経済モデル」
Wataru Shito
•
772 views
経済数学II 「第7章 微分法とその比較静学への応用」
Wataru Shito
•
303 views
経済数学II 「第6章 比較静学と導関数の概念」
Wataru Shito
•
233 views
マクロ経済学I 「マクロ経済分析の基礎知識」
Wataru Shito
•
744 views
経済数学II 「第5章 線型モデルと行列代数 II」
Wataru Shito
•
306 views
マクロ経済学I 「第2章 マクロ経済学のデータ」
Wataru Shito
•
1.4K views
経済数学II 「第3章 経済学における均衡分析」
Wataru Shito
•
488 views
経済数学II 「第4章 線型モデルと行列代数」
Wataru Shito
•
405 views
第7回 大規模データを用いたデータフレーム操作実習(1)
Wataru Shito
•
390 views
Recently uploaded
(20)
21威斯康星麦迪逊分校.pdf
fdhrtf
•
3 views
25戴尔豪斯大学.pdf
fdhrtf
•
2 views
103卡内基梅隆大学.pdf
fdhrtf
•
2 views
小学校向けAI導入企画0606.pdf
KunihiroSugiyama1
•
108 views
173-天普大学.pdf
LorettaPrice2
•
2 views
☀️《马尔堡大学毕业证仿真》
hjhgg1
•
2 views
11墨尔本.pdf
dsadasd17
•
2 views
41布兰登大学.pdf
fdhrtf
•
2 views
【추천인: AAKK】 Top7588`c0m 홀덤게임
yqwggcy3463
•
2 views
九大_DS実践_画像処理基礎
RyomaBise1
•
5 views
207-南达科他大学.pdf
LorettaPrice2
•
3 views
22.诺丁汉大学.pdf
fdhrtf
•
2 views
14西伊利诺伊大学.pdf
LorettaPrice2
•
2 views
143-南卫理公会大学.pdf
LorettaPrice2
•
2 views
5FAEB2201
Viya18
•
0 views
52魁北克大学.pdf
fdhrtf
•
2 views
九大_DS実践_距離とクラスタリング
RyomaBise1
•
3 views
74拉萨尔学院.pdf
fdhrtf
•
2 views
28西澳.pdf
fdhrtf
•
2 views
170-太平洋大学.pdf
fdhrtf
•
3 views
Advertisement
2019年 演習II.第2章 例題: スペースシャトル「チャレンジャー号」の悲劇
第 2 章
例題: スペースシャトル「チャレンジャー号」 の悲劇 市東 亘 西南学院大学 経済学部 July 31, 2019 講義ノート: https://courses.wshito.com/semi2/2019-bayes-AI 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 1 / 25
概観 概観 テキスト「Python で体験するベイズ推論」pp.63–74 例題: スペースシャトル「チャレンジャー号」の悲劇 ▶
分析の背後にある統計モデルを理解する. ▶ PyMC3 による実装方法を学ぶ. 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 2 / 25
分析の目的 分析の目的 目的 ▶ 外気温が与えられた時の O
リングの破損確率を推定したい. ▶ 標本データは 23 回のフライトデータから得られた外気温(華氏)と O リング不良の有無.https://git.io/vXknD 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 3 / 25
分析の目的 説明したい事象と確率分布 ▶ カンニングのケース カンニング総数 ⇒
2 項分布 ▶ チャレンジャーのケース 個別の O リングが破損するか否か ⇒ ベルヌーイ分布 ▶ ベルヌーイ分布 確率 p で 1 を,確率 1 − p で 0 をとる離散確率分布. f(x) = px(1 − p)1−x for x = 1 or 0 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 4 / 25
分析の目的 統計モデルの構築 与えられるデータ 温度 O リング破損 統計モデルの構築 この確率は外気温に依存すると考えられる. ロジスティック関数 ロジスティック関数の形状は分からない のでαとβも推定すべきパラメータとなる ti
Di Di ∼ Bernoulli(p) Di ∼ Bernoulli(p(ti)) p(ti) = 1 1 + e−(βti+α) 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 5 / 25
分析の目的 統計モデルの構築 与えられるデータ 温度 O リング破損 統計モデルの構築 この確率は外気温に依存すると考えられる. ロジスティック関数 ロジスティック関数の形状は分からない のでαとβも推定すべきパラメータとなる ti
Di Di ∼ Bernoulli(p) Di ∼ Bernoulli(p(ti)) f(p|Di) ∝ f(Di|p)f(p) f(α, β|Di, ti) ∝f(Di, ti|α, β)f(α, β) =f(Di, ti|α, β)f(α)f(β) αとβは独立 p(ti) = 1 1 + e−(βti+α) 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 6 / 25
分析の目的 なぜロジスティック関数なのか? ▶ Di ∼
Bernoulli(p(ti)) の p は 0 から 1 の値をとる確率. ▶ 温度 ti を 0 から 1 の値にマッピングする関数が必要. ⇒ シグモイド曲線 6 4 2 0 2 4 6 0.0 0.2 0.4 0.6 0.8 1.0 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 7 / 25
分析の目的 ロジスティック曲線 温度が高い方が破損確率が高いケース p = 1 1 +
e−(βti+α) β = 1, α = 0 6 4 2 0 2 4 6 0.0 0.2 0.4 0.6 0.8 1.0 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 8 / 25
分析の目的 ロジスティック曲線 温度が低い方が破損確率が高いケース p = 1 1 +
e−(βti+α) β = −1, α = 0 6 4 2 0 2 4 6 0.0 0.2 0.4 0.6 0.8 1.0 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 9 / 25
分析の目的 ロジスティック曲線 水平方向のシフト p = 1 1 +
e−(βti+α) β = −1, α = 50 40.0 42.5 45.0 47.5 50.0 52.5 55.0 57.5 60.0 0.0 0.2 0.4 0.6 0.8 1.0 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 10 / 25
分析の目的 ロジスティック曲線 変曲点の移動 p = 1 1 +
e−(βx+α) β = −0.93, α = 50 40.0 42.5 45.0 47.5 50.0 52.5 55.0 57.5 60.0 0.0 0.2 0.4 0.6 0.8 1.0 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 11 / 25
分析の目的 統計モデル再掲 与えられるデータ 温度 O リング破損 統計モデルの構築 この確率は外気温に依存すると考えられる. ロジスティック関数 ロジスティック関数の形状は分からない のでαとβも推定すべきパラメータとなる ti
Di Di ∼ Bernoulli(p) Di ∼ Bernoulli(p(ti)) f(p|Di) ∝ f(Di|p)f(p) f(α, β|Di, ti) ∝f(Di, ti|α, β)f(α, β) =f(Di, ti|α, β)f(α)f(β) αとβは独立 p(ti) = 1 1 + e−(βti+α) 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 12 / 25
分析の目的 統計モデル f(α, β|Di, ti)
∝ f(Di, ti|α, β)f(α)f(β) ▶ f(Di, ti|α, β): Di ∼ Bernoulli(p(ti)) where p(ti) = 1/(1 + e−(βti+α)) ▶ f(α): α ∼ N(0, 1000), µ = 0, σ2 = 1000 ▶ f(β): β ∼ N(0, 1000), µ = 0, σ2 = 1000 ▶ Precision: τ = 1/σ2 = 1/1000 = 0.001 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 13 / 25
分析の目的 PyMC3 による実装 コード 1
データの読み込み 1 import numpy as np 2 3 # データは, Date,Temperature,Damage Incident のフォーマット.欠損値は NA が記されている 4 data = np.genfromtxt("challenger_data.csv", skip_header=1, 5 usecols=[1,2], missing_values="NA", delimiter=",") 6 data = data[~np.isnan(data[:, 1])] 7 data.shape Out[1]: (23, 2) 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 14 / 25
分析の目的 PyMC3 による実装 コード 2
モデル: チャレンジャー号の悲劇 1 import numpy as np 2 import pymc3 as pm 3 4 temperature = data[:, 0] # 外気温 5 D = data[:, 1] # 破損の有無 6 7 with pm.Model() as model: 8 beta = pm.Normal("beta", mu=0, tau=0.001, testval=0) # βの事前分布 9 alpha = pm.Normal("alpha", mu=0, tau=0.001, testval=0) # αの事前分布 10 # ロジスティック関数 11 p = pm.Deterministic("p", 1.0/(1. + np.exp(-beta*temperature - alpha))) 12 D = pm.Bernoulli("D", p=p, observed=D) # 尤度 13 14 start = pm.find_MAP() 15 trace = pm.sample(60000, start=start) # 初期値を指定して MCMC を開始 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 15 / 25
分析の目的 生成サンプルの視覚化 pm.traceplot(trace["alpha"]) pm.traceplot(trace["beta"]) 市東 亘 (西南学院大学
経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 16 / 25
分析の目的 破損発生確率の視覚化 市東 亘 (西南学院大学
経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 17 / 25
分析の目的 破損発生確率の視覚化 コード 3 破損発生確率の視覚化コード 1
temperature = data[:, 0] 2 D = data[:, 1] 3 4 # t は 50x1.p は 100000 x 50 5 t = np.linspace(temperature.min()-5, temperature.max()+5, 50)[:, None] 6 p = logistic(t.T, beta=trace["beta"][:, None], alpha=trace["alpha"][:, None]) 7 8 mean_p = p.mean(axis=0) 9 10 fig, ax = plt.subplots(figsize=(12.5, 4)) 11 ax.grid(True) 12 ax.plot(t, mean_p, lw=3, label="破損の平均事後確率") 13 ax.plot(t, p[100, :], ls="--", label="事後分布からのサンプル") 14 ax.plot(t, p[180, :], ls="--", label="事後分布からのサンプル") 15 ax.scatter(x=temperature, y=D, s=50, color="k", alpha=0.5) 16 17 ax.legend(loc="lower left") 18 ax.set_title("破損発生確率の事後期待値と 2 つのサンプリング値", fontsize=18) 19 ax.set_ylabel("確率", fontsize=16) 20 ax.set_xlabel("外気温", fontsize=16) 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 18 / 25
分析の目的 破損発生確率の視覚化コード解説 ▶ 5 行目:
グラフを 50 個の点を接続して描くために,外気温の最小値か ら最大値まで 50 個の均等な値を変数 t に用意. ▶ 6 行目: MCMC で生成した 100000 個の α と β のサンプルデータ毎 に,50 個の t の値に対応した確率 p の値を計算する.p は 100000 × 50 の配列. ▶ 7 行目: 100000 個の確率データの平均を計算. ▶ 13–14 行目: 100000 個のサンプルデータからインデックス番号 100 と 180 の p の値をそれぞれ点線でプロット. 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 19 / 25
分析の目的 破損発生確率の 95%信用区間 市東 亘
(西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 20 / 25
分析の目的 破損発生確率の 95%信用区間 コード 4
破損発生確率の 95%信用区間コード 1 from scipy.stats.mstats import mquantiles 2 3 qs = mquantiles(p, [0.025, 0.975], axis=0) 4 fig, ax = plt.subplots(figsize=(12.5, 4)) 5 ax.grid(True) 6 7 ax.fill_between(t[:, 0], *qs, alpha=0.7, color="#7A68A6") # 第1引数は 1 次元でなけれ 8 ax.plot(t, qs[0], label="95%信用区間", color="#7A68A6", alpha=0.7) # 信用区間下側境界 9 ax.plot(t, qs[1], color="#7A68A6", alpha=0.7) # 信用区間上側境界線 10 ax.plot(t, mean_p, lw=1, ls="--", color="k", label="破損の平均事後確率") 11 ax.scatter(x=temperature, y=D, s=50, color="k", alpha=0.5) 12 13 ax.legend(loc="lower left") 14 ax.set_xlim(t.min(), t.max()) 15 ax.set_title("破損発生確率の事後期待値と 95%信用区間", fontsize=18) 16 ax.set_ylabel("確率", fontsize=16) 17 ax.set_xlabel("外気温", fontsize=16) 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 21 / 25
分析の目的 破損発生確率の 95%信用区間コード解説 ▶ mquantiles()
は指定された割合にデータを分割し,その境界になる データの値を返す関数. ▶ 3 行目: 引数 p は 100000 × 50 の配列.axis=0 はデータ p を列方向 に見ていく.したがって,50 の列ごとに 100000 個のサンプリング データから 2.5%と 97.5%に入るデータの境界値(2 × 50 の配列)を 返す. ▶ 7 行目: fill_between() の引数のアスタリスクは配列のアンパッキン グを表す.つまり 2 × 50 の配列が,50 個の要素を持つ 2 つの配列と して渡される. 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 22 / 25
分析の目的 事故当時の外気温における破損確率 チャレンジャー号が打ち上げ失敗した日の気温華氏 31 度で,O
リングが破 損する確率を推定してみる. 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 23 / 25
分析の目的 破損発生確率の 95%信用区間 コード 5
破損発生確率の 95%信用区間コード 1 fig, ax = plt.subplots(figsize=(12.5, 2.5)) 2 ax.grid(True) 3 4 # 華氏 31 度の時の事後確率サンプルデータを計算 5 prob_31 = logistic(31, beta=trace["beta"][:, None], 6 alpha=trace["alpha"][:, None]) 7 # 1000 分割のヒストグラム.確率 0.001 ごとに頻度集計 8 ax.hist(prob_31, bins=1000, density=True, histtype="stepfilled") 9 ax.set_xlim([0.990, 1]) 10 ax.set_ylabel("密度") 11 ax.set_xlabel("O リングで破損が起こる確率") 12 ax.set_title("外気温が華氏 31 度のときの破損が発生確率の事後分布") 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 24 / 25
分析の目的 事故当時の外気温における破損確率コード解説 ▶ 5 行目:
100000 個の α と β のサンプルデータを利用して,事故があっ た日の気温華氏 31 度における O リング破損の事後確率のサンプル データを生成. ▶ 8 行目: この 100000 個の事後確率サンプルデータを 1000 個の区間に 分割し,その頻度からヒストグラムを作成.確率 0 から 1 まで 1000 分 割すると 0.001 毎にグラフが描かれる. ▶ 9 行目: ヒストグラムは 0.990 から 1 までのデータのみ描画. 市東 亘 (西南学院大学 経済学部) 第 2 章 例題: スペースシャトル「チャレンジャー号」の悲劇 July 31, 2019 25 / 25
Advertisement