構造変化を伴う推定

標準的な回帰分析は推定するパラメータが変化しないことを前提としています。しかしながら、この前提は必ず満たされるとは限りません。特に時系列データに関しては、時点により被説明変数に対する説明変数の影響が異なることが考えられます。たとえば、オイルショックやバブル崩壊の前後で個人・企業・政府等の経済主体の行動が変わった場合、変数間の関係も変わることが想定されます。このような現象は構造変化と呼ばれます。本ページではEViewsで構造変化を伴う推定(Estimating Least Squares with Breakpoints)を行う手順について解説します。

推定の前提

構造変化を伴う推定は以下のような数式で表されます。

数式1

ここでXtは係数である β が時点に依存しない変数、Ztは係数である δ jが時点(レジーム)に依存する変数です。ここでj=0, 1, ...., mで、構造変化点はm個とします。合計で(m個ではなく)m+1個のレジームが存在し、各レジームに対して異なるδ jが推定されることになります。

EViewsでは、構造変化があったと考えられる時点を直接指定することも、構造変化点の数mを指定することも、統計的基準に基づいて構造変化点を自動選択することも可能です。以下ではEViewsにおける代表的な操作方法をご紹介します。

操作方法

ここではサンプルデータとして、EViewsのインストールフォルダ以下の、次のワークファイルを用います。
Example Files\EV9 Manual Data\Chapter 32 - Least Squares with Breakpoints\hansen_jep.wf1

EViewsにおいて構造変化を伴う回帰分析を行いたい場合、操作方法はとてもシンプルです。通常通り、Quick > Estimate equationより推定条件の入力画面を表示します。以下の画像のように入力します。


被説明変数であるddurをまず最初に記述します。その後に、定数項cと被説明変数の1期のラグであるddur(-1)を半角スペース区切りで入力します。これらの説明変数の係数はレジーム毎に異なります。また、レジーム毎に係数が変化しないと想定する変数として、トレンド項を利用することにします。すぐ下のダイアログに@trendと入力します。ひとまずそのままOKしてください。以下のような結果が表示されます。


結果表の上部には推定手法の名前や利用サンプル等が表示されます。構造変化を伴う推定を行った場合、構造変化点の指定方法等も同時に表示されます。

結果表の中央が推定結果です。2つの構造変化点が見つかっており、3つのレジームについて定数項CとDDURの1期のラグの係数が得られています。期間毎に係数の大きさや有意性が異なることが分かります。また、係数がレジームに依存しないと想定したトレンド項については、Non-Breaking Variablesの欄に結果が表示されています。すべての期間について1%有意な影響を与えています。

結果表の下部が各種の統計量です。ここは通常の推定と変わりません。

以上が基本操作です。とても簡単に行えることが実感できるかと存じます。ただし、もちろんより詳細な設定を行うことも可能です。次に各推定オプションを追加する方法を説明します。

オプション設定

上の推定では、構造変化点の指定方法等について、特に設定を行いませんでした。推定オプションの設定は、通常通りOptionsタブから行います(上の推定式オブジェクトのEstimateボタンより即座に設定変更して再推定できます)。


Coefficient covariance matrixは、通常通り係数の共分散行列に関するオプションを指定します。WhiteやHAC(Newey-West)といったロバスト共分散法を指定可能です。また、デフォルトでは、共分散行列はレジーム間で共通の分布を想定して計算されます。Allow error distributions to differ across breaksにチェックを入れることで、この前提をなくすことができます。また、ロバスト共分散法を利用している場合は、Ztの分布に関するオプションである、Assume common data distributionsチェックボックスが表示されます。ただし、ここでの例のようにレジームに依存しない変数(non-breaking regressors)を用いており、かつロバスト共分散行列を指定している場合、これらのオプションは表示されません。

Break specificationは、構造変化を伴う推定における最も重要な設定項目です。Methodで構造変化点をどのように取り扱うかを決定します。以下より選択可能です。

  1. Sequential L+1 breaks vs. L
  2. Sequential tests all subsets
  3. Global L breaks vs. none
  4. L+1 breaks vs. global L
  5. Global information criteria
  6. Fixed number - sequential
  7. Fixed number - global
  8. User-specified

1から5までは、それぞれの統計的基準を元に自動で構造変化点の数と設定時点を定めます。とりうる構造変化点の最大数(Maximum breaks)を指定します。例えば4を指定すれば、レジームの数は最大でも5になりますが、それより小さい数になることはありえます。各基準がどのように違うのかは、ユーザーズガイド2のLeast Squares with Breakpointsをご確認ください。

それに対し、6. Fixed number - sequentialと7. Fixed number - globalでは、構造変化点の数(Number of breaks)を指定します。例えば4を指定すれば、レジームの数は必ず5になります。このように構造変化点の数はユーザ側で指定しますが、構造変化の設定時点はEViewsが決定します。

最後に、8. User-specifiedでは、構造変化があったと想定される時点をユーザが設定します。例えば、User-specifiedを選択すると表示される入力フィールドに、

1963m02 1975m06 1995m11

と入力すれば、レジームは「初期時点から1963年1月まで」「1963年2月から1975年5月まで」「1975年6月から1995年10月まで」「1995年11月から最後まで」となり、それぞれについて異なる推定結果が得られます。すなわち、構造変化点の数も位置もご自身で定義したいような場合に用います。例えば、なんらかの政策的転換の前後で係数に変化が見られるかを検証したいような場合は、その政策的転換が起きた時点を入力すれば良いことになります。

推定後の各種操作

最小二乗法(OLS)との関係について

構造変化点を伴う推定は、実際には各期間ダミーとの交差項を用いた最小二乗法(OLS)による推定にすぎません。従って、説明変数さえ自分で定義すれば、8. User specifiedの推定はOLSでも推定できます。1から7も、自動で決めるアルゴリズムが入っているだけで、最終的に行っているのはOLSによる推定です。このことを確認するには、推定後にView > Representationと操作します。


青いライン内のコマンドをLS-Least Squares(NLS and ARMA)のダイアログに張り付けて実行すれば、BREAKLSを用いた場合とまったく同じ結果が得られます。実務上はこんな面倒なコマンドを入力せずにBREAKLSを使えばよいわけですが、統計教育目的等では便利です。

構造変化点の選択をより詳しく確認する

BREAKLSを使うと、構造変化点の数や位置が自動で選択されることを説明しました。構造変化点がどのように選択されたかを確認したい場合、推定後にView > Breakpoint Specificationと操作します。


セミナーのご案内

本ページでは構造変化を伴う推定についてごく簡単に解説を行いました。弊社で開催しております、「EViews9.5による回帰分析と構造変化」セミナーでは、構造変化の検定等、より詳しい内容について一から丁寧に解説します。セミナー内で解説がなかった内容についても講師に直接質問することができます。セミナーについての詳細はこちらのページをご参照ください。

page_top_icon