经济与商务实证研究方法

第 1 周:研究设计、因果推断与 AI 时代实证研究

陈志远

中国人民大学商学院

2026-04-18

你研究能力的边界有多大?

2010 年代的研究边界

  • 文献综述:手工阅读 200 篇论文需要数月
  • 测度:人工编码 1000 条文本需要数周
  • 稳健性检验:每次改变规格需要重新跑代码
  • 复现:一个数据管理流程写出来就是一学期

2026 年的研究边界

  • 文献综述:LLM 筛选 10,000 篇摘要,一小时内归类
  • 测量:提示词标注百万条政策文本,带验证
  • 稳健性:AI辅助批量规格搜索,带程序检验
  • 复现:AI 读懂代码逻辑,生成可执行程序与手册

本课程的核心承诺

不是“学一些 AI 工具”

是学习 AI 如何改变了哪些研究问题是可行的—— 以及当 AI 介入时,研究者的判断在哪里不能缺席。

五个支柱,贯穿整个学期

支柱 核心问题
减少形式因果推断 什么使识别策略可信?
因果机器学习 ML 如何辅助识别,而非替代它?
结构估计 什么问题只能用结构模型回答?
LLM 文本分析 如何用 AI 构建可靠的测量?
AI 研究自动化 边界在哪里?治理规则是什么?

但 AI 不会替你思考

虚假自信风险(False-Confidence Risk)

AI 工具扩大了研究的规模,但不能替代研究者的判断

  • 幻觉引用:GPT 自信给出从未存在的文献
  • 无验证代码:Copilot 写出“看起来对”却计算错误的统计量
  • 自动化 p-hacking:大规模规格搜索而不控制多重检验
  • 测量漂移:同一提示词在不同上下文产生不一致标注

本课程的回应:信任但验证(Trust but Verify)

每次使用 AI 工具,你都需要留下: 使用了什么工具 / 做了什么任务 / 接受了什么 / 拒绝了什么 / 如何验证

一、三类实证问题

实证研究的三种提问方式

描述性问题(Descriptive)

世界是什么样的?

“中国企业 R&D 支出占销售额的比例有多高?”

因果问题(Causal)

某一变量的变化导致了什么?

“政府补贴是否提高了企业 R&D 支出?”

反事实问题(Counterfactual)

如果政策不同,结果会怎样?

“如果将补贴提高 50%,R&D 支出会增加多少?”

三类问题需要不同工具

问题类型 核心需求 主要方法
描述性 代表性样本 + 准确测量 描述统计、指数构建、LLM 测量
因果 外生变异(识别策略) DID、IV、RD、实验
反事实 结构模型(机制) 需求估计、引力模型、DSGE

最常见的混淆

相关性当作因果,或把局部处理效应外推为政策效果

回归系数 \hat{\beta} 从来不是自动的因果估计量—— 识别策略才是让 \hat{\beta} 具有因果含义的东西。

练习:给这些问题分类

下面每个问题是描述性、因果,还是反事实?

  1. “北京 PM2.5 浓度近十年如何变化?”

  →   描述性

  1. “空气污染是否缩短了北京居民的预期寿命?”

  →   因果

  1. “如果北京实施更严格的排放标准,死亡率会下降多少?”

  →   反事实

  1. “哪些行业在降污方面表现最差?”

  →   描述性

  1. “企业面临碳税会减少多少排放量?”

  →   反事实(需结构模型)

AI 工具与问题类型的匹配

AI 在描述性研究中最强

LLM 标注、文本分类、非结构化数据测量—— AI 工具天然擅长大规模描述性测量任务。

因果与反事实问题不能外包给 AI

无论 AI 生成多少代码,识别假设必须由研究者来论证。

“平行趋势假设成立”不是 AI 能替你证明的—— 这是研究设计问题,不是计算问题。

二、因果推断的基本问题

为什么因果推断难?

问题:健身房锻炼能减重吗?

你比较了两组人:

  • 每周去健身房 ≥3 次的人,平均 BMI = 23
  • 从不去健身房的人,平均 BMI = 26

这个比较说明了什么?

什么都说明不了——或者说得更准确:它不能告诉我们健身是否有效

去健身房的人在饮食、动机、基础健康等方面本来就与不去的人不同。 这就是选择偏差(Selection Bias)。

潜在结果框架

潜在结果(Potential Outcomes)

设个体 i 的处理状态为 D_i \in \{0, 1\},定义:

  • Y_i(1)如果 个体 i 接受处理,其结果
  • Y_i(0)如果 个体 i 未接受处理,其结果

观测到的结果为:Y_i = D_i \cdot Y_i(1) + (1-D_i) \cdot Y_i(0)

因果推断的基本问题(Fundamental Problem of Causal Inference)

对任意个体 i,我们只能观测到 Y_i(1)Y_i(0) 中的一个, 永远无法同时观测两者。

\underbrace{Y_i(1) - Y_i(0)}_{\text{个体处理效应}} \quad \text{永远无法直接计算}

