説明変数が誤差項と相関するとき、OLS 推定量はバイアスを持つ。説明変数と相関しつつ誤差項とは無相関な「操作変数」を見つけられれば、パラメータを一致推定できる。本章は IV の直観・2条件・2SLS・識別・需給の同時性・各種検定・弱操作変数問題、そして需給推定のシミュレーション付録までを通して扱う。
\(x\) が \(u\) と相関する次のモデルを考える。これは 仮定 OLS.3 に違反するため、 \(\beta_0,\beta_1\) いずれの OLS 推定量もバイアスを持つ。
もし \(x\) とは相関するが \(u\) とは無相関な 操作変数(instrumental variable)\(z\) を見つけられれば、パラメータを一致推定(consistently estimate)できる。\(z\) は \(x\) に作用するが、\(y\) には \(x\) を通じてのみ作用する(\(u\) には直接作用しない)。
内生変数の数と操作変数の数がともに 1つ のときは、きわめて単純な計算が可能である。
推定しようとするモデルを書き下す。\(y = \beta_0 + \beta_1 x + u\)、ただし \(x\) は \(u\) と相関する。
IV は次の2条件を満たさねばならない ― 関連性 \(\mathrm{Cov}(z,x)\neq 0\) と 外生性 \(\mathrm{Cov}(z,u)=0\)。したがって次が成り立つ。
このようにしてパラメータを解くことができる。最後の段階は、母共分散を標本共分散で置き換えることである。
説明変数が複数ある場合、すなわち \(y_i = \beta_1 + \beta_2 x_{2i} + \beta_3 x_{3i} + \dots + \beta_k x_{ki} + u_i\) で、\(x_{ki}\) のみが誤差項と相関するとき、IV 推定量は次の形になる。
詳細は Wooldridge, 2010, p.91 を参照。
大標本では、推定量の標本分布は 正規分布 に従う。推測(仮説検定・信頼区間)は通常どおり、たとえば \(\pm 1.96\,SE\) の形で進める。
いまは不均一分散(heteroskedasticity)の問題がないと仮定しよう。すなわち、
このとき、IV 推定量の分散は次で与えられる。
真のパラメータを推定値で置き換える。
他方、OLS 推定量の分散は次のように与えられる(Wooldridge, IE, ch.2 を参照)。
したがって、IV 推定を行うとき、われわれは次を必要とする。
\(\rho_{x,z}\) ができるだけ高くなるように。すなわち、操作変数が内生変数と強く相関するように。
\(n\,\sigma_x^2\) ができるだけ高くなるように。
操作変数の数 ≥ 内生変数の数 のとき、異なる戦略が必要になる。これが 2段階最小二乗法(two stage least square, 2SLS) である。
構造方程式(structural equation)は次のとおり。
次の第1段階方程式を OLS で推定する。\(\mathbf{Z}\) は操作変数のベクトルである。
予測値 \(\hat{\mathbf{Y}} = (\mathbf{Z}\hat{\boldsymbol{\gamma}}_1 + \mathbf{X}\hat{\boldsymbol{\gamma}}_2)\) を計算し、次の方程式を OLS で推定する。
何が良い IV かは、2条件(関連性・外生性) に照らして判定する。具体例で感覚をつかむ。
ここで投入要素(inputs)は、観察できない要因と相関するため内生的になりやすい。では何が良い IV か。
候補の判定
Olley and Pakes (1996) は、操作変数に頼ることなく、生産関数における同時性バイアス(simultaneity bias)を制御する。彼らのアプローチは潜在的な選択バイアス(生産性の低い農場が産業から退出し、より生産性の高い農場に置き換わる)も制御する。Levinsohn and Petrin (2003) は、投資の代わりに中間投入(intermediate inputs)を用いることで Olley and Pakes (1996) のアプローチを修正することを提案している。
ここで教育(education)は、観察できない要因と相関するため内生的になる。では何が良い IV か。
候補の判定
ここで \(i\) はデータ単位(例:世帯)、\(j\) は製品、\(Q\) は需要、\(P\) は価格、\(\mathbf{x}\) は製品特性、\(\mathbf{z}\) は消費者特性である。
たとえば米の需要では、\(j\) は品種(新潟コシヒカリ、北海道ゆめぴりか)を表し、\(\mathbf{x}\) はタンパク質含有量・生産年などにあたる。\(P_j\) は内生的である ― 広告努力や陳列棚の位置のような、観察できない製品特性と相関するためである。
この場合に考えられる IV
その他の IV の選び方については Angrist and Krueger (2001) および 川崎 (2022) を参照。
需要・供給の連立方程式では、価格 \(P\) は内生的 である。需給は同じ価格・数量で同時に決まるため、片方の方程式だけを OLS で推定すると同時性バイアスが生じる。
IV/2SLS は万能ではない。内生性がないなら OLS のほうが効率的 であり、2SLS は「一致するが、決して不偏ではない」。
内生性が存在しないとき、OLS は 2SLS よりも効率的である。
不均一分散が存在するときは頑健標準誤差(robust standard error)を用いる。あるいは GMM を使うこともできる。GMM は 2SLS より効率的だが、小標本特性が悪い。
操作変数は2条件 \(\mathrm{Cov}(z, \mathbf{Y})\neq 0\) と \(\mathrm{Cov}(z, u)=0\) を満たす必要がある。
2SLS 推定量は、大標本で真のパラメータに近づくことだけを約束する。小標本では、2SLS 推定値が真のパラメータから体系的にずれることがある。極端な場合、2SLS 推定量は OLS 推定量に向かってバイアスする。
内生的な説明変数が1つあり、操作変数の数が観測値の数に等しい(=小標本)と仮定しよう。この場合、第1段階回帰は \(R^2 = 1\) となり、第1段階における内生変数の予測値は実際の値と一致する。すると 2SLS 推定量は OLS 推定量と正確に一致してしまう。
バイアスは次の3つの要因で大きくなる ― 操作変数の数、内生変数と残差の相関、操作変数と内生変数の弱い相関。
内生性がなければ OLS のほうが効率的である。ゆえに、内生性が存在するかどうかを検定する ことが重要になる。内生性の検定には妥当な操作変数が必要である。
Hausman 検定は、OLS 推定値と 2SLS 推定値を比較し、有意な差があるかを調べる。
より単純な検定も利用でき、2段階で進む。
第1段階回帰の残差 \(\hat{\mathbf{v}}\) を構造方程式に含めて OLS 推定する。
単純な \(t\) 検定を用いる。係数 \(\rho\) がゼロと有意に異なれば、説明変数 \(\mathbf{Y}\) は内生的である。
IV は 2条件 を満たさねばならない。どちらかが破れれば、2SLS は大標本でもバイアスを持ち、推測は信頼できない。
良い参考文献:Andrews, et al. (2019)。
均一分散の仮定の下(実務では制約的だが…)、かつ内生変数が1つのとき、操作変数の係数がすべてゼロであることを検定する F 統計量が 10 未満 なら、通常は弱操作変数の問題があることを示す(Stock and Yogo, 2005)。
weakivtest)。この検定は不均一分散・自己相関・クラスタリングに頑健で、操作変数の強さによらず効率的である。ゆえに、第1段階 F の値によらず報告すべきである。
操作変数の数 > 内生変数の数(過剰識別 overidentified)なら、IV の外生性(IV が誤差項と無相関か、すなわち IV を構造方程式から除外できるか)を検定できる。
操作変数の数 = 内生変数の数(ちょうど識別 exactly identified)なら、外生性は検定できない。IV がアウトカムに直接影響しないことを、概念的に説明すべきである。
内生変数がダミー変数だと仮定しよう。\(y = \beta_0 + \beta_1 D + \mathbf{X}\boldsymbol{\beta} + u\)。ここで \(D\) と \(u\) は相関すると仮定する。
2SLS を使うとき、第1段階を(たとえば)プロビット(probit)モデルで推定したくなるかもしれない。しかし、第1段階が正しく特定されていない限り、それは一致性を保証しない(Wooldridge 2010, p.941)。
内生変数がダミー変数であっても、第1段階には線形 OLS を使うべきである。あるいは次を試す。
Wooldridge 2010, p.939。
同様に、内生変数の非線形項があるとき:\(y = \beta_0 + \beta_1 Y + \beta_2 Y^2 + \mathbf{X}\boldsymbol{\beta} + u\)。
\(Y\) について1つだけ第1段階回帰を走らせ、その予測値とその2乗を主方程式に差し込みたくなるかもしれない。だがこれは誤りである! 2つの第1段階回帰を走らせる必要がある ― 1つは \(Y\) について、もう1つは \(Y^2\) について。
実務では、厳密に必要な数より多くの操作変数を持つのがしばしば良い考えである。追加の操作変数は弱 IV 問題を回避でき、過剰識別制約の妥当性の検定(操作変数の妥当性にいくらかの光を当てる)を構成できるためである。
しかし、標本サイズに比して非常に多くの操作変数を持つと、深刻なバイアスを招きうることもよく知られている。とりわけ操作変数が内生的説明変数と弱くしか相関しない場合である。多すぎる(弱い)操作変数を使うと、2SLS 推定量を OLS 推定量に向かってバイアスさせる傾向がある。
操作変数が弱いときは、ちょうど識別の 2SLS(内生変数の数 = IV の数)または LIML(limited information maximum likelihood, 制限情報最尤法) を試す。これらは近似的に不偏な推定量だからである。Angrist and Pischke (2008) ch.4.6.4 を参照。
モデルが内生変数と外生変数の交互作用項を含むとき、交互作用項の係数は標準的な IV を使わずに一致推定できる。Bun and Harrison (2019) は、外生変数の非線形項を IV として使うか、単純に OLS を適用することを提案している。Annan and Schlenker (2015) はこれを天候と保険の交互作用項に適用した。
Anderson-Rubin (AR) 信頼区間を報告する。これらは操作変数の強さによらず効率的であり、第1段階 F の値によらず報告すべきである。
単一の内生的説明変数と均一分散誤差の下では、Moreira (2003) の条件付き尤度比検定(conditional likelihood ratio, CLR test)が良い性質を持つ。最近のレビューは Andrews et al (2019) を参照。
需要・供給関数推定のシミュレーション例(simulated example)。データ生成過程(DGP)を自分で組み、OLS が機能せず 2SLS がうまく機能することを確認する。
/* Supply & demand function */ ***0 Top clear version 10.1 set more off set seed 123456789 gl dir0 = "D:¥data/13 class" cd "$dir0" ***0 DGP // supply S = $bs0 + $bs1*P + es // demand D = $bd0 + $bd1*P + ed // From S = D, P = 1/($bs1 - $bd1)*(($bd0 - $bs0) + (ed - es)) // supply shock es = $bz1*z1 + $bz2*z2 + vs // demand shock ed = $bz3*z3 + vd // vs, vd, ed ~ N(0,1) // z1 and z2 are weather shocks, while z3 is income gl bs0 = 5 gl bs1 = 0.1 gl bd0 = 5 gl bd1 = -0.05 gl bz1 = -1 gl bz2 = 1 gl bz3 = 1 set obs 1000 qui gen vs = rnormal(0, 1) qui gen z1 = rnormal(0, 1) qui gen z2 = rnormal(0, 1) qui gen es = $bz1*z1 + $bz2*z2 + vs qui gen vd = rnormal(0, 1) qui gen z3 = rnormal(0, 1) qui gen ed = $bz3*z3 + vd qui gen P = 1/($bs1 - $bd1)*(($bd0 - $bs0) + (ed - es)) qui gen S = $bs0 + $bs1*P + es qui gen D = $bd0 + $bd1*P + ed qui gen Q = S //Q=S=D su _all, sep(0) scatter P Q ***0 Regression reg Q P //regressing Q on P is meaningless //###### Demand function ###### reg Q P z3 //adding income shock (z3) does not work //iv = z1 = supply shock ivregress 2sls Q (P = z1) //iv = z2 = supply shock ivregress 2sls Q (P = z1 z2) //2SLS works well! //###### Supply function ###### //iv = z3 = demand shock = income ivregress 2sls Q (P = z3), first //2SLS works well! exit
. su _all, sep(0)
Variable | Obs Mean Std. Dev. Min Max
-------------+--------------------------------------------------------
vs | 1000 .007703 1.040135 -3.058428 3.095353
z1 | 1000 .0464206 1.01628 -3.534935 3.094861
z2 | 1000 -.019329 .9872461 -3.250259 2.87227
es | 1000 -.0580466 1.70969 -5.094702 5.716356
vd | 1000 .026278 1.004637 -3.239537 3.528268
z3 | 1000 -.0046541 1.023093 -3.287805 3.226589
ed | 1000 .021624 1.42423 -4.06461 4.18514
P | 1000 .5311372 15.18189 -42.63594 52.64279
S | 1000 4.995067 1.083598 1.448721 8.490314
D | 1000 4.995067 1.083598 1.448721 8.490314
Q | 1000 4.995067 1.083598 1.448721 8.490314
. reg Q P (Q を P に回帰) Source | SS df MS Number of obs = 1000 -------------+------------------------------ F( 1, 998) = 29.34 Model | 33.5018415 1 33.5018415 Prob > F = 0.0000 Residual | 1139.50929 998 1.14179287 R-squared = 0.0286 -------------+------------------------------ Adj R-squared = 0.0276 Total | 1173.01113 999 1.17418531 Root MSE = 1.0685 ------------------------------------------------------------------------------ Q | Coef. Std. Err. t P>|t| [95% Conf. Interval] -------------+---------------------------------------------------------------- P | .0120622 .0022268 5.42 0.000 .0076924 .016432 _cons | 4.98866 .0338111 147.54 0.000 4.922311 5.055009 ------------------------------------------------------------------------------ // regressing Q on P is meaningless(Q を P に回帰しても無意味)
reg Q P)の \(P\) の係数は \(+0.0120\)。需要傾き \(-0.05\) とも供給傾き \(+0.1\) とも一致しない。需給が混ざった無意味な推定である。
. reg Q P z3 (所得ショック z3 を加える) Source | SS df MS Number of obs = 1000 -------------+------------------------------ F( 2, 997) = 315.21 Model | 454.393328 2 227.196664 Prob > F = 0.0000 Residual | 718.617799 997 .720780139 R-squared = 0.3874 -------------+------------------------------ Adj R-squared = 0.3861 Total | 1173.01113 999 1.17418531 Root MSE = .84899 ------------------------------------------------------------------------------ Q | Coef. Std. Err. t P>|t| [95% Conf. Interval] -------------+---------------------------------------------------------------- P | -.0100726 .0019923 -5.06 0.000 -.0139822 -.0061629 z3 | .7144198 .0295645 24.16 0.000 .6564041 .7724355 _cons | 5.003742 .026871 186.21 0.000 4.951012 5.056472 ------------------------------------------------------------------------------ // adding income shock (z3) does not work(所得ショック z3 を加えても機能しない)
scatter P Q による散布図(縦軸 \(P\):\(-40\)〜\(60\)、横軸 \(Q\):\(2\)〜\(8\))が掲載されている。価格 \(P\) の分散が大きく、\(Q\) との関係が一見不明瞭であることを示す。原典 P.66 の散布図を参照のこと。
. ivregress 2sls Q (P = z1) (IV = z1 =供給ショック)
Instrumental variables (2SLS) regression Number of obs = 1000
Wald chi2(1) = 45.42
Prob > chi2 = 0.0000
R-squared = .
Root MSE = 1.3855
------------------------------------------------------------------------------
Q | Coef. Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
P | -.0461453 .0068473 -6.74 0.000 -.0595657 -.0327249
_cons | 5.019577 .0439645 114.17 0.000 4.933408 5.105745
------------------------------------------------------------------------------
Instrumented: P
Instruments: z1
. ivregress 2sls Q (P = z1 z2) (IV = z1, z2 =供給ショック) Instrumental variables (2SLS) regression Number of obs = 1000 Wald chi2(1) = 92.14 Prob > chi2 = 0.0000 R-squared = . Root MSE = 1.3643 ------------------------------------------------------------------------------ Q | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- P | -.0439281 .0045764 -9.60 0.000 -.0528977 -.0349584 _cons | 5.018399 .0432118 116.13 0.000 4.933705 5.103093 ------------------------------------------------------------------------------ Instrumented: P Instruments: z1 z2 //2SLS works well!(2SLS はうまく機能する!)
. ivregress 2sls Q (P = z3) (IV = z3 =需要ショック=所得) Instrumental variables (2SLS) regression Number of obs = 1000 Wald chi2(1) = 160.89 Prob > chi2 = 0.0000 R-squared = . Root MSE = 1.6461 ------------------------------------------------------------------------------ Q | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- P | .0946429 .0074615 12.68 0.000 .0800186 .1092672 _cons | 4.944799 .0522062 94.72 0.000 4.842477 5.047121 ------------------------------------------------------------------------------ Instrumented: P Instruments: z3 //2SLS works well!(2SLS はうまく機能する!) . exit end of do-file
本付録の Stata コード(原典 P.65)と出力(原典 P.66–67)は同一の do-file から得られている。コード末尾の ivregress 2sls Q (P = z3), first の , first オプションは第1段階回帰の出力も表示させる指定だが、原典 P.67 の出力には第1段階表は掲載されていない(本体の 2SLS 結果のみ)。