📚 基础知识库 · KNOWLEDGE BASE / GMM

本页属于结构估计「基础知识库」。定位:先单独学会这个工具,再到模型分支里看它怎么用。当分布写不出来、只能写出几个"条件矩为零"的方程时,MLE 失效、GMM 上场。本页按「是什么 → 为什么学 → 数学定义 → 直觉 → 逐步操作 → 完整代码 → 常见错误」讲透;掌握后再回模型分支看它如何嵌入。

🔗 本工具在哪些模型分支中使用:
📚 前置条件与学习依赖 / Prerequisites
① 数学/统计基础:矩估计(MoM)到 GMM 的推广;矩阵代数(投影矩阵、Sandwich 方差 $(G'WG)^{-1}G'W\Omega WG(G'WG)^{-1}$);渐近分布(Lindeberg–Levy CLT、Slutsky 定理);两步 GMM 最优权重矩阵 $W^*=\Omega^{-1}$ 的推导。
② 经济学理论前置:Wooldridge 水平;内生性与工具变量(IV)直觉,理解 OLS 为什么在遗漏变量/测量误差下偏误;消费者跨期优化(效用贴现、欧拉方程)。
③ 软件/计算前置:Stata(ivreg2gmm)或 Python(手写 scipy.optimize 矩条件 + statsmodels 辅助)。
④ 站内前置页面:先学 01 极大似然估计 MLE,理解渐近理论与数值优化的共用直觉。
⑤ 难度分级:进阶

01 经济环境与假设

GMM(Generalized Method of Moments, Hansen 1982)是为"写不出完整分布、但能写出矩条件"的环境准备的。它适用的经济环境有三个关键特征:

1.1 矩条件可由经济理论推出

最常见的矩条件来源有三类:

  • 正交性条件:工具变量与误差项不相关,$E[Z_i\varepsilon_i]=0$(IV 回归、动态面板);
  • 最优化一阶条件:家庭/企业最优化的 Euler 方程,如 $E[\beta(1+r_{t+1})(c_{t+1}/c_t)^{-\sigma}-1\mid z_t]=0$;
  • 矩匹配:模型预测矩 = 数据矩(SMM、BLP)。

这些矩条件的共同形式是:存在一个向量函数 $g_i(\theta)$,使得在真实参数 $\theta_0$ 处 $E[g_i(\theta_0)]=0$。

1.2 不需要完整分布假设

与 MLE 不同,GMM 不要求知道 $\varepsilon_i$ 的完整分布形状。你只需要知道"某个变量与误差不相关"这种正交关系。这在误差分布形状未知、或误设代价大的结构模型里特别重要——比如消费欧拉方程,没人知道跨期替代弹性 $\sigma$ 的误差服从什么分布,但最优化一阶条件是清清楚楚的。

1.3 依赖结构与渐近近似

GMM 的一致性与渐近正态性需要:样本矩满足大数定律(独立或弱依赖)、标准化样本矩满足中心极限定理、矩条件关于 $\theta$ 可微、且 $E[\partial g_i/\partial\theta']$ 满秩。时间序列数据要求平稳遍历;面板数据要求个体间独立。

GMM 环境一句话总结

当经济模型能推出"一组期望为零的正交条件",但你不想(或不能)对误差分布做强假设时,用 GMM。MLE 是"用得分作矩条件"的 GMM 特例。

02 完整模型一:线性 IV 模型

2.1 模型设定与经济背景

线性工具变量模型
$$y_i = x_i'\beta + \varepsilon_i,\qquad E[z_i'\varepsilon_i]=0$$

经济背景:估计教育回报率 $y_i=\log(\text{wage}_i)=\beta_0+\beta_1\,S_i+\beta_2\,\text{experience}_i+\varepsilon_i$,其中教育年限 $S_i$ 与能力 $\varepsilon_i$ 相关(能力高的人既多上学又工资高),OLS 估计 $\beta_1$ 有偏。工具变量 $z_i$(如出生季度、距大学距离)需要与 $S_i$ 相关、但与 $\varepsilon_i$ 不相关。

2.2 为什么用 IV?矩条件的经济含义

OLS 的识别假设是 $E[x_i\varepsilon_i]=0$。当 $x_i$ 中有内生变量(如教育与能力相关),这一假设被破坏。IV 方法把"正交"对象从 $x_i$ 换成工具变量 $z_i$:

IV 矩条件(正交性)
$$E[z_i'\,(y_i-x_i'\beta)]=0$$

经济含义:工具变量 $z_i$ 通过"因果通道"影响内生变量 $x_i$,但不通过任何其他通道影响 $y_i$,因此它与结构误差 $\varepsilon_i$ 正交。例如出生季度影响上学年龄(相关),但与个人能力、家庭背景无关(外生)。

2.3 从矩条件到估计量

样本矩是 $\bar g_n(\beta)=\frac1n Z'(y-X\beta)=\frac1n\sum_i z_i(y_i-x_i'\beta)$。当工具个数 $L$ 等于参数个数 $K$(恰好识别),令 $\bar g_n=0$ 直接解出 $\hat\beta_{IV}=(Z'X)^{-1}Z'y$。当 $L>K$(过度识别),矩方程多于未知数,GMM 用二次距离最小化(见第 5 节)。

03 完整模型二:消费欧拉方程

这是 GMM 最经典的"不是回归、而是最优化一阶条件"的应用。

3.1 家庭跨期优化问题

考虑一个无限期家庭,选择消费序列 $\{c_t\}$ 最大化期望折现效用:

家庭最优化问题
$$\max_{\{c_t\}}\; E_0\sum_{t=0}^{\infty}\beta^t\frac{c_t^{1-\sigma}}{1-\sigma},\quad \text{s.t.}\quad a_{t+1}=(1+r_{t+1})(a_t+y_t-c_t)$$

其中 $\beta$ 是主观贴现因子,$\sigma$ 是相对风险厌恶系数(也是跨期替代弹性的倒数),$r_{t+1}$ 是资产回报率。

3.2 推导欧拉方程

在 $t$ 期,家庭权衡"今天少消费 1 单位、存到明天"的成本与收益:今天少消费的边际效用损失是 $u'(c_t)=c_t^{-\sigma}$;明天多消费 $(1+r_{t+1})$ 单位的期望边际效用收益是 $E_t[\beta(1+r_{t+1})u'(c_{t+1})]$。最优时两者相等:

消费欧拉方程(Euler equation)
$$u'(c_t)=E_t\big[\beta(1+r_{t+1})u'(c_{t+1})\big]$$ $$\Longleftrightarrow\quad E_t\Big[\beta(1+r_{t+1})\Big(\frac{c_{t+1}}{c_t}\Big)^{-\sigma}-1\Big]=0$$

