OLSの検定・区間推定#

OLS推定量の標準誤差#

ある推定量の漸近分布(asymptotic distribution、大標本において推定量が近似的に従う分布)の標準偏差を標準誤差(standard error)という。

重回帰モデル

\[ y = \beta_0 + \beta_1 x_1 + \cdots + \beta_d x_d + \varepsilon \]

において、各\(k=0, 1, \dots, d\)について、回帰係数\(\beta_k\)のOLS推定量\(\hat{\beta}_k\)は、中心極限定理により十分大きな\(n\)のもとで

\[ Z = \frac { \sqrt{n} ( \hat{\beta}_k - \beta_k ) } { s } \]

が近似的に標準正規分布\(N(0, 1)\)に従う。

ここで\(s\)は標本標準偏差に相当するもの。

上記の式は書き換えると

\[ \hat{\beta}_k = \beta_k + \frac{ s }{ \sqrt{n} } \cdot Z \]

となる。ここで

\[ \sigma = \frac{ s }{ \sqrt{n} } \]

とおけば、\(\hat{\beta}_k\)は平均\(\beta_k\)、分散\(\sigma^2\)の正規分布\(N(\beta_k, \sigma^2)\)に従うということになる。

別の定義では、残差を\(\hat{u}\)とすると\(\hat{\beta}_1\)の分散は

\[ \hat{\sigma}^2_{\hat{\beta}_1} = \frac{1}{n} \frac{ \frac{1}{n-2} \sum^n_{i=1} (x_i - \bar{x})^2 \hat{u}_i^2 }{ [ \frac{1}{n} \sum^n_{i=1} (x_i - \bar{x})^2 ]^2 } \]

で、\(SE(\hat{\beta}_1) = \sqrt{ \hat{\sigma}^2_{\hat{\beta}_1} }\)となる

誤差項\(\varepsilon_i\)の分散\(\sigma^2\)が既知かつ均一分散のとき

\[ Var[\hat{\beta}] = \frac{\sigma^2}{\sum(X_i - \bar{X})^2} \]

分散が既知かつ不均一分散のとき

\[ Var[\hat{\beta}]_{het} = \frac{\sum(X_i - \bar{X})^2 \sigma^2_i}{ \big[ \sum(X_i - \bar{X})^2 \big] ^ 2} \]

(『統計的因果推論の理論と実装』p.118)

b = 1
np.exp(b) - 1
1.718281828459045
model.summary()
OLS Regression Results
Dep. Variable: y R-squared: 0.675
Model: OLS Adj. R-squared: 0.674
Method: Least Squares F-statistic: 619.8
Date: Wed, 08 May 2024 Prob (F-statistic): 9.04e-75
Time: 23:29:35 Log-Likelihood: -422.93
No. Observations: 300 AIC: 849.9
Df Residuals: 298 BIC: 857.3
Df Model: 1
Covariance Type: nonrobust
coef std err t P>|t| [0.025 0.975]
Intercept 10.0882 0.117 86.551 0.000 9.859 10.318
x 4.9289 0.198 24.896 0.000 4.539 5.318
Omnibus: 1.176 Durbin-Watson: 2.115
Prob(Omnibus): 0.555 Jarque-Bera (JB): 1.153
Skew: -0.033 Prob(JB): 0.562
Kurtosis: 2.703 Cond. No. 4.42


Notes:
[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.
# CI
ci = (
    beta1 - 1.96 * se_beta1,
    beta1 + 1.96 * se_beta1
)
fig, ax = plt.subplots()
x_plot = np.linspace(4, 6, 50)
y_plot = norm.pdf(x=x_plot, loc=beta1, scale=se_beta1)
ax.plot(x_plot, y_plot, alpha=.5)
ax.axvline(ci[0])
ax.axvline(ci[1])
<matplotlib.lines.Line2D at 0x7f6861689ae0>
../../_images/ac03f7c7168b9e7f62d6f466048bc7d0f17d8c207448a1330129d4e32e02efaa.png

Note

データによる例

例えば次のように生成されたデータがあるとする。

\[\begin{split} \begin{align} y &= 10 + 5x + e\\ x &\sim \text{Uniform}(0, 1)\\ e &\sim N(0, 1) \end{align} \end{split}\]

シミュレーションによって(データを生成して推定することを繰り返すことによって)この分布を見てみる

../../_images/f6a88ff779fa78da99debcc07c8dc2be932549851db6b1411c112cbde50d6524.png

OLS推定量の\(t\)検定#

帰無仮説と対立仮説をそれぞれ

\[\begin{split} H_0: \beta_k = 0\\ H_1: \beta_k \neq 0\\ \end{split}\]

とする。\(t\)統計量を

\[ t = \frac{\hat{\beta}_k}{\sigma} = \frac{ \sqrt{n} }{ \sqrt{s} } \hat{\beta}_k \]

と定義すると、これは標準正規分布\(N(0,1)\)に従う。\(|t|>1.96\)となればその確率は5%以下であるため有意水準5%で帰無仮説を棄却できる。

\(t\)検定の\(p\)#

帰無仮説\(H_0: \beta_k = 0\)を棄却するためには有意水準をどこまで引き上げなければいけないかを考える。

\(N(0, 1)\)に従う\(Z\)を用いて、\(P(|Z|>|t|)\)を計算する

OLS推定量の信頼区間#

\(\hat{\beta}_k\)の漸近分布が\(N(\beta_k, \sigma^2_k)\)に従うとする。\(n\)が十分に大きいときは、

\[ Z_k = \frac{\hat{\beta}_k - \beta_k}{\sigma_k} \]

\(N(0, 1)\)に従うものとみなすことができて、

\[ P(|Z_k| \leq 1.96) = P\left( -1.96 \leq \frac{\hat{\beta}_k - \beta_k}{\sigma_k} \leq 1.96 \right) = 0.95 \]

と近似できる。そこから95%信頼区間は

\[ \hat{\beta}_k - 1.96 \sigma_k \leq \beta_k \leq \hat{\beta}_k + 1.96 \sigma_k \]

となる

回帰の標準誤差#

回帰の標準誤差(standard error of the regression: SER)は、回帰誤差\(\varepsilon\)の標準偏差の推定量

\[ SER = s_{\hat{u}}, \ s_{\hat{u}} = \frac{1}{n-d-1} \sum^n_{i=1} \hat{u}^2_i \]

\(\hat{u}\)の平均はゼロであるため、通常の分散の式における平均で引くような項が存在していない)

ここで\(d\)は推定している傾きのパラメータ数(定数項も含めれば\(d+1\))。下方バイアスが生じることがわかっているので自由度のぶんだけ修正する。