平均处理效应

研究者关注的是平均处理效应(Average Treatment Effect, ATE),而非个体效应: \text{ATE} = E[Y_i(1) - Y_i(0)]

更进一步,我们还关注处理组的平均处理效应(Average Treatment Effect on the Treated, ATT)\text{ATT} = E[Y_i(1) - Y_i(0) | D_i=1] . . .

为什么不直接用均值差?

\underbrace{E[Y_i | D_i=1] - E[Y_i | D_i=0]}_{\text{观测到的均值差}} = \underbrace{ E[Y_i(1) - Y_i(0) | D_i=1]}_{\text{ATT}} \quad \quad \quad \quad \quad+ \underbrace{E[Y_i(0)|D_i=1] - E[Y_i(0)|D_i=0]}_{\text{选择偏差}}

选择偏差不为零,当且仅当处理组和控制组的潜在结果本来就不同—— 而这几乎是所有非随机数据的常态。

选择偏差的直觉:用 Python 模拟

import numpy as np
import matplotlib.pyplot as plt

np.random.seed(42)
n = 500

# 潜在结果由"健康意识"驱动
health_motive = np.random.normal(0, 1, n)          # 越高越健康
gym = (health_motive + np.random.normal(0, 0.5, n)) > 0.5  # 健康的人更去健身
y0 = 25 - 2 * health_motive + np.random.normal(0, 1, n)    # BMI:意识越强越低
y1 = y0 - 1.0                                               # 真实效应:健身减少 1 个 BMI 单位

y_obs = np.where(gym, y1, y0)  # 观测值

naive = y_obs[gym].mean() - y_obs[~gym].mean()
print(f"真实 ATE = {(y1 - y0).mean():.2f}")
print(f"朴素均值差 = {naive:.2f}  ← 选择偏差拉大了估计量")
真实 ATE = -1.00
朴素均值差 = -4.00  ← 选择偏差拉大了估计量

朴素比较高估了效应,因为去健身的人本来就更健康——选择偏差为负。

随机实验如何解决这一问题

随机化的作用

D_i 随机分配,则:

E[Y_i(0) | D_i=1] = E[Y_i(0) | D_i=0]

选择偏差 = 0,均值差即为 ATE。

Card & Krueger (1994) ——自然实验的经典

1992 年新泽西州提高最低工资,宾夕法尼亚州不变。 两州快餐就业变化量的差即为最低工资效应的识别。

核心思想

不比较两组的水平值(会有选择偏差), 而比较两组的变化量(差分法,差消基线差异)。

识别的核心逻辑

识别策略(Identification Strategy)

用数据论证“在我们的设定下,观测均值差 ≈ 因果效应”的论证路径。

每一个可信的因果研究,都必须明确回答: 为什么选择偏差在这里为零或可忽略?

本课程四种核心识别工具:

工具 核心假设 典型场景
RCT 随机化 田野实验、医药试验
DID 平行趋势 政策分组 × 时间
IV/2SLS 排他性限制 工具变量研究
RD 连续性假设 阈值规则

三、研究设计工具箱

从 RCT 到自然实验的谱系

越向右,识别假设越强、越需要论证,但研究问题的范围越广。

双重差分法(DID)预览

双重差分法(Difference-in-Differences, DiD)

\hat{\tau}_{DID} = \underbrace{(\bar{Y}_{T,\text{post}} - \bar{Y}_{T,\text{pre}})}_{\text{处理组变化}} - \underbrace{(\bar{Y}_{C,\text{post}} - \bar{Y}_{C,\text{pre}})}_{\text{控制组变化}}

核心假设:若无处理,处理组与控制组的变化趋势相同(平行趋势)。

第 3 周将深入讲解:

  • 交错处理时序下 TWFE 的缺陷
  • Callaway-Sant’Anna 估计量
  • 事件研究图与预趋势检验

工具变量法(IV)预览

问题:如果 D_i 是内生的(与 \varepsilon_i 相关),OLS 有偏。

工具变量(Instrumental Variable, IV)

寻找变量 Z_i,满足:

  • 相关性Z_iD_i 高度相关
  • 排他性Z_i 只通过 D_i 影响 Y_i,不直接影响

经典例子: Angrist (1990) 用越战服役抽签号码作为工具变量, 识别服兵役对收入的因果效应。

断点回归法(RD)预览

思想:在某一阈值两侧,个体“几乎一样”—— 阈值处的结果跳跃即为处理效应。

Angrist & Lavy (1999):Maimonides 规则

以色列法规:班级人数超过 40 人则分班。 39 人的班 vs 40 人的班——几乎一样,但班级规模突变。 这个班级规模变化对学生成绩的影响可被识别。

核心假设:潜在结果在阈值处连续(无人操纵分班阈值)。

本课程的识别策略地图

四、AI 时代的实证研究格局

AI 扩展了研究的可行边界

以前受制于数据规模的研究问题,现在可以做了:

Fang, Li & Lu (2025) ——解码中国产业政策

