Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

一般化モーメント法

モーメント法

モーメント法 (method of moment)は統計的推定における方法の1つで、母集団におけるモーメント(母平均など)を標本におけるモーメント(標本平均など)で置き換えて推定を行う。

確率変数XXの分布がkk次元の未知のパラメータθ=(θ1,,θk)\theta = (\theta_1, \cdots, \theta_k)をもつとする。このとき、

E[m(X,θ)]=E[m1(X,θ)mk(X,θ)]=0E[m(X, \theta)] = E \begin{bmatrix} m_1(X, \theta)\\ \vdots\\ m_k(X, \theta)\\ \end{bmatrix} = 0

を満たすようにkk個の関数(スコア関数)m1(,),,mk(,)m_1(\cdot, \cdot), \cdots, m_k(\cdot, \cdot)をうまく選べたとする。

モーメント法ではこの条件を解いてθ\thetaを求めることでパラメータを推定する。

標本X1,,XnX_1,\cdots,X_nが得られたとき、θj\theta_jのモーメント推定量θ^\hat{\theta}

1ni=1nmk(Xi;θ^)=0\frac{1}{n} \sum_{i=1}^n m_k (X_i ; \hat{\theta})=0

により定義される。

大数の法則により、i.i.d.のサンプルの標本モーメントは母集団モーメントに確率収束する、すなわち

1ni=1nmk(Xi;θ^)pE[mk(X,θ)]\frac{1}{n} \sum_{i=1}^n m_k (X_i ; \hat{\theta}) \xrightarrow{p} \mathrm{E}[m_k (X, \theta) ]

であるため、標本モーメントを用いて推定ができる。

一般化モーメント法(GMM)

未知のパラメータの数kkとモーメント条件の数rrが等しい(k=rk = r)場合、上記のようにモーメント法で推定が可能である。

しかし、k>rk > rk<rk < rの場合はモーメント法ではパラメータをうまく推定できない。

一般化モーメント法(generalized method of moment: GMM)k<rk < r、すなわちモーメント条件のほうが多い場合でも推定できるようにした方法である。

モーメント条件のほうが多い場合、rr本の条件式

E[m(X,θ)]=E[m1(X,θ)mr(X,θ)]E[m(X, \theta)] = E \begin{bmatrix} m_1(X, \theta)\\ \vdots\\ m_r(X, \theta)\\ \end{bmatrix}

が全体的に0に近くなるように

minθQn(θ)=[1Ni=1Nm(Xi;θ)]TW[1Ni=1Nm(Xi;θ)]\min_\theta Q_n(\theta) = \left[\frac{1}{N} \sum_{i=1}^N m(X_i ; \theta)\right]^{T} W \left[\frac{1}{N} \sum_{i=1}^N m(X_i ; \theta)\right]

となるようにθ\thetaを選ぶ。ここでWWはウェイト行列(weight matrix)と呼ばれる。単にW=IW=Iとすることもできるが、うまくウェイトを用いることで推定精度を向上させることができる。

この方法は 最小距離推定 (minimum distance estimation)と呼ばれる広いクラスの推定法の中の特別な場合だと解釈できるが、計量経済学ではこの方法を最初に導入したHansen (1982) に倣って 一般化モーメント法 (generalized method of moment: GMM)と呼ぶ。

この最小化問題は

[1Ni=1Nm(Xi;θ~)θT]TW[1Ni=1Nm(Xi;θ~)]=0\left[\frac{1}{N} \sum_{i=1}^N \frac{\partial m(X_i ; \tilde{\theta})}{\partial \theta^T} \right]^{T} W \left[\frac{1}{N} \sum_{i=1}^N m(X_i ; \tilde{\theta})\right] = 0

を解いて求める。

ただし、

m(Xi;θ~)θ=m(Xi;θ)θθ=θ~\frac{\partial m(X_i ; \tilde{\theta})}{\partial \theta^{\prime}} = \left. \frac{\partial m(X_i ; \theta)}{\partial \theta^{\prime}} \right|_{\theta=\tilde{\theta}}

である。

一般化モーメント法と操作変数法

Y=Xβ+u,Var[u]=σ2InY = X \beta + u, \quad \text{Var}[u] = \sigma^2 I_n

において、XXuuは無相関ではなくE[XTu]0E[X^T u] \neq 0であるが、操作変数のn×ln\times l行列ZZに対してE[ZTu]=0E[Z^T u]=0であるとする。

E[Ziui]=E[Zi(YiXiTβ)]=0E[Z_i u_i] = E[Z_i (Y_i - X_i^T \beta)] = 0

を直交条件にすると、標本対応は

1nZT(YXβ)\frac{1}{n} Z^T(Y-X\beta)

となる。したがってβ\betaのGMM推定量は

