class: center, middle, inverse, title-slide .title[ # STATS101 ] .subtitle[ ## Statistical Inference in Modern Way: Nonparametric and Parametric Bootstrapping ] .author[ ### Sanghoon Park ] .date[ ### University of South Carolina ] --- ## Nonparametric bootstrap ### Our sample + 우리의 표본은 모집단으로부터 무작위 추출된 것. + 따라서 만약 표본으로부터 무작위 *복원(replacement)* 추출을 한다면, 그 결과는 모집단으로부터 무작위 추출한 또 다른 표본이라고 할 수 있을 것. + 즉, 표본으로부터 무작위 복원추출을 한다는 것은 모집단으로부터 표본을 추출하는 행위를 것을 모방하는 것. --- ## Nonparametric bootstrap ### What we are gaining + 비모수 부트스트래핑을 통해서 + 표집분포를 얻을 수 있으며, + 표집분포에 대한 함수도 어떤 것이든 얻을 수 있다. + `\(Var(\hat\beta_1 + \hat\beta_3 z) = Var(\hat \beta_1) + z^2Var(\hat \beta_3) + 2z Cov(\hat \beta_1, \hat \beta_3)\)`라는 것을 떠올려보자. + `\(g = 1, \dots, G\)`번 표본재추출을 한다고 할 때, `\(\hat\beta^{(1)}_1 + \hat\beta^{(1)}_3 z\)`부터 `\(\hat\beta^{(G)}_1 + \hat\beta^{(G)}_3z\)`까지 총 G개의 결과값을 저장하고 그 결과를 요약해서 보여줄 수 있게 된다. + 평균, 표준편차, 히스토그램, 신뢰구간 등 --- ## Nonparametric bootstrap <img src="fig/w10_/Slide1.PNG" width="75%" style="display: block; margin: auto;" /> --- ## Nonparametric bootstrap <img src="fig/w10_/Slide2.PNG" width="75%" style="display: block; margin: auto;" /> --- ## Nonparametric bootstrap <img src="fig/w10_/Slide3.PNG" width="75%" style="display: block; margin: auto;" /> --- ## Nonparametric bootstrap <img src="fig/w10_/Slide4.PNG" width="75%" style="display: block; margin: auto;" /> --- ## Nonparametric bootstrap <img src="fig/w10_/Slide5.PNG" width="75%" style="display: block; margin: auto;" /> --- ## Nonparametric bootstrap <img src="fig/w10_/Slide6.PNG" width="75%" style="display: block; margin: auto;" /> --- ## Nonparametric bootstrap <img src="fig/w10_/Slide7.PNG" width="75%" style="display: block; margin: auto;" /> --- ## Nonparametric bootstrap <img src="fig/w10_/Slide8.PNG" width="75%" style="display: block; margin: auto;" /> --- ## Nonparametric bootstrap <img src="fig/w10_/Slide9.PNG" width="75%" style="display: block; margin: auto;" /> --- ## Parametric bootstrap ### Making most of statistical analysis + 표집분포: `\(\hat \beta\)`에 대한 모든 가능한 추정치는 `\(N\bigg(\beta, \hat\sigma^2(X'X)^{-1}\bigg)\)` 분포를 따른다. + 간단히 말하면, 표본을 통한 계수값은 표집과정을 통해 나타날 수 있는 불확실성-표준오차를 표준편차로 하고 모수로 기대되는 `\(\beta\)`를 평균으로 하는 정규분포를 따른다. + 단, 우리는 `\(\beta\)`에 대해서는 모른다. + King, Tomz, Wittenberg의 질문: 왜 `\(\beta\)`에 대한 최선의 추정치인 `\(\hat \beta\)`를 사용하지 않는가? + 따라서 시뮬레이션을 통해 얻은 결과, `\(\tilde \beta \sim N \bigg(\hat \beta, \hat \sigma ^2(X'X)^{-1}\bigg)\)`. + 따라서 우리는 부트스트래핑 시뮬레이션을 통해 임의로 추출한 결과를 가지고 `\(\tilde \beta\)`에 대한 함수를 계산할 수 있다. --- ## Parametric bootstrap ### Making most of statistical analysis #### Estimate of mean plus the uncertainty 다음의 모델을 추정해보자. $$ \text{범죄율} = \beta_0 + \beta_1\text{임금} + \beta_2\text{경찰력} + \beta_3(\text{임금}\cdot\text{경찰력}). $$ 우리는 저임금/고임금 수준에서 관측된 경찰력 수준일 때의 평균 범죄율이 어떨지에 관심이 있다. + 고임금 `\((\bar{\text{LW}})\)` 과 저임금 `\((\underline{\text{LW}})\)` 이 있다고 하자. + 그리고 경찰력(PE)는 모든 경찰력 수준에 대한 관측치의 벡터라고 하자. --- ## Parametric bootstrap ### Making most of statistical analysis #### Estimate of mean plus the uncertainty + `\(g = 1, \dots, G\)`라고 할 때, 다음과 같이 부트스트래핑을 해보자. 1. `\(\tilde{\beta}^{(g)} \sim N\bigg(\hat \beta, \hat{\sigma}^2(X'X)^{-1}\bigg)\)`의 분포에서 부트스트랩 표본을 추출한다. 2. 표본 `\(PE\)`로부터 `\(PE^{(g)}\)`를 무작위 추출한다. 3. 다음을 계산해보자: `\(\mu^{(g)}_{\bar{LW}} = \tilde{\beta}^{(g)}_1 \bar{LW} + \tilde{\beta}^{(g)}_2 PE^{(g)} + \tilde{\beta}^{(g)}_3 (\bar{LW}\cdot PE^{(g)})\)` 4. 다음을 계산해보자: `\(\mu^{(g)}_{\underline{LW}} = \tilde{\beta}^{(g)}_1 \underline{LW} + \tilde{\beta}^{(g)}_2 PE^{(g)} + \tilde{\beta}^{(g)}_3 (\underline{LW}\cdot PE^{(g)})\)` 5. `\(\mu^{(g)}_{\bar{LW}}\)`와 `\(\mu^{(g)}_{\underline{LW}}\)`을 저장한다. --- ## Parametric bootstrap .panelset[ .panel[.panel-name[R-code] ```r # libraries library(tidyverse) library(ezpickr) data_link <- "https://stats101.netlify.app/assignments/STATS101Dataset.csv" data <- ezpickr::pick(data_link) model1 <- lm(v2x_polyarchy ~ v2elembaut + v2elembcap + log(e_migdppc) + demregion, data = data) ``` ] .panel[.panel-name[Results] ``` ## ## ============================ ## Model 1 ## ---------------------------- ## (Intercept) -0.02 * ## (0.01) ## v2elembaut 0.10 *** ## (0.00) ## v2elembcap 0.01 *** ## (0.00) ## log(e_migdppc) 0.03 *** ## (0.00) ## demregion 0.38 *** ## (0.01) ## ---------------------------- ## R^2 0.82 ## Adj. R^2 0.82 ## Num. obs. 13668 ## ============================ ## *** p < 0.001; ** p < 0.01; * p < 0.05 ``` ] ] --- ## Parametric bootstrap 만약 이 표본이 Gaus-Markov 가정을 모두 충족하여, OLS 결과가 `BLUE`라고 한다면? + 우리는 이 OLS 결과가 모수(parameters)에 매우 근접할 것이라고 기대할 수 있고 + 동시에 이 OLS 추정량을 중심으로 표본의 불확실성(표준오차)에 따른 정규분포를 이룰 것이라고 예상할 수 있다. + 그렇다면? -- OLS 계수값 각각을 평균으로 하고 그 계수값에 대한 표준오차를 표준편차로 하는 일종의 "계수값들이 모수에서 뽑혀져 나왔을 정규분포"를 시뮬레이션으로 그리는 것이 가능하다. --- ## Parametric bootstrap .panelset[ .panel[.panel-name[R-code] ```r # libraries library(mvtnorm) library(plotly) library(MASS) # 먼저 공분산 행렬을 정의해준다. sigma <- matrix(c(4,2,2,3), ncol = 2) # 이 공분산 행렬을 바탕으로 주어진 평균에 대해 n개의 시뮬레이션을 실시한다. means <- c(0, 0) n <- 1000 # 동일한 결과를 얻기 위해서 기초값(seed)을 설정해준다. set.seed(42) x <- rmvnorm(n = n, mean = means, sigma = sigma) # 이 결과를 데이터프레임으로 저장해준다. d <- data.frame(x) ``` ] .panel[.panel-name[Results] ```r sigma ``` ``` ## [,1] [,2] ## [1,] 4 2 ## [2,] 2 3 ``` ```r head(d) ``` ``` ## X1 X2 ## 1 2.3139150 -0.15442375 ## 2 1.0527522 1.24094662 ## 3 0.7162789 0.05340542 ## 4 2.8479495 0.69465309 ## 5 3.8388378 1.03195246 ## 6 3.7900042 4.47972608 ``` ] .panel[.panel-name[Univariate plots] <img src="fig/w10_fig1.png" width="70%" style="display: block; margin: auto;" /> ] .panel[.panel-name[Multivariate plots] .pull-left[ <img src="D3S9_files/figure-html/unnamed-chunk-15-1.png" style="display: block; margin: auto;" /> ] .pull-right[ <img src="fig/w10_fig2.png" width="50%" style="display: block; margin: auto;" /> ] ] .panel[.panel-name[Implications] 모수적 부트스트랩을 이용하여 `OLS` 추정결과에 대해 분석적 결과(analytic results)에 비해서 더 풍부한 정보를 가진 수치들을 얻을 수 있다. 또한, 추정량을 통해 다양한 시뮬레이션을 수행하여 여러 가지 가능한 시나리오에 대해 충분한 설명 및 예측을 제공할 수 있다. ] ] --- class: center, middle background-image: url(https://raw.githubusercontent.com/pherephobia/usc_logo/main/UofSC_Primary_RGB_G.png) background-size: 300px background-position: 11% 15% # Thanks! ## Please do not hesitate to ask questions. Contacts for Instructor. | Contact | Sanghoon Park | | :-------------: | :----------------------------: | | <svg viewBox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M440 6.5L24 246.4c-34.4 19.9-31.1 70.8 5.7 85.9L144 379.6V464c0 46.4 59.2 65.5 86.6 28.6l43.8-59.1 111.9 46.2c5.9 2.4 12.1 3.6 18.3 3.6 8.2 0 16.3-2.1 23.6-6.2 12.8-7.2 21.6-20 23.9-34.5l59.4-387.2c6.1-40.1-36.9-68.8-71.5-48.9zM192 464v-64.6l36.6 15.1L192 464zm212.6-28.7l-153.8-63.5L391 169.5c10.7-15.5-9.5-33.5-23.7-21.2L155.8 332.6 48 288 464 48l-59.4 387.3z"></path></svg> | [sp23@email.sc.edu](sp23@email.sc.edu) | | <svg viewBox="0 0 576 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 400H303.2c.9-4.5.8 3.6.8-22.4 0-31.8-30.1-57.6-67.2-57.6-10.8 0-18.7 8-44.8 8-26.9 0-33.4-8-44.8-8-37.1 0-67.2 25.8-67.2 57.6 0 26-.2 17.9.8 22.4H48V144h480v288zm-168-80h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm0-64h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm0-64h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm-168 96c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64z"></path></svg> | [sanghoon-park.com/](https://www.sanghoon-park.com/) | | <svg viewBox="0 0 448 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M128 148v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12zm140 12h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12zm-128 96h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12zm128 0h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12zm-76 84v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm76 12h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12zm180 124v36H0v-36c0-6.6 5.4-12 12-12h19.5V24c0-13.3 10.7-24 24-24h337c13.3 0 24 10.7 24 24v440H436c6.6 0 12 5.4 12 12zM79.5 463H192v-67c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v67h112.5V49L80 48l-.5 415z"></path></svg> | #305 Gambrell |