把它写成无条件期望形式(用迭代期望 law of iterated expectations),并用 $t$ 期信息集 $z_t$ 中的变量做工具:

可估计的矩条件
$$E\Big\{z_t\cdot\Big[\beta(1+r_{t+1})(c_{t+1}/c_t)^{-\sigma}-1\Big]\Big\}=0$$

这里 $z_t$ 必须是 $t$ 期(或更早)已知的变量——滞后消费增长、滞后利率等——因为 $t$ 期信息对家庭已知,所以预测误差与 $z_t$ 正交。这就是 Hall (1978)、Hansen-Singleton (1982) 的经典设定。

3.3 为什么用 GMM 而不是 MLE?

欧拉方程只给出"预测误差与 $t$ 期信息正交"的矩条件,没有给出误差项的完整分布。你可以假设误差服从对数正态,但这是额外假设;GMM 不需要这个假设,只用矩条件就能估计 $\beta$ 和 $\sigma$。这正是 GMM 替代 MLE 的典型场景。

04 矩条件、识别:阶条件与秩条件

设矩条件个数为 $L$,参数个数为 $K$,矩条件关于参数的导数矩阵为 $G=E[\partial g_i(\theta_0)/\partial\theta']$。

4.1 识别的定义

参数 $\theta_0$ 被识别,当且仅当:若 $\theta\neq\theta_0$,则 $E[g_i(\theta)]\neq 0$。换句话说,只有真值能让所有矩条件同时成立。

4.2 阶条件(order condition)

阶条件
$$L \ge K$$

矩条件个数至少等于参数个数。这是必要条件,不是充分条件。

4.3 秩条件(rank condition)

秩条件(充分)
$$\text{rank}(G)=K\quad\text{(满秩)}$$

在线性 IV 模型里,$G=-E[Z_i X_i']$,秩条件等价于"工具变量与内生解释变量足够相关"——即第一阶段回归矩阵 $E[Z_i'X_i]$ 列满秩。这正是"工具相关性"的数学表达。

情形阶条件秩条件权重矩阵J 检验
恰好识别 $L=K$满足需满秩任意 $W$ 给同一估计量无多余矩,无法检验
过度识别 $L>K$满足需满秩$W$ 影响效率,应选 $S^{-1}$可做 Hansen J 检验
识别不足 $L<K$不满足不满足

05 GMM 估计量推导与最优权重

GMM 的目标函数是把样本矩向量 $\bar g_n(\theta)$ 用权重矩阵 $W$ 做二次型:

GMM 准则函数
$$J(\theta)=n\,\bar g_n(\theta)'\,W\,\bar g_n(\theta),\qquad \hat\theta_{GMM}=\arg\min_\theta J(\theta)$$

对线性 IV 模型 $\bar g_n(\beta)=\frac1n Z'(y-X\beta)$,一阶条件 $\partial J/\partial\beta=0$ 给出解析解:

线性 GMM 估计量(逐步推导)
$$\frac{\partial J}{\partial\beta}=2n\cdot\frac{1}{n}(-X'Z)\,W\,\frac{1}{n}Z'(y-X\beta)=0$$ $$\Longrightarrow\;X'ZWZ'X\,\beta=X'ZWZ'y$$ $$\Longrightarrow\;\hat\beta_{GMM}(W)=\big(X'Z W Z'X\big)^{-1}X'Z W Z'y$$

关键问题:权重矩阵 $W$ 怎么选?Hansen (1982) 证明,最优权重矩阵是矩条件渐近方差矩阵的逆,让"方差大、噪声多的矩"权重小:

最优权重矩阵与渐近方差
$$W^{*}=S^{-1},\qquad S=E\big[g_i(\theta_0)g_i(\theta_0)'\big]$$ $$\sqrt n(\hat\theta-\theta_0)\xrightarrow{d}N\!\big(0,\;(G'S^{-1}G)^{-1}\big)$$

直观:方差 $S$ 大的矩信噪比低,应该少听它的话;方差小的矩精确,应该权重高。用 $W=S^{-1}$ 得到的 GMM 估计量渐近有效。麻烦在于 $S$ 本身依赖未知 $\theta_0$,无法直接算——这就是"两步法"存在的原因。

06 两步 / 迭代 / 连续更新 GMM

因为 $S(\theta)$ 依赖 $\theta$,GMM 实际是"估计权重—估计参数—更新权重—再估参数"的循环。三种主流实现:

① 两步 GMM(Two-step GMM)
第 1 步用任意权重 $W_1=I$(或 2SLS 权重)得到一致初值 $\hat\theta^{(1)}$;用 $\hat\theta^{(1)}$ 估计 $\hat S=(1/n)\sum_i g_i(\hat\theta^{(1)})g_i(\hat\theta^{(1)})'$;第 2 步用 $W_2=\hat S^{-1}$ 重新最小化 $J$。最常用。
② 迭代 GMM(Iterated GMM)
把"用当前 $\hat\theta$ 重估 $\hat S$,再最小化 $J$"重复若干次直到 $\hat\theta$ 收敛。小样本性质通常比两步法略好。
③ 连续更新 GMM(CUE, Continuous Updating, Hansen-Heaton-Yaron 1996)
把 $S(\theta)$ 直接写进目标函数 $J(\theta)=n\bar g_n(\theta)'\hat S(\theta)^{-1}\bar g_n(\theta)$,一步同时对 $\theta$ 和 $S(\theta)$ 最小化。渐近性质最优,但目标函数非凸,容易有多个局部解,对弱矩敏感。
小样本注意

两步 GMM 在过度识别、$n$ 不大时往往过度拒绝(过度精确)。经验做法:报告两步 GMM,同时用迭代 GMM / CUE 作稳健性;并把协方差用 Newey-West / cluster 调整。

07 Hansen J 检验

过度识别时,最优 GMM 在真实 $\theta_0$ 处的最小化目标函数 $J(\hat\theta)$ 有一个标准的渐近分布。Hansen (1982) 证明:

Hansen J 统计量
$$J=n\,\bar g_n(\hat\theta)'\hat S^{-1}\bar g_n(\hat\theta)\;\xrightarrow{d}\;\chi^2(L-K)$$

自由度 = 多余矩个数 $L-K$。直觉:$J$ 衡量"最优 GMM 后样本矩还有多离谱"。如果模型正确,剩下的离差只是抽样噪声,服从 $\chi^2$。若 $J$ 过大(p 值很小),说明至少有一个矩条件被模型拒绝,即过度识别约束不成立

J 检验不是"模型对"的证明

J 检验只检验"所有矩条件一起成立",它对弱矩、异方差、序列相关都敏感。J 不显著 ≠ 模型正确,只能说明"在现有矩条件下没找到拒绝证据"。

08 与 2SLS 的关系、弱工具变量

8.1 2SLS 是 GMM 的特例

线性 GMM 估计量 $\hat\beta_{GMM}(W)=(X'ZWZ'X)^{-1}X'ZWZ'y$。取 $W=(Z'Z)^{-1}$(即同方差下的"自然"权重)时回到 2SLS

2SLS 作为 GMM 的特例
$$W=(Z'Z/n)^{-1}\;\Longrightarrow\;\hat\beta_{2SLS}=(X'P_Z X)^{-1}X'P_Z y,\quad P_Z=Z(Z'Z)^{-1}Z'$$

取 $W=\hat S^{-1}$(异方差稳健权重)则是最优 GMM(异方差稳健 GMM)。结论:2SLS 是 GMM 在"同方差"假设下的特例;当存在异方差时,最优 GMM 比 2SLS 更有效。

8.2 弱工具变量问题

当工具变量与内生变量相关性很弱(第一阶段 $F$ 统计量接近 1)时:

  • GMM/2SLS 的小样本偏误很大,估计值朝 OLS 方向偏;
  • 渐近正态分布严重失真,标准误不可信;
  • Hansen J 检验也会失效。

诊断:第一阶段 F > 10(Stock-Yogo 经验阈值)才认为工具足够强;否则应报告 weak-IV robust 推断(如 Anderson-Rubin 置信集),而不是 GMM 点估计。需要强调的是,弱工具问题在小样本与过度识别时尤为严重:工具越多、样本越小,GMM 的偏误越大,渐近正态近似越不可靠,此时即使 Hansen J 检验不显著也不能对参数值下定论。

在实践中,若第一阶段 F 不足,常见应对有三种:一是筛选掉最弱的工具、减少过度识别个数;二是改用对弱工具更稳健的 LIML / Fuller 估计量;三是放弃点估计,直接报告 Anderson-Rubin 对参数的置信区间——后者在工具弱时仍然有效,是最稳妥的做法。

09 数据要求:工具变量的有效性

GMM 对数据的核心要求全部围绕"工具变量是否有效"展开,分两个条件:

9.1 相关性(relevance)

工具变量 $z_i$ 必须与内生解释变量 $x_i$ 有非零的偏相关。检验方法:第一阶段回归 $x_i=\pi' z_i+v_i$,检验工具系数联合显著性的 $F$ 统计量。$F>10$ 是经验阈值(Stock-Yogo),$F<10$ 说明弱工具问题。

9.2 外生性(exogeneity / exclusion restriction)

工具变量必须与结构误差 $\varepsilon_i$ 不相关,即 $E[z_i\varepsilon_i]=0$。这个条件无法直接检验——它是识别假设,必须由经济论证:工具只能通过内生变量影响被解释变量,不能有其他通道。过度识别时,Hansen J 检验可以间接检验"是否所有工具都外生",但弱工具下 J 检验本身不可靠。

9.3 样本量与矩条件个数

线性 IV 模型 $n$ 至少几百;非线性 GMM(如欧拉方程)通常需要 $n\ge 1000$。矩条件个数 $L$ 不宜过多——每多加一个弱工具,反而会放大小样本偏误。经验法则:参数 $K$ 之外,多余矩 $L-K$ 控制在 $K$ 以内。

10 代码:两步 GMM 完整实现

下面用模拟数据估计一个带内生解释变量的线性模型 $y=x_1\beta_1+x_2\beta_2+u$,其中 $x_2$ 内生、$x_1$ 外生,用 $z_1,z_2$ 作工具变量,手写两步 GMM 并算 J 统计量。

python
import numpy as np
from scipy.optimize import minimize
from scipy.stats import chi2

# ---------- 1. 造模拟数据 ----------
np.random.seed(2026)
n = 2000
# 外生变量 x1, 工具 z1,z2(与 x2 相关)
z1 = np.random.randn(n)
z2 = np.random.randn(n)
x1 = np.random.randn(n)
# 内生变量 x2 = 0.8*z1 + 0.5*z2 + 0.3*x1 + v(与 u 相关 -> 内生)
v = np.random.randn(n)
u = 0.7*v + np.random.randn(n)        # u 与 v 相关 => x2 内生
x2 = 0.8*z1 + 0.5*z2 + 0.3*x1 + v

beta_true = np.array([1.0, 0.5, -0.3])  # [截距, b_x1, b_x2]
X = np.column_stack([np.ones(n), x1, x2])
y = X @ beta_true + u

# 工具变量矩阵 Z:[1, x1, z1, z2]  (z1,z2 是额外工具,L>K -> 过度识别)
Z = np.column_stack([np.ones(n), x1, z1, z2])
L, K = Z.shape[1], X.shape[1]         # L=4 个矩, K=3 个参数 -> 过度识别

# ---------- 2. 矩条件:g_i(beta) = Z_i' * u_i = Z_i'*(y_i - X_i beta) ----------
def moments(beta):
    u_hat = y - X @ beta
    return (Z * u_hat[:, None])        # n x L,每行是 g_i

# ---------- 3. 给定权重 W,最小化 J(beta)=n * gbar' W gbar ----------
def J(beta, W):
    gbar = moments(beta).mean(axis=0)  # L-vector
    return n * gbar @ W @ gbar

# ---------- 4. 第一步:W1 = (Z'Z/n)^-1  -> 等价 2SLS ----------
W1 = np.linalg.inv(Z.T @ Z / n)
res1 = minimize(J, np.zeros(K), args=(W1,), method='BFGS')
b1 = res1.x

# ---------- 5. 用第一步残差估计 S = E[g_i g_i'] ----------
g1 = moments(b1)                       # n x L
S = (g1.T @ g1) / n                    # 矩条件长期方差(i.i.d. 下即此式)
W2 = np.linalg.inv(S)

# ---------- 6. 第二步:最优 GMM ----------
res2 = minimize(J, b1, args=(W2,), method='BFGS')
b2 = res2.x

# ---------- 7. 标准误:var = (G' S^-1 G)^-1 / n ----------
# 矩条件对 beta 的导数 G = E[∂g_i/∂beta'] = -E[Z_i X_i'] = -Z'X/n
G = -(Z.T @ X) / n
A = G.T @ W2 @ G
vcov = np.linalg.inv(A) / n
se = np.sqrt(np.diag(vcov))

# ---------- 8. Hansen J 统计量 ----------
gbar_b2 = moments(b2).mean(axis=0)
J_stat = n * gbar_b2 @ W2 @ gbar_b2
df = L - K
pval = 1 - chi2.cdf(J_stat, df)

# ---------- 9. 第一阶段 F 统计量(工具相关性诊断) ----------
from numpy.linalg import lstsq
Zall = np.column_stack([np.ones(n), x1, z1, z2])
b_first = lstsq(Zall, x2, rcond=None)[0]
resid_fs = x2 - Zall @ b_first
# 简化:直接报告 z1,z2 的系数(应显著为正)
print("真实 beta :", beta_true)
print("两步GMM beta:", np.round(b2, 4))
print("标准误     :", np.round(se, 4))
print(f"第一阶段系数 z1={b_first[2]:.3f}, z2={b_first[3]:.3f}(应显著为正)")
print(f"Hansen J = {J_stat:.3f}, df={df}, p = {pval:.3f}")
怎么读结果

两步 GMM 系数应接近真值 $[1.0,0.5,-0.3]$;OLS 会因为 $x_2$ 内生而偏离。J 统计量在数据确实由模型生成时应当不显著(p 较大);若 p 很小,说明工具/模型设定被拒绝。生产代码可用 linearmodelsIVGMM 包。

11 应用解读:如何报告 GMM 结果

11.1 系数与标准误

报告两步 GMM 点估计(或迭代/CUE 稳健性),括号里写异方差稳健(或 cluster/Newey-West)标准误。系数解释与 OLS 相同——线性模型里就是偏效应;非线性 GMM(如欧拉方程)要解释结构参数($\sigma$ 是风险厌恶系数,$\beta$ 是贴现因子)。

11.2 第一阶段与弱工具诊断

必须报告第一阶段 $F$ 统计量(或 partial $R^2$)。$F>10$ 才能说"工具足够强";$F<10$ 时要改用 Anderson-Rubin 置信集或 LIML,不要只报 GMM 点估计。

11.3 Hansen J 检验

过度识别时必须报告 $J$ 统计量与 p 值。J 不显著(p>0.1)说明"没有证据拒绝过度识别约束";J 显著则说明至少一个工具可能不外生,需要排查。

11.4 报告模板

一张标准 GMM 结果表至少包含:GMM 系数(括号 robust se)、显著性星号、观测数 $n$、第一阶段 $F$、Hansen $J$ 与 p 值、过度识别自由度 $L-K$。

12 论文案例

英文 · 理论奠基
Large Sample Properties of Generalized Method of Moments Estimators
L. P. Hansen, Econometrica, 1982, 50(4): 1029–1054.
证明 GMM 的一致性、渐近正态性、最优权重选择,并引入 overidentifying restrictions 的 J 检验,是 GMM 一切应用的理论源头,后获 2013 年诺贝尔经济学奖。
英文 · 经典应用
Generalized Instrumental Variables Estimation of Nonlinear Rational Expectations Models (Consumption Euler GMM)
L. P. Hansen & K. J. Singleton, Econometrica, 1982, 50(5): 1269–1286.
用消费欧拉方程的矩条件估计跨期替代弹性,是 GMM 在宏观经济学的开山应用,也是本页第 3 节欧拉方程案例的原始出处。
英文 · 面板 GMM
Some Tests of Specification for Panel Data: Monte Carlo Evidence and an Application to Employment Equations
M. Arellano & S. Bond, Review of Economic Studies, 1991, 58(2): 277–297.
差分 GMM / 系统 GMM 的奠基性论文,把 GMM 应用到动态面板,并用 Sargan/Hansen J 检验检验过度识别。中文宏观、金融面板论文大量沿用此方法。
中文 · 结构/半结构估计应用
中国工业企业全要素生产率估计:1999—2007
鲁晓东、连玉君,《经济学(季刊)》,2012,11(2): 541–558.
OP/LP 半结构估计本质上是用矩条件(投资/中间投入作为代理变量的单调性条件)识别生产函数参数,与 GMM 的"矩识别"思想一脉相承,是中文文献里结构矩方法的代表作。
中文 · 结构估计应用
中国制造业企业全要素生产率研究
杨汝岱,《经济研究》,2015,50(2): 61–74.
在估计生产函数时使用了 Olley-Pakes / Levinsohn-Petrin 等矩识别方法,并讨论了 GMM 在解决同时性与选择偏误中的角色,是《经济研究》上结构/矩估计范式的代表。

13 常见错误

错误 1:第一步权重随手设,又用它算标准误

第一步 $W_1=I$ 只用于拿初值;标准误与 J 检验必须用第二步的 $\hat S^{-1}$。混用会高估精度。

错误 2:异方差/序列相关下仍用 i.i.d. 协方差

$\hat S$ 必须用 Newey-West(时间序列)或 cluster-robust(面板)调整;否则标准误和 J 统计量都失真。

错误 3:弱工具却报 GMM 点估计

第一阶段 F 统计量低时,GMM 偏误大、推断不可靠。先报第一阶段 F,弱工具要换 Anderson-Rubin 置信集。

错误 4:把 J 检验当万能模型检验

J 只检验过度识别约束,且对弱矩敏感。模型误设要靠额外的子样本、额外矩、诊断回归来查,不能只看 J 不显著。

错误 5:把"工具外生性"当成可检验假设

外生性 $E[z_i\varepsilon_i]=0$ 在恰好识别时无法检验,只能靠经济论证。过度识别时 J 检验也只是"间接"证据,不能替代论证。

错误 6:矩条件个数越多越好

每加一个弱矩条件,小样本偏误和方差都可能上升。矩条件不是越多越好,要精选"强且外生"的工具。

错误 7:欧拉方程用当期变量做工具

欧拉方程矩条件里 $z_t$ 必须是 $t$ 期信息集内的变量(滞后变量),不能用 $t+1$ 期变量——后者与预测误差相关,矩条件失效。

14 进阶资料

  • Hansen, Heaton & Yaron (1996), "Finite Sample Properties of Some Alternative GMM Estimators", JBES —— 两步 vs 迭代 vs CUE 的小样本比较。
  • Hayashi, Econometrics, 2000, Ch.3/4 —— GMM 与 IV/2SLS 关系的标准教材。
  • Stock, Wright & Yogo (2002), "A Survey of Weak Instruments in IV Regression", Journal of Business & Economic Statistics.
  • 软件:Python linearmodels.iv.gmm;MATLAB gp_gmm 包;R gmm 包。