β^GMM=arg minβ[ZT(YXβ)n]TWn[ZT(YXβ)n]\hat{\beta}_{GMM} = \mathop{\text{arg min}}_\beta \left[ \frac{Z^T(Y-X\beta)}{n} \right]^T W_n \left[ \frac{Z^T(Y-X\beta)}{n} \right]

である。

ここで

E[u]=0E[uuT]=σ2IplimnZTZn=MZZE[u] = 0\\ E[uu^T] = \sigma^2 I\\ \mathop{\text{plim}}_{n\to\infty} \frac{Z^T Z}{n} = M_{ZZ}

および特定の条件下で

ZT(YXβ)nDN(0,σ2Mzz)\frac{Z^T(Y-X\beta)}{\sqrt n} \xrightarrow{D} \mathcal{N}(0, \sigma^2 M_{zz})

であるので

Wnp(σ2MZZ)1W_n \xrightarrow{p} (\sigma^2 M_{ZZ})^{-1}

となるWnW_nをウェイト行列として用いるのが望ましい。

Wn=(σ2ZTZn)1W_n = \left( \frac{\sigma^2 Z^T Z}{n} \right)^{-1}

を用いると

β^GMM=arg minβ[ZT(YXβ)n]T(σ2ZTZn)1[ZT(YXβ)n]\hat{\beta}_{GMM} = \mathop{\text{arg min}}_\beta \left[ \frac{Z^T(Y-X\beta)}{n} \right]^T \left( \frac{\sigma^2 Z^T Z}{n} \right)^{-1} \left[ \frac{Z^T(Y-X\beta)}{n} \right]

であるので、この目的関数をβ\betaで微分してゼロとおいて解くか、公式

[1Ni=1Nm(Xi;θ~)θT]TW[1Ni=1Nm(Xi;θ~)]=0\left[\frac{1}{N} \sum_{i=1}^N \frac{\partial m(X_i ; \tilde{\theta})}{\partial \theta^T} \right]^{T} W \left[\frac{1}{N} \sum_{i=1}^N m(X_i ; \tilde{\theta})\right] = 0

にあてはめ(左側のスコア関数だけ微分)した

[ZTXn]T(σ2ZTZn)1[ZT(YXβ^)n]=0\left[ \frac{Z^TX}{n} \right]^T \left( \frac{\sigma^2 Z^T Z}{n} \right)^{-1} \left[ \frac{Z^T(Y-X\hat{\beta})}{n} \right] =0

を解くことによって推定量が得られる。

β^GMM=(XTZ(ZTZ)1ZTX)1XTZ(ZTZ)1ZTy\hat{\beta}_{GMM}= (X^T Z (Z^T Z)^{-1} Z^T X)^{-1} X^T Z (Z^T Z)^{-1}Z^T y

となり、操作変数推定量(2段階最小二乗法推定量)に一致する。

操作変数の数llと説明変数の数kkが等しい場合はZTXZ^T Xが正方行列となり(ZTX)1(Z^T X)^{-1}が存在するため

β^GMM=(ZTX)1ZTy\hat{\beta}_{GMM}= (Z^T X)^{-1}Z^T y

と単純化できる

展開

(AB)1=B1A1(AB)^{-1} = B^{-1} A^{-1}を使った

β^GMM=(XTZ(ZTZ)1ZTX)1XTZ(ZTZ)1ZTy=(ZTX)1(XTZ(ZTZ)1)1XTZ(ZTZ)1ZTy=(ZTX)1(ZTZ)(XTZ)1XTZ(ZTZ)1ZTy=(ZTX)1ZTy\begin{align} \hat{\beta}_{GMM} &= (X^T Z (Z^T Z)^{-1} Z^T X)^{-1} X^T Z (Z^T Z)^{-1}Z^T y\\ &= (Z^T X)^{-1} (X^T Z (Z^T Z)^{-1})^{-1} X^T Z (Z^T Z)^{-1}Z^T y\\ &= (Z^T X)^{-1} (Z^T Z)(X^T Z)^{-1} X^T Z (Z^T Z)^{-1}Z^T y\\ &= (Z^T X)^{-1}Z^T y \end{align}

一般化モーメント法と最尤推定法

最尤推定量は対数尤度の導関数をスコア関数とした

E[logf(YX;θ)θ]=0E\left[ \frac{\partial \log f(Y|X; \theta)}{\partial \theta} \right] = 0

という直交条件の下でのGMM推定量と考えることができる。

確率密度によるモーメント条件

YiY_iの条件付き確率密度関数をf(YiXi;θ)f(Y_i | X_i; \theta)とする。確率密度関数の性質から、積分すると1になるので

f(YiXi;θ)dyi=1\int f(Y_i|X_i; \theta) dy_i = 1

となる。両辺をθ\thetaについて微分すると

