[[ 計量経済学のためのR環境]]
多重共線性の項でも触れたように、係数の有意性に関する判断は、誤差項が平均ゼロの正規分布をすることに依存しています。それ以外にも、成り立たなくては困る仮定がいくつかあるのです。
という2本の式で表される、同時方程式モデルがあったとします。x、y、zは変数、a、b、c、r、sは定数である係数、εは誤差項です。zがyに、yがzに影響しあっています。こういう関係は、経済にはよくあります。
yがzを通じてyを(部分的に)決めているというのは、自分が自分を決めていることになって、このままでは最小二乗法の基本的な仮定に反します。それなら、せっかく2本式があるのですから、先にzを消去して、2本を1本にまとめてしまったらどうでしょう。まとめると、式はこうなります。
代わりにこれを推定してやれば、今の問題は起こらないように思えます。これを推定しても元の式の係数のそれぞれを知ることはできませんが、元のモデルが正しいことを間接的に検定することはできるでしょう。 ところが、まとめた式(誘導型といいます)の誤差項であるにはが入っていますから、がたまたまプラスのときは、zもも平均より大きな値が出やすいと思われます。つまり、両者には相関関係があるのです。
誤差項と説明変数の間に相関があるとどう困るのか、簡単に説明することは困難ですが、やってみましょう。最小二乗法は集めてきたデータ(標本)から係数を推定するひとつの方法なのですが、標本の偏りによって、真の係数と推定した係数はふつう一致しません。しかし、サンプル数を無限に多くすると、真の係数と推定した係数の差はゼロに近づくことが証明されています。この性質を一致性と言って、最小二乗法は一致性を持つことが重要な良さなのです。
ところが誤差項と説明変数の間に相関がないことが、一致性の証明に使われているので、上のようなケースでは「重回帰分析を使っても、推定された係数を信用する根拠が薄い」ことになってしまうのです。
こうした、同じ時点で複数の式が同時に成り立つと仮定することで起きる係数の偏りや根拠の喪失を同時方程式バイアスといいます。
同時方程式バイアスを避けるためによく使われるのは、2SLS(2段階最小二乗法)です。モデルの中で他の変数から決まる変数(内生変数)、ここではyとzのうちひとつは被説明変数になるわけですが、もう一方(たくさん内生変数があるなら、残り全部)を外生変数でまず推定します。外生変数は、モデルの外で決まる変数です。この場合はxを説明変数、zを被説明変数とする回帰分析を行います。この例では外生変数はひとつだけですが、どれか1本でも式に含まれる外生変数をすべて使うのが普通です。
そしてzの観測値の代わりに、推定結果を使って
を推定します。この場合、yへのxの影響がzを通した間接的なものと直接的なものに分かれることになりますね。これを実行する方法は後で扱います。先にもうひとつ、同時方程式モデルについて回る識別問題を説明しておきましょう。
であらわされる市場の価格・販売量はどのように観察されるでしょうか。我々が観察できるデータは、需要曲線と供給曲線の交点です。データが需要曲線に沿って並んでいるのか、供給曲線に沿って並んでいるのかは、ふたつの曲線に与えた仮定によって違ってきます。上の式の場合だと、誤差項を無視して二つの式を「解く」ことができて、
となります。誤差項があるために、上の式が表す交点の周りでデータはばらつくことになるはずですが、需要曲線、供給曲線のどちらにも沿って並びません。つまり、いくらデータがあっても、データから需要曲線や供給曲線を推定することは絶対にできないのです。
こうした問題を識別問題といいます。この例のように需要曲線と供給曲線がデータから識別できないこともありますし、もっと多くの式を連立させたモデルでは、同じ変数を決定する式が複数あって、それぞれ相関しない説明変数を持っているので、モデルから同じ変数の推定値が複数出てきて互いに一致しない、ということも起こります。
と変数をひとつずつ追加したモデルを考えてみましょう。例えば需要なら所得から影響を受けるでしょうし、供給曲線は材料の国際価格などに影響を受けるでしょう。RやSが変化すれば、需要曲線に沿った変化も供給曲線に沿った変化も観察できそうですね。そして、RとSを外生変数とみなし、2段階最小二乗法を使うことにしましょう。
ここから先はsystemfitパッケージを使うので、パッケージの読み込みを忘れずに。
スクリプトはRサンプル11、使用するデータはRサンプル11のデータです。
主な結果は、次のようなものです。
> dem <- P ~ Q + R > sup <- P ~ Q + S > labels <- list( "demand", "supply" ) > system <- list( dem, sup ) > inst <- ~ R + S > sysols <- systemfit( "OLS", system, labels, inst) > summary(sysols) systemfit results method: OLS N DF SSR MSE RMSE R2 Adj R2 demand 20 17 0.447212 0.026307 0.162193 0.994075 0.993378 supply 20 17 2.579214 0.151718 0.389511 0.965831 0.961811 The covariance matrix of the residuals demand supply demand 0.0263066 -0.0161156 supply -0.0161156 0.1517185 The correlations of the residuals demand supply demand 1.000000 -0.255091 supply -0.255091 1.000000 The determinant of the residual covariance matrix: 0.00373149 OLS R-squared value of the system: 0.979953 OLS estimates for demand (equation 1 ) Model Formula: P ~ Q + R Estimate Std. Error t value Pr(>|t|) (Intercept) -0.047874 0.36817 -0.130033 0.898067 Q 0.000212 0.004408 0.048063 0.962226 R -0.509177 0.024064 -21.159309 0 *** --- Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 0.162193 on 17 degrees of freedom Number of observations: 20 Degrees of Freedom: 17 SSR: 0.447212 MSE: 0.026307 Root MSE: 0.162193 Multiple R-Squared: 0.994075 Adjusted R-Squared: 0.993378 OLS estimates for supply (equation 2 ) Model Formula: P ~ Q + S Estimate Std. Error t value Pr(>|t|) (Intercept) 3.818202 0.645832 5.912067 1.7e-05 *** Q -0.023169 0.008864 -2.613955 0.018148 * S 2.723121 0.341519 7.973557 0 *** --- Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 0.389511 on 17 degrees of freedom Number of observations: 20 Degrees of Freedom: 17 SSR: 2.579214 MSE: 0.151718 Root MSE: 0.389511 Multiple R-Squared: 0.965831 Adjusted R-Squared: 0.961811
御覧のように、ふたつの式をそれぞれ最小二乗法で推定すると、自由度修正済み決定係数は0.9を超えます。RとSはどちらもPと相関が高くなるようにデータを作ってあります。ところが、RとSでPとQを推定し、その値を代わりに使う2SLSを使うと…
> sys2sls <- systemfit( "2SLS", system, labels, inst) > summary(sys2sls) systemfit results method: 2SLS N DF SSR MSE RMSE R2 Adj R2 demand 20 17 56.1935 3.305498 1.818103 0.255559 0.167978 supply 20 17 7.9412 0.467129 0.683469 0.894796 0.882420 The covariance matrix of the residuals demand supply demand 3.30550 -1.202963 supply -1.20296 0.467129 The correlations of the residuals demand supply demand 1.000000 -0.968089 supply -0.968089 1.000000 The determinant of the residual covariance matrix: 0.096975 OLS R-squared value of the system: 0.575178 2SLS estimates for demand (equation 1 ) Model Formula: P ~ Q + R Instruments: ~R + S Estimate Std. Error t value Pr(>|t|) (Intercept) -6.887025 29.565603 -0.23294 0.818589 Q 0.203147 0.870104 0.233475 0.818181 R -1.526677 4.363928 -0.34984 0.730755 --- Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 1.818103 on 17 degrees of freedom Number of observations: 20 Degrees of Freedom: 17 SSR: 56.193462 MSE: 3.305498 Root MSE: 1.818103 Multiple R-Squared: 0.255559 Adjusted R-Squared: 0.167978 2SLS estimates for supply (equation 2 ) Model Formula: P ~ Q + S Instruments: ~R + S Estimate Std. Error t value Pr(>|t|) (Intercept) 3.338415 1.153567 2.893993 0.01009 * Q -0.075862 0.028334 -2.677472 0.015905 * S 0.933461 1.00306 0.930614 0.365081 --- Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 0.683469 on 17 degrees of freedom Number of observations: 20 Degrees of Freedom: 17 SSR: 7.941197 MSE: 0.467129 Root MSE: 0.683469 Multiple R-Squared: 0.894796 Adjusted R-Squared: 0.88242
ひとつめの式の決定係数はどんと下がってしまいました。