课程目录 · 已完成 0 / 7 个模块
  1. 课程首页
  2. 1先判断是否需要结构模型
  3. 2从研究问题到可估计模型
  4. 3数学急救包
  5. 4MLE、GMM、SMM
  6. 5发展经济学经典案例
  7. 6机械化服务完整实操
  8. 7学习路线与自测
Module 6 · 约 90 分钟

亲手完成一次
农业机械化服务结构估计

从教学数据生成到 MLE、拟合、补贴反事实和适用边界。浏览器先帮助理解,下载代码再完成可复现版本。

Research brief

研究设定

问题:随机发放服务代金券后,农户的净服务价格下降。我们估计价格敏感度与经营规模收益,并模拟普惠补贴下的采纳率和财政成本。

样本:700 个模拟农户。代金券随机分配;服务标价、经营规模、距离和质量均可观测。

选择:是否购买机械化服务。

估计:二元 logit MLE。浏览器版只让你调价格与规模两个参数,截距、距离和质量系数固定;下载代码会同时估计全部系数。

P(购买ᵢ=1) = Λ[β₀ + α·净价格ᵢ + β·log(1+规模ᵢ) + γ·距离ᵢ + δ·质量ᵢ]
教学数据不等于实证证据。这里的“真参数”和外生代金券由程序设定,只用于检查估计逻辑。真实服务价格通常可能与未观测质量、需求和供给能力相关,不能直接照搬外生价格假设。
Interactive lab

先在浏览器里摸到似然与反事实

步骤 1 · 参数估计

让模型解释农户的购买选择

手动拖动参数观察对数似然,再让坐标搜索自动寻找更优值。有限样本下估计值应接近但不会等于程序设定的真值。

-0.45
0.15

步骤 2 · 政策反事实

改变补贴率,重新计算购买概率

补贴按实际购买支付,财政成本是每户预期成本。图中只改变农户净价格,服务供给和标价保持不变。

20%
Reproducible workflow

把网页实验变成研究代码

可复现实操的五个检查点
阶段要做什么通过标准
1. 生成/读入数据固定 seed;明确变量单位、选择时点与政策随机化重新运行得到相同教学数据
2. 估计最大化 logit 对数似然;报告估计值、标准误和收敛模拟样本中能在抽样误差内回收真值
3. 拟合比较观测和预测采纳率,并按净价格分组不只报告总体平均
4. 反事实改变净价格,计算采纳率与财政成本使用同一估计参数,并传播不确定性
5. 边界列明价格内生性、供给容量、进入与外推范围结论不超过模型能回答的问题
Stata first

Stata 路线:从熟悉的 logit 看见结构含义

Stata 脚本使用 logit,因为该命令正是在最大化二元选择模型的对数似然。重点不是另写一个复杂优化器,而是把系数映射回效用,并用估计参数执行政策模拟。

set seed 20260804
logit adopt net_price ln_land distance quality, vce(robust)

* 给定补贴率 s,重新计算净价格与预测概率
gen phat_cf = invlogit(_b[_cons] + _b[net_price] * listed_price * (1-s) ///
    + _b[ln_land] * ln_land + _b[distance] * distance ///
    + _b[quality] * quality)

完整脚本还会输出按价格四分位的拟合表和 0–50% 补贴率的反事实 CSV/图形。

Python next

Python 路线:亲自写目标函数与 Newton 更新

Python 脚本只用标准库,显式计算 score 和信息矩阵,再用 Newton–Raphson 更新参数;无需安装依赖即可运行。模型复杂后可把相同目标函数接口交给 SciPy 等成熟优化库。

score, information = score_and_information(theta, farmers)
step = solve_linear_system(information, score)
theta = [value + change for value, change in zip(theta, step)]

if max(abs(change) for change in step) < tolerance:
    break
Do not overclaim

这个模型现在不能回答什么?

  • 服务商进入:补贴提高需求后是否有新服务商进入?静态需求模型没有供给方。
  • 容量与拥堵:旺季服务供给有限时,补贴可能抬价或延迟作业。
  • 价格内生性:真实标价可能随未观测需求和质量变化,需要工具变量、实验价格或联合供需模型。
  • 动态学习:农户可能先试用再更新质量认知,需要动态学习模型。
  • 福利:采纳率不是福利。完整福利分析还需服务收益、成本、财政机会成本和供给者剩余。
合理升级顺序:先把静态外生价格模型跑通并验证;再分别加入价格内生、未观测异质性、动态学习或服务商进入。不要一次把四个扩展全塞进第一个项目。对应概念和计算路线已拆到进阶模型地图

验收标准:能运行至少一份下载脚本,并解释估计、拟合、反事实和适用边界四类输出。