f(YiXi;θ)θdyi=0\int \frac{\partial f(Y_i|X_i; \theta)}{\partial \theta} dy_i = 0

となる。

f(YiXi;θ)θ=f(YiXi;θ)θ1f(YiXi;θ)f(YiXi;θ)=logf(YiXi;θ)θf(YiXi;θ)\begin{align} \frac{\partial f(Y_i|X_i; \theta)}{\partial \theta} &= \frac{\partial f(Y_i|X_i; \theta)}{\partial \theta} \frac{1}{f(Y_i|X_i; \theta)} f(Y_i|X_i; \theta)\\ &= \frac{\partial \log f(Y_i|X_i; \theta)}{\partial \theta} f(Y_i|X_i; \theta) \end{align}

という関係を用いて

logf(YiXi;θ)θf(YiXi;θ)dyi=0\int \frac{\partial \log f(Y_i|X_i; \theta)}{\partial \theta} f(Y_i|X_i; \theta) dy_i = 0

とすることができる。

スコア関数を

m(Xi,θ)=logf(YiXi;θ)θm(X_i, \theta) = \frac{\partial \log f(Y_i|X_i; \theta)}{\partial \theta}

とおけば、

m(Xi,θ)f(YiXi;θ)dyi=0\int m(X_i, \theta) f(Y_i|X_i; \theta) dy_i = 0

となり、これは条件付き確率f(YiXi;θ)f(Y_i|X_i; \theta)による条件付き期待値

E[m(Xi,θ)Xi]=0E[m(X_i, \theta)\mid X_i] = 0

となっている。繰り返し期待値の法則により

E[m(Xi,θ)]=0E[m(X_i, \theta)] = 0

であるから、この式を直交条件として用いることができる。

モーメント推定量と最尤推定量

モーメント法では標本モーメント条件

1ni=1nlogf(YiXi;θ)θ=0\frac{1}{n}\sum^n_{i=1} \frac{\partial \log f(Y_i|X_i; \theta)}{\partial \theta} = 0

を解く。

最尤推定法では対数尤度関数の最大化において

i=1nlogf(YiXi;θ)θ=0\sum^n_{i=1} \frac{\partial \log f(Y_i|X_i; \theta)}{\partial \theta} = 0

を解くため、GMM推定量と最尤推定量は一致する。

例:線形回帰モデル

線形回帰モデル

y=Xβ+u,(E[u]=0,V[u]=σ2In)y=X \beta+\boldsymbol{u}, \quad (\mathrm{E}[\boldsymbol{u}]=\mathbf{0}, \mathrm{V}[\boldsymbol{u}]=\sigma^2 \boldsymbol{I}_n)

を考える(簡単のためσ2\sigma^2は既知とする)

誤差が正規分布に従うと仮定して尤度関数を特定化する場合、

L(β;y)=i=1nf(yiXi;β)=i=1n12πσexp[(yiXiTβ)22σ2]L(\boldsymbol{\beta} ; \boldsymbol{y})=\prod_{i=1}^n f\left(y_i \mid \boldsymbol{X}_i ; \boldsymbol{\beta}\right) =\prod_{i=1}^n \frac{1}{\sqrt{2 \pi} \sigma} \exp \left[-\frac{\left(y_i-\boldsymbol{X}_i^T \boldsymbol{\beta}\right)^2}{2 \sigma^2}\right]

対数尤度の導関数をスコア関数とすると

m(yi,Xi;β)=logf(yiXi;β)β=(yiXiTβ)Xiσ2\boldsymbol{m}\left(y_i, \boldsymbol{X}_i ; \boldsymbol{\beta}\right) = \frac{\partial \log f\left(y_i \mid \boldsymbol{X}_i ; \boldsymbol{\beta}\right)}{\partial \boldsymbol{\beta}} =\frac{\left(y_i-\boldsymbol{X}_i^T \boldsymbol{\beta}\right) \boldsymbol{X}_i}{\sigma^2}

なので、この直交条件はE[uiXi]=0\mathrm{E}[\boldsymbol{u}_i \boldsymbol{X}_i]=\mathbf{0}を意味する。

(※前述のように、この直交条件はuiu_iが正規分布に従うと仮定しなくても使えるしβ\betaの一致推定量を得られる)

このスコア関数の標本対応は

1ni=1n(yiXiTβ)Xiσ2=1nσ2XT(yXβ)=0\frac{1}{n} \sum^n_{i=1} \frac{(y_i-\boldsymbol{X}_i^T \boldsymbol{\beta}) \boldsymbol{X}_i}{\sigma^2} = \frac{1}{n \sigma^2} \boldsymbol{X}^T (y - \boldsymbol{X} \boldsymbol{\beta}) = 0

であり、これを解くとβ=(XTX)1XTY\beta = (X^T X)^{-1}X^T Yとなる

参考文献