E5 · GMM과 도구변수: 어떤 방정식을 얼마나 믿을 것인가#
1. 두 집단이 서로 다른 기울기를 요구할 때#
교육 투자량 \(x\)와 생산성 지표 \(y\)의 관계를 \(y_i=\beta x_i+u_i\)로 설명하려 합니다. 둘은 기준 단위로 측정하고, 이 작은 모형에서는 절편을 0으로 고정합니다. 교육 선택과 관측하지 못한 능력이 연결되면 \(E[xu]=0\)을 기대하기 어렵습니다. 대신 사전에 정해진 집단 지시변수 \(z\)에 \(E[zu]=0\)을 가정할 수 있는지를 연구 설계에서 따져야 합니다. 이 가정은 다음 여섯 관측만으로 증명되지 않습니다.
첫 집단의 \(x\) 합은 \(1+2+3+2=8\), \(y\) 합은 \(2+3+5+4=14\)입니다. 둘째 합은 각각 \(10,16\)입니다. 따라서 표본 적률을 모두 0으로 놓으면 \(14-8\beta=0\), \(16-10\beta=0\)을 동시에 요구합니다. 첫 식은 \(7/4\), 둘째는 \(8/5\)를 주므로 해가 없습니다. 모집단 평균이 0이어도 표본 평균에는 잡음이 남습니다. 어느 잔여를 얼마나 벌줄 것인가?
집단 크기는 \(4,2\)입니다. 등분산 독립 오차라면 잔여 합의 분산은 관측 수에 비례합니다. 합을 각각 \(2,\sqrt2\)로 나누어 비교하면 상수 배율을 제외한 목적함수는
미분하면 \(q'(\beta)=-4(14-8\beta)-10(16-10\beta)=132\beta-216\)이고 \(q''=132>0\)입니다. 유일한 최소는 \(18/11\)입니다. 두 개별 답의 정보 가중치는 \(8^2/4=16\), \(10^2/2=50\)이어서
분산뿐 아니라 계수 변화에 대한 적률의 민감도도 정보에 들어갑니다. 가중치를 단순히 집단 크기로 읽으면 \(16:50\)을 설명하지 못합니다.
그림 143 가로축은 생산성/교육 단위의 계수이고 세로축은 정규화한 적률 제곱합이다. 각 집단의 최소점과 합의 최소점은 다르다.#
2. 적률 공간의 최소제곱과 백색화#
\(X\in\mathbb R^{n\times k}\), \(Z\in\mathbb R^{n\times\ell}\)에
라 쓰겠습니다. \(W\succ0\)로 거리를 재어 \((a-B\beta)^TW(a-B\beta)\)를 최소화하는 것이 선형 GMM입니다. \(B\)가 완전 열계수이면
역행렬은 수학적 표현입니다. 적률 공분산 \(\Omega=LL^T\)를 사용하여 \(W=\Omega^{-1}\)로 정했다면, 실제 계산은 \(L^{-1}B\)와 \(L^{-1}a\)의 QR 최소제곱으로 합니다. 역행렬을 만들 필요가 없습니다.
예제에서는 백색화 벡터가 \(\widetilde b=(4,5\sqrt2)^T\), \(\widetilde a=(7,8\sqrt2)^T\)입니다. 내적은 \(28+80=108\), 설계의 제곱길이는 \(16+50=66\)입니다. 잔여는
그 내적은 \(20/11-20/11=0\)입니다. 원래 적률 두 개가 각각 0인 것이 아니라 계수가 움직일 수 있는 방향과 잔여가 직교합니다.
그림 144 위는 백색화 좌표 전체, 아래는 같은 계산의 작은 잔여를 확대한다. 파란 원은 관측 적률, 붉은 사각형은 사영된 적률이다. 확대도의 축 범위는 다르며 각 패널 안에서 두 축의 단위 길이는 같다.#
\(W=\operatorname{diag}(1,0)\)이면 둘째 적률을 버려 \(7/4\)가 됩니다. PSD라도 \(B^TWB\)가 가역이면 유일해입니다. 그러나 \(W=\operatorname{diag}(1,-1)\)이면 \((14-8\beta)^2-(16-10\beta)^2\)의 최고차항이 \(-36\beta^2\)이므로 아래로 무한히 내려갑니다. 가중이 부정치이면 거리 최소화가 아닙니다.
3. 2SLS의 두 단계와 사각사영#
\(P_Z=Z(Z^TZ)^{-1}Z^T\)라 두겠습니다. 첫 단계는 \(\widehat X=P_ZX\)이며 예제의 \(\widehat x=(2,2,2,2,5,5)^T\)는 집단 평균입니다. \(y\)를 \(\widehat X\)에 회귀하고 \(P_Z^TP_Z=P_Z\)를 사용하면
이것은 \(W=(Z^TZ/n)^{-1}\)인 GMM입니다. 존재 조건은 \(\operatorname{rank}(P_ZX)=k\)입니다. \(\ell\ge k\)라는 개수 조건만으로는 부족합니다.
구조식의 적합값은 \(X\widehat\beta\)입니다. 이를 주는 사영자는
로서 \(H^2=H\)이지만 보통 \(H^T\ne H\)입니다. 둘째 회귀의 \(P_ZX\widehat\beta\)를 주는 직교사영과 다릅니다. 정확식별 \(\ell=k\)에서는 \(H=X(Z^TX)^{-1}Z^T\)이고, 상은 \(\operatorname{col}X\), 핵은 \(\ker Z^T\)입니다.
표준오차에 쓰는 잔차도 \(e=y-X\widehat\beta\)입니다. 예제에서는
등분산 플러그인 분산은 \((196/605)/66\)입니다. 이 식이 여섯 관측에서 정확한 정규 추론을 보장하지는 않습니다. IV의 통상 정규 근사는 강한 식별 아래 큰 표본 결과입니다. 이분산에서는 \(u_i^2z_iz_i^T\)의 표본 평균을, 시계열에서는 적률열의 장기 공분산을 사용합니다.
4. 최적 가중과 샌드위치#
\(\sqrt n\bar g(\beta_0)\Rightarrow N(0,\Omega)\), \(B\to_pB_0\), \(W_n\to_pW\)를 가정하자. \(B_0\)는 완전 열계수, \(\Omega\succ0\), \(B_0^TWB_0\succ0\)입니다. 선형 모형에서는 정확히
극한 분산은 \(V_W=C\Omega C^T\)입니다. \(W=\Omega^{-1}\)일 때
임의 \(d\)에 \(d^T(V_W-V_*)d\ge0\)입니다. 모든 계수의 모든 선형결합에 대해 분산이 최소라는 뜻입니다. \(B_0=(1,1)^T\), \(\Omega=\operatorname{diag}(1,4)\)이면 동일가중의 \(C=(1/2,1/2)\)는 \(V=5/4\)를, 최적가중 \(C_*=(4/5,1/5)\)는 \(V_*=4/5\)를 줍니다. 차이는 \(9/20\)입니다.
비선형 \(g_i(\theta)\)에서는 내부 최소해의 일치성, 참값 근방 평균 Jacobian의 균일 수렴, 극한 Jacobian \(G\)의 완전 열계수, 적률 CLT가 추가로 필요합니다. 적분형 전개는
벡터함수의 모든 행에 같은 중간점이 있다고 가정하지 않습니다. LLN·CLT·Slutsky와 일치성은 이 절의 외부 전제입니다. 일반 GMM의 조건은 Hansen의 논문과 저자 제공 자료에서 더 확장됩니다.
5. 남은 적률과 J 검정#
최적가중, 일관된 \(\widehat\Omega\)와 위 정칙조건 아래
백색화한 \(\ell\)차원 정규 잡음에서 추정에 사용한 \(k\)차원을 빼기 때문입니다. 정확식별이면 남는 차원이 0입니다. 예제의 등분산 Sargan 판본에서는 \(e^TP_Ze=3/11\), \(\widehat\sigma^2=e^Te/n=98/363\)이므로 \(J=99/98\)입니다. 여기의 \(n\)과 표준오차 자유도 보정의 \(n-k\)를 구별합니다.
작은 \(J\)는 도구의 인과적 타당성을 증명하지 않습니다. \(E[zu]=B_0\delta\)이면 \(\beta_0+\delta\)에서 모든 적률이 0입니다. 계수를 옮기는 방향과 같은 적률 위반을 검정은 보지 못합니다. 보는 것은 백색화 후 설계공간에 수직인 성분입니다.
6. 약한 도구와 각도#
단일 도구의 추정량은 \(z^Ty/(z^Tx)\)입니다. 작은 분모는 표본 잡음을 증폭합니다. 그러나 비영 \(1\times1\) 행렬의 조건수는 항상 1입니다. 작은 식별 강도를 조건수만으로 발견할 수 없습니다. 도구 단위를 100배 바꾸면 \(\sigma_{\min}(Z^TX/n)\)도 100배가 되지만 추정량은 같습니다. 비교에는 척도와 적률 잡음 공분산을 함께 고정해야 합니다.
기하만 분리하려고 \(x=(1,0)^T\), \(z=(c,\sqrt{1-c^2})^T\), \(0<c\le1\)로 두겠습니다. 그러면
상 \(\operatorname{span}x\)와 핵 \(\ker z^T\) 사이의 예각 \(\theta\)에는 \(\sin\theta=c\)입니다. \(x\)와 \(z\) 사이의 각은 그 여각입니다. 어떤 공간 사이의 각인지 쓰지 않은 \(1/\sin\theta\)는 모호합니다.
그림 145 모든 \(c>0\)에서 고윳값은 0과 1이지만 사영 노름은 발산한다. 양 축은 로그 눈금이며 확률분포가 아닌 정확한 선형사상 계산이다.#
독립 중심 정규 분자·분모의 비는 스케일을 곱한 Cauchy입니다. 일반 약한 IV의 두 정규량은 상관되거나 평균이 0이 아닐 수 있습니다. 모든 약한 IV가 Cauchy라는 말, 모든 설계에서 첫 단계 F와 최소 특이값이 단조 대응한다는 말은 성립하지 않습니다.
7. 다수 도구와 다른 추정량#
\(x=Z\pi+v\)이고 \(E[uv^T\mid Z]=\sigma_{uv}I\)라면 \(E[v^TP_Zu\mid Z]=\sigma_{uv}\operatorname{tr}P_Z=\sigma_{uv}\ell\)입니다. 첫 단계가 적합하는 잡음은 도구 수와 함께 커집니다. 다만 \(E[N/D]\ne E[N]/E[D]\)이므로 이것을 2SLS 편향의 정확 공식이라고 부르면 안 됩니다.
\(k\)-class의 계수 기호를 \(\kappa\)로 구별하면
역행렬이 존재할 때 \(\kappa=0\)은 OLS, \(\kappa=1\)은 2SLS입니다. 이 절편 없는 예제의 LIML은 \(Y=[y,x]\)의 몫 \(a^TY^TYa/(a^TY^TM_ZYa)\) 최소값을 \(\kappa\)로 씁니다. 두 행렬은
분모는 첫 대각 7, 행렬식 3으로 PD입니다. 일반화 Rayleigh 최소화에서 \(3\kappa^2-96\kappa+111=0\)의 작은 근 \(16-\sqrt{219}\)를 얻습니다. 계수는 \((113-5\kappa)/(70-4\kappa)\)입니다. 이것은 유한 표본 계산이며 모든 다수도구 편향 제거의 증명이 아닙니다.
JIVE는 자기 관측을 뺀 첫 단계 \(\widetilde x_i=(\widehat x_i-h_ix_i)/(1-h_i)\)를 도구로 씁니다. \(h_i=1\)이면 정의되지 않습니다. 예제는 \(\widetilde x=(7,6,5,6,18,12)^T/3\), \(\widetilde x^Ty=126\), \(\widetilde x^Tx=76\)이므로 \(63/38\)입니다. 자기 오차의 직접 유입을 없애지만 분산 증가나 약한 식별을 자동 해결하지 않습니다.
\(Z=U\Sigma V^T\)이면 ridge 첫 단계의 평활자는 \(U\operatorname{diag}(\sigma_j^2/(\sigma_j^2+\lambda))U^T\)입니다. PC-IV는 일부 방향의 인자를 0으로 만듭니다. JIVE는 관측별 레버리지로 수정하므로 같은 단순 특이값 필터가 아닙니다.
시스템에서는 방정식별 적률을 쌓습니다. 공통 도구, 관측 간 독립, 일정한 방정식 오차 공분산 \(\Sigma_u\) 아래 적률 공분산은 \(\Sigma_u\otimes Q_{zz}\)입니다. 이 가중 GMM이 3SLS의 시스템 가중을 줍니다. \(\Sigma_u=L_uL_u^T\), \(Q_{zz}=L_zL_z^T\)이면 백색화 인수는 \(L_u\otimes L_z\)입니다. 방정식마다 다른 설계를 쌓은 \(B\)에 이 인수를 적용합니다.
8. 계산으로 확인하기#
import numpy as np
import scipy.linalg as la
x=np.array([1.,2.,3.,2.,4.,6.]); y=np.array([2.,3.,5.,4.,7.,9.])
Z=np.column_stack([np.r_[np.ones(4),np.zeros(2)],np.r_[np.zeros(4),np.ones(2)]])
Qz,_=la.qr(Z,mode='economic')
beta=la.lstsq(Qz.T@x[:,None],Qz.T@y)[0][0]
e=y-x*beta
J=np.linalg.norm(Qz.T@e)**2/(e@e/len(y))
h=np.sum(Qz**2,axis=1); xhat=Qz@(Qz.T@x)
xloo=(xhat-h*x)/(1-h); jive=xloo@y/(xloo@x)
Y=np.column_stack([y,x]); YM=Y-Qz@(Qz.T@Y)
kappa=la.eigh(Y.T@Y,YM.T@YM,eigvals_only=True)[0]
liml=(113-5*kappa)/(70-4*kappa)
assert np.allclose([beta,J,jive],[18/11,99/98,63/38])
print('2SLS, J, JIVE, LIML:',beta,J,jive,liml)
2SLS, J, JIVE, LIML: 1.636363636363637 1.0102040816326519 1.657894736842105 1.6411367231455514
def moment_gls(a,B,Omega):
L=la.cholesky(Omega,lower=True)
return la.lstsq(la.solve_triangular(L,B,lower=True),
la.solve_triangular(L,a,lower=True))[0]
Omega=np.diag([1.,4.]); C=np.array([[.5,.5]]); Cs=np.array([[.8,.2]])
assert np.allclose(C@Omega@C.T-Cs@Omega@Cs.T,(C-Cs)@Omega@(C-Cs).T)
print('variance:',(C@Omega@C.T).item(),(Cs@Omega@Cs.T).item())
# 두 방정식, 같은 두 도구: Kronecker 가중과 블록 삼각 백색화 대조.
Su=np.array([[2.,.5],[.5,1.]])
Qzz=np.diag([2.,1.]); system_cov=np.kron(Su,Qzz)
Bsys=la.block_diag(np.array([[1.],[2.]]),np.array([[2.],[1.]]))
asys=np.array([1.,3.,4.,1.])
bsys=moment_gls(asys,Bsys,system_cov)
Ls=np.kron(la.cholesky(Su,lower=True),la.cholesky(Qzz,lower=True))
direct=la.lstsq(la.solve_triangular(Ls,Bsys,lower=True),
la.solve_triangular(Ls,asys,lower=True))[0]
assert np.allclose(bsys,direct)
print('system GMM:',bsys)
variance: 1.25 0.8000000000000002
system GMM: [1.57575758 1.72727273]
9. 연습과 전체 풀이#
문제 1 — 계산. OLS와 2SLS를 원자료에서 비교하라.
풀이. \(x^Tx=1+4+9+4+16+36=70\), \(x^Ty=2+6+15+8+28+54=113\)이므로 OLS는 \(113/70\)입니다. 2SLS의 분모는 \(4\cdot2^2+2\cdot5^2=66\), 분자는 \(2\cdot14+5\cdot16=108\)입니다. 차이는 \(17/770\)입니다. 어느 것이 참값에 가까운지는 데이터 계산만으로 알 수 없습니다.
문제 2 — 좌표 변경. 도구를 가역 \(A\)로 \(ZA\)로 바꾸면?
풀이. \(ZA(A^TZ^TZA)^{-1}A^TZ^T=Z(Z^TZ)^{-1}Z^T\)이므로 2SLS는 불변입니다. 일반 GMM에서는 적률이 \(A^T\bar g\)이므로 가중도 \(A^{-1}WA^{-T}\)로 바꾸어야 합니다. 적률의 단위 변경과 동일가중 유지는 같은 추정법이 아닙니다.
문제 3 — 결함 탐지. 작은 \(J\)가 유효한 도구를 증명한다는 주장을 반박하라.
풀이. \(E[zu]=B_0\delta\ne0\)이면 \(E[z(y-x^T(\beta_0+\delta))]=B_0\delta-B_0\delta=0\)입니다. 잘못된 구조계수에서 모든 적률을 맞출 수 있습니다. 따라서 과잉식별 검정과 인과적 설계의 타당성은 다릅니다.
문제 4 — 약한 도구. \(c=1/10\)일 때 두 번째 좌표 오차 \(\varepsilon\)는 어떻게 변하는가?
풀이. \(H(0,\varepsilon)^T=(\sqrt{99}\varepsilon,0)^T\)입니다. 고윳값은 여전히 0,1이지만 거의 10배 증폭됩니다. 작은 분모의 절대 크기는 1차원 조건수 1에 나타나지 않습니다.
문제 5 — 시스템. 두 방정식의 가중 GMM을 Cholesky 최소제곱으로 바꾸어라.
풀이. \(L=L_u\otimes L_z\)이면 \(LL^T=\Omega\)입니다. \(\|L^{-1}(a-B\beta)\|^2\)의 정상식은 \(B^T\Omega^{-1}B\beta=B^T\Omega^{-1}a\)입니다. 직접 가중식과 같지만 구현은 삼각계 풀이 뒤 QR로 합니다. 이 유도에는 \(\Sigma_u,Q_{zz}\succ0\) 및 백색화한 \(B\)의 완전 열계수가 필요합니다.
문제 6 — 분포. 독립 표준정규 \(U,V\)의 비의 밀도를 구하라.
풀이. \((u,v)=(tv,v)\)의 Jacobian 절댓값은 \(|v|\)입니다. 따라서 \(f_T(t)=(2\pi)^{-1}\int |v|e^{-(1+t^2)v^2/2}dv=1/[\pi(1+t^2)]\). 독립성·중심성 가정을 지우고 이 결과를 모든 IV 비율에 적용할 수 없습니다.
10. 지금까지의 내용을 수학의 언어로 정리해 봅시다#
앞에서 계산한 적률 조정을 존재·유일성, 효율성, 검정분포로 나누어 증명합니다. 확률극한의 출발 전제와 선형대수 결론을 구분하자.
정리 1. 가중 최소화와 사각사영#
\(W\succeq0\), \(B^TWB\succ0\)이면 \(q(\beta)\)의 유일한 최소는 \(b=(B^TWB)^{-1}B^TWa\)입니다. 3절의 \(H\)는 상이 \(\operatorname{col}X\)인 멱등사영입니다.
증명. \(B^TW(a-Bb)=0\)입니다. \(\beta=b+d\)를 넣고 전개하면 교차항이 사라져 \(q(b+d)=q(b)+d^TB^TWBd\)입니다. 마지막 항은 \(d\ne0\)에서 양수이므로 존재와 유일성이 성립합니다. \(D=(X^TP_ZX)^{-1}\)로 두면 \(H^2=XD(X^TP_ZX)DX^TP_Z=H\). \(HX=X\)이고 상은 \(\operatorname{col}X\)에 포함되므로 두 공간이 같습니다. 정확식별에서는 \(Z^TX\)가 가역이어서 \(H=X(Z^TX)^{-1}Z^T\)이고, \(Hv=0\)의 양변에 \(Z^T\)를 곱하면 \(Z^Tv=0\)입니다. 역방향도 직접 성립합니다. ∎
정리 2. 최적 가중의 Loewner 최소성#
이는 정리 1. 백색화 사영과 Aitken 하한의 Aitken 증명에서 관측공간의 설계를 적률 Jacobian으로 바꾼 결과입니다. 여기서는 \(\ell\)차원 적률 공간에서 다시 완전히 증명합니다.
\(B_0\) 완전 열계수, \(\Omega\succ0\)일 때 \(CB_0=I\)인 모든 \(C\)에 \(C\Omega C^T\succeq V_*\)입니다.
증명. \(D=C-C_*\)라 놓으면 \(DB_0=0\)입니다. \(\Omega C_*^T=B_0V_*\)이므로 \(D\Omega C_*^T=0\)입니다. 전개하면 \(C\Omega C^T=V_*+D\Omega D^T\). 임의 \(v\)에 \(v^TD\Omega D^Tv=\|\Omega^{1/2}D^Tv\|^2\ge0\)입니다. \(\Omega\succ0\)이므로 행렬 등호는 \(D=0\)일 때에만 성립합니다. 서로 다른 \(W\)가 같은 \(C_*\)를 줄 수 있으므로 가중행렬 자체가 유일하다는 주장은 아닙니다. ∎
정리 3. 비선형 선형화와 J의 극한#
4절의 전제와 내부 정상식 아래 \(\sqrt n(\widehat\theta-\theta_0)\)의 극한 공분산은 \((G^TWG)^{-1}G^TW\Omega WG(G^TWG)^{-1}\)입니다. 최적가중 아래 \(J\Rightarrow\chi^2_{\ell-k}\)입니다.
증명. 정상식 \(\widehat G_n^TW_n\bar g_n(\widehat\theta)=0\)에 적분형 전개를 넣으면
일치성·균일 수렴으로 두 Jacobian은 \(G\)로 갑니다. 극한 가운데 행렬이 가역이므로 역행렬 연속성과 Slutsky가 정규극한을 줍니다. 이 식은 동시에 \(\sqrt n\) 오차의 확률적 유계성을 보장합니다.
최적가중에서는 \(A=\Omega^{-1/2}G\), \(P=A(A^TA)^{-1}A^T\)라 두겠습니다. 백색화한 적률 잔여는 \((I-P)Z+o_p(1)\)로 가며 \(Z\sim N(0,I_\ell)\)입니다. \(P=P^T=P^2\), 계수는 \(k\)입니다. 상과 핵에 맞춘 직교기저에서 제곱노름은 나머지 \(\ell-k\)개 독립 정규의 제곱합입니다. 일관된 공분산 대입에는 다시 Slutsky를 사용합니다. ∎
정리 4. 사각사영의 각도와 다수도구 잡음#
정확식별에서 \(S=\operatorname{col}X\), \(K=\ker Z^T\)라 합시다. \(\sin\theta=\min_{s\in S,\|s\|=1}\operatorname{dist}(s,K)\)로 정의하면 \(\|H\|=1/\sin\theta\)입니다.
증명. 가역 \(Z^TX\)로부터 \(S\cap K=\{0\}\)이고 차원합은 \(n\)이므로 직합입니다. 입력을 \(s+k\)로 쓰면 \(H(s+k)=s\)입니다. 고정 \(s\)에서 분모 \(\|s+k\|\)의 최솟값은 \(\operatorname{dist}(s,K)\)입니다. 모든 단위 \(s\)에 상한을 취하면 식을 얻습니다. 유한차원 단위구의 콤팩트성과 직합성으로 최솟값은 양수입니다.
또한 \(E[uv^T\mid Z]=\sigma_{uv}I\)이면 \(E[v^TP_Zu\mid Z]=\operatorname{tr}(P_ZE[uv^T\mid Z])=\sigma_{uv}\operatorname{rank}Z\)입니다. 이는 분자 항의 정확한 기댓값이며 비율 추정량의 편향과 구별합니다. ∎
도구변수의 적률 조건과 가중치의 선택은 서로 다른 역할을 합니다. 다음 장에서는 여러 시점과 집단의 자료에서 고정효과를 제거하며, 남은 변동이 계수를 어떻게 식별하는지 확인합니다. E6로 이어 읽기.