用 LLM 从数百万份政府文件中提取结构化政策信息, 构建覆盖 1990–2020 年的细粒度产业政策数据库—— 这在人工编码时代根本不可行。

Ludwig, Mullainathan & Rambachan (2025)

提出 LLM 作为计量经济学工具的统一框架, 区分预测估计,强调需要人工标注的验证样本。

文献综述自动化

传统流程:搜索 → 阅读摘要 → 人工筛选 → 全文阅读

AI 增强流程:

  1. 语义搜索(Semantic Search)批量筛选相关文献
  2. LLM 提取每篇论文的研究问题 / 方法 / 结论
  3. 研究者审阅 LLM 摘要,决定哪些值得精读
  4. Zotero + Claude Code 管理引用数据库

风险:幻觉引用

LLM 可以自信地生成从未存在的论文标题和作者。 每一条引用必须在原始数据库中验证——这是不可外包的。

AI 辅助编码与复现

Copilot 辅助的典型工作流

  1. 研究者描述需求(自然语言)
  2. Copilot 生成 Stata/Python 代码草稿
  3. 研究者阅读并理解每一行代码
  4. 运行 → 查看结果 → 验证是否合理
  5. 写简短审计备注:接受了什么 / 改了什么 / 为什么

判断代码是否正确的责任永远在研究者身上。

“AI 写的代码,所以我不确定对不对”——这不是学术免责声明。

LLM 作为实证测量工具

核心问题: LLM 标注的文本变量,能用于下游因果分析吗?

三层效度问题

  • 构念效度:提示词真的测量了你想测的概念吗?
  • 标注可靠性:不同提示、不同时间,标注稳定吗?
  • 下游推断偏差:用 LLM 测量值做回归,估计量有偏吗?

提示

Ludwig et al. (2025) 的结论:LLM 测量值 + 人工验证样本 + 误差修正, 可以产生有效的下游推断——但必须设计这个验证流程。

信任但验证:本课程的 AI 使用原则

AI 使用审计日志模板

每次提交中,AI 使用的记录必须包含:

  • 工具:Copilot / Claude / Cursor /DeepSeek /…
  • 任务:代码生成 / 文献筛选 / 文本标注 / …
  • 接受的输出:具体说明接受了什么(附例子)
  • 拒绝或修改的输出:附修改说明
  • 验证方式:如何确认最终结果是正确的

这不是额外负担——这是现代研究的可重复性标准。

AI 的边界在哪里?

本讲要点

本讲要点(一)

  1. AI 改变了可行研究的边界
    • 规模扩大:文献、测量、代码生成均可辅助
    • 但因果逻辑不能外包
  2. 三类实证问题需要不同工具
    • 描述性:代表性 + 测量精度
    • 因果:识别策略(外生变异)
    • 反事实:结构模型(机制)
  3. 因果推断的核心障碍是选择偏差
    • 潜在结果框架:Y_i(1), Y_i(0) 只能观测一个
    • 识别 = 论证“选择偏差为零或可忽略”

本讲要点(二)

  1. 四种识别策略的逻辑
    • RCT:随机化消除选择偏差
    • DID:差消基线差异,假设平行趋势
    • IV:用外生变量作为处理的“代理随机性”
    • RD:阈值两侧近似随机分配
  2. 信任但验证是 AI 使用的核心原则
    • 每次使用留下审计日志
    • 引用验证、代码阅读、结果检查——不可外包
    • 虚假自信风险比不用 AI 更危险

下节课预告

第 2 周:计算基础与 AI 辅助可重复工作流

  • VS Code + Python + Stata/R 环境搭建
  • Jupyter notebook 的结构化使用习惯
  • Monte Carlo 模拟:用代码建立直觉
  • “信任但验证”工作流的第一次实践

善意提醒

在第 3–8 周做任何实证分析之前, 先建立你的代码环境验证习惯—— 这是可重复研究的基础设施。

参考文献

  • Angrist, J. D., & Lavy, V. (1999). Using Maimonides’ rule to estimate the effect of class size on scholastic achievement. Quarterly Journal of Economics, 114(2), 533–575.
  • Abadie, A., & Cattaneo, M. D. (2018). Econometric methods for program evaluation. Annual Review of Economics, 10, 465–503.
  • Card, D., & Krueger, A. B. (1994). Minimum wages and employment: A case study of the fast-food industry in New Jersey and Pennsylvania. American Economic Review, 84(4), 772–793.
  • Chernozhukov, V., et al. (2024). Applied causal inference powered by ML and AI. arXiv: 2403.02467.
  • Fang, H., Li, Z., & Lu, Y. (2025). Decoding China’s industrial policies. NBER Working Paper 33814.
  • Ludwig, J., Mullainathan, S., & Rambachan, A. (2025). Large language models: An applied econometric framework. NBER Working Paper 33344.
  • Rubin, D. B. (1974). Estimating causal effects of treatments in randomized and nonrandomized studies. Journal of Educational Psychology, 66(5), 688–701.