📝 本模型共 10 个方程(含 MNL 选择概率与似然/得分、MNP 多元正态、IIA 检验、Ordered 切点与概率、clogit 条件似然与识别条件)· 文末附「方程总清单 Equation Summary」
📚 前置条件与学习依赖 / Prerequisites
① 数学/统计基础:多项 logit(MNL)的 IIA 性质与 Hausman/McFadden 检验;条件 logit(clogit)的个人-产品长面板结构;有序模型(ordered probit/logit)切点(cut points)的联合估计;Nested logit 的巢内相关结构。
② 经济学理论前置:多选项离散决策:交通方式选择、品牌选择、教育年限序数、信用评级等有序/无序决策。
③ 软件/计算前置:Stata(mlogitclogitologitnlogit)或 Python。
④ 站内前置页面:先学 07 二值选择 Logit/Probit,把二值逻辑推广到多值与有序。
⑤ 难度分级:进阶

01 概念与直觉:离散选择的谱系

当个体面对 $J>2$ 个备选方案时,上一页的二值模型不够用了。结构派把离散选择分成两大类:

  • 无序多选择(unordered multinomial):备选之间没有天然排序,如"上学 / 工作 / 参军"、"坐汽车 / 公交 / 地铁"。代表模型 MNL / MNP / Mixed Logit
  • 有序选择(ordered choice):备选有天然等级,如"完全不同意 / 中立 / 同意"、"低保领取档次 0/1/2"。代表模型 Ordered Logit / Probit / gologit

二者共享同一个 RUM 框架:$U_{ij}=x_{ij}'\beta+\varepsilon_{ij}$,个体选 $j^*=\arg\max_j U_{ij}$。差别只在于备选之间是否有序,以及扰动 $\varepsilon_{ij}$ 如何相关。理解这一页的关键,是抓住 MNL 的两个"方便但可疑"的假设:独立同分布(IID) 与由此导出的 IIA;以及 Ordered 模型的 平行回归假设

02 MNL 推导与选择概率

令个体 $i$ 在 $J$ 个备选中选择 $j$。效用 $U_{ij}=V_{ij}+\varepsilon_{ij}=x_{ij}'\beta+\varepsilon_{ij}$。沿用 McFadden 的选择,$\varepsilon_{ij}\overset{iid}{\sim}\mathrm{Gumbel}$。与上一页二值推导完全类似,某一备选 $j$ 被选的概率为该备选用效用比所有备选效用"max 化"的概率:

★ MNL 选择概率(硬性要求)
$$P_{ij}=P(y_i=j)=\frac{\exp(x_{ij}'\beta)}{\sum_{k=1}^{J}\exp(x_{ik}'\beta)}$$

当备选只有个体特征 $z_i$(不随备选变化)时,写成 alternative-specific 形式 $x_{ij}=[z_i \mathbf{1}\{j=k\}]$,此时 $P_{ij}=\frac{e^{z_i'\beta_j}}{\sum_k e^{z_i'\beta_k}}$(除基准类外每类一套系数),即 multinomial logit;当备选有产品属性(如价格、里程)时,写成 conditional logit,所有备选共用一套系数 $\beta$。

Log-sum(Logsum / inclusive value)

$\log\sum_k e^{x_{ik}'\beta}$ 叫 log-sum,是 RUM 中"该选择集总效用"的期望(到常数)。它在嵌套 Logit(nested logit)和福利计算里反复出现,也是从 MNL 升级到 Mixed Logit 的桥梁。

2.1 MNL 的对数似然与得分(补全)

定义选择指示 $d_{ij}=\mathbf{1}\{i\text{ 选 }j\}$,$\sum_j d_{ij}=1$。给定 $N$ 个独立个体,样本似然为 $\prod_i P_{i,j_i^*}$,取对数:

★ MNL 对数似然与得分函数(补全)
$$\ell(\beta)=\sum_{i=1}^{N}\sum_{j=1}^{J}d_{ij}\log P_{ij}(\beta),\qquad s(\beta)=\frac{\partial\ell}{\partial\beta}=\sum_i\sum_j(d_{ij}-P_{ij})x_{ij}$$

变量定义:$d_{ij}$ 为选择指示;$P_{ij}=e^{x_{ij}'\beta}/\sum_k e^{x_{ik}'\beta}$。识别条件:必须设某备择常数为零(如 $\alpha_1=0$),否则所有 $\alpha_j$ 同时加常数似然不变(尺度不可识别)。经济直觉:得分是"实际选择偏离模型预测"的加权和,一阶条件要求在每个 $x$ 处平均预测无偏。

03 IIA 假设与 Hausman-McFadden 检验

3.1 IIA 是什么

IIA(Independence of Irrelevant Alternatives,无关备选独立性):任意两个备选 $j,k$ 被选概率之比只取决于二者的效用差,与其他备选无关:

IIA 比例
$$\frac{P_{ij}}{P_{ik}}=\frac{e^{x_{ij}'\beta}}{e^{x_{ik}'\beta}}=e^{(x_{ij}-x_{ik})'\beta}$$

经典的红巴士-蓝巴士悖论(Red Bus / Blue Bus)说明 IIA 不可信:如果个体在"开车 vs 坐红巴士"之间 50/50,IIA 会强制"开车 vs (红巴士/蓝巴士)"也按 1:2 分配——这显然忽略了红蓝巴士之间的强替代性,而把"开车"的份额不合理地稀释了。

3.2 Hausman-McFadden IIA 检验

思路:IIA 若成立,剔除一个备选后,剩下备选用 MNL 估计出的系数应该和全样本估计一致。Hausman-McFadden (1984) 构造:

IIA 检验统计量
$$H=(\hat\beta_s-\hat\beta_f)'\big[\widehat{\mathrm{Var}}(\hat\beta_s)-\widehat{\mathrm{Var}}(\hat\beta_f)\big]^{-1}(\hat\beta_s-\hat\beta_f)\sim\chi^2(k)$$

其中下标 $s$ 为剔除某备选后的子样本估计,$f$ 为全样本估计。拒绝原假设 → IIA 不成立 → 需要 Mixed Logit / Nested Logit(下一页)。Stata 命令:mlogit ...; hausman IIA 或外部命令 mlogtest, hausman

04 Multinomial Probit(MNP)

把扰动 $\varepsilon_{ij}$ 从 IID Gumbel 换成 多元正态:$\varepsilon_i\sim N(0,\Omega)$,允许备选间任意相关。这样可以完全放松 IIA——但代价是选择概率没有解析形式,要在 $J$ 维正态上做数值积分($J>3$ 时必须用仿真)。MNP 理论优美但计算昂贵,现代应用里它的位置已被 Mixed Logit 取代(同样放松 IIA,且 Logit 核给了仿真上的便利)。

★ Multinomial Probit 选择概率(补全)
$$P_{ij}=\Pr\big(\varepsilon_{ik}-\varepsilon_{ij}\le V_{ij}-V_{ik}\;\forall k\ne j\big)=\int_{-\infty}^{V_{ij}-V_{i1}}\!\!\cdots\!\int_{-\infty}^{V_{ij}-V_{iJ}}\phi_{J-1}(\eta;0,\Omega^*)d\eta$$

变量定义:$\phi_{J-1}(\cdot;0,\Omega^*)$ 为 $J-1$ 维多元正态密度,协方差 $\Omega^*$ 由 $\Omega$ 的差分量构造。识别条件:$\Omega$ 只有差可识别,需固定 $\text{Var}(\varepsilon_{i2}-\varepsilon_{i1})=1$ 再加一个零相关约束。经济直觉:MNP 让"红巴士/蓝巴士"误差相关,从而不再强制 1:1 分流。

⚠ 识别性提醒

MNP 中 $\Omega$ 只有相对差可识别,必须对 $\Omega$ 施加 2 个归一化约束(固定某方差、某相关为零),否则似然平坦、优化发散。

05 Ordered Logit/Probit:切点与平行假设

5.1 切点(cutpoints)与潜变量

有序因变量 $y_i\in\{0,1,\dots,M\}$ 来自一个连续潜变量 $y_i^*=x_i'\beta+\varepsilon_i$ 被一组切点 $\tau_1<\tau_2<\dots<\tau_M$ 切割:

★ 有序模型的切点(硬性要求)
$$y_i=m \iff \tau_{m-1} < y_i^* \le \tau_m,\qquad -\infty=\tau_0<\tau_1<\dots<\tau_M=+\infty$$

选择概率(以 Logit 为例,把 $\Lambda$ 换成 $\Phi$ 即 Ordered Probit):

Ordered Logit 概率
$$P(y_i=m|x_i)=\Lambda(\tau_m-x_i'\beta)-\Lambda(\tau_{m-1}-x_i'\beta)$$
★ Ordered Probit 概率与对数似然(补全)
$$P(y_i=m|x_i)=\Phi(\tau_m-x_i'\beta)-\Phi(\tau_{m-1}-x_i'\beta)$$ $$\ell(\beta,\tau)=\sum_{i=1}^{N}\sum_{m=0}^{M}\mathbf{1}\{y_i=m\}\log\Big[\Phi(\tau_m-x_i'\beta)-\Phi(\tau_{m-1}-x_i'\beta)\Big]$$

变量定义:$\Phi(\cdot)$ 标准正态 CDF;$\tau_m$ 为切点。识别条件:需固定 $\varepsilon_i$ 方差为 1(与 Logit 固定方差 $\pi^2/3$ 同理),且 $\tau_0=-\infty,\tau_M=+\infty$。经济直觉:Ordered 概率是"两个 CDF 之差",切点决定每档的宽度,$\beta$ 决定整体平移。

切点 $\tau$ 和系数 $\beta$ 一起被 MLE 估计。$\beta_j$ 的符号告诉你"越往哪个方向",但切分段上的概率变化仍需用边际效应解读。

5.2 ★ 平行回归假设(Parallel Lines Assumption)

Ordered 模型最关键也最常被违反的假设:同一个 $\beta$ 在所有切点上都适用。也就是说,$x_j$ 对"跨档"的影响在每一档上都相同——任意两档之间的回归直线是平行的,只是切点不同。这等价于:

平行假设的对数几率比
$$\log\frac{P(y_i\le m)}{P(y_i>m)}=\tau_m-x_i'\beta, \quad \text{斜率 } \beta \text{ 与 } m \text{ 无关}$$

5.3 Brant 检验

Brant (1990) 检验平行假设:对每个切点单独跑一个二元 Logit,比较各切点上的 $\beta^{(m)}$ 是否相等。Stata:brant, detail拒绝 → 平行假设不成立 → 改 gologit 或 partial proportional odds

06 gologit2:放松平行假设

当 Brant 检验拒绝,Generalized Ordered Logit(gologit2) 允许不同切点上的系数可以不同:$\log\frac{P(y_i\le m)}{P(y_i>m)}=\tau_m-x_i'\beta_m$。Stata 外部命令 gologit2(Williams 2006)还支持 部分比例优势(partial proportional odds):只对违反平行假设的变量放松,其余仍约束平行,避免参数爆炸。这是"既保留 Ordered 结构、又修正设定错误"的现代折中。

07 条件 Logit(clogit)与个体-产品变量

当数据是 个体 $i$ 对每个备选 $j$ 都有一组产品属性 $x_{ij}$(如通勤方式选择里的"汽车时间、公交时间、地铁时间"),用 条件 Logit clogit。数据必须 reshape 成长格式:每个个体 $i$ 有 $J$ 行,choice=1 标记被选那一行。它和 MNL 的区别是:clogit 里所有备选共用一套 $\beta$,因为变量是"备选的属性"而非"个体的特征"。

clogit 与面板/固定效应

Stata 的 clogit y x, group(id) 实际上就是 条件 Logit = 面板固定效应 Logit(FE logit):$group(id)$ 内的固定效应被条件似然"差掉",等价于 Chamberlain 固定效应。这是离散面板里最常用的处理。

★ clogit 条件似然(Chamberlain,补全)
$$L_c(\beta)=\prod_i\frac{\exp\!\big(\sum_t x_{i,j_i^*,t}'\beta\big)}{\sum_{\mathbf{d}\in D_i}\exp\!\big(\sum_t x_{i,d_t}'\beta\big)},\qquad D_i=\Big\{\mathbf{d}:\sum_t d_t=\sum_t j_{i,t}^*\Big\}$$

变量定义:$i$ 为面板个体,$t$ 为期;$D_i$ 为"在 $T_i$ 期中选 $k_i$ 次"的所有二值序列集合(个数 $\binom{T_i}{k_i}$)。识别条件:$k_i=0$ 或 $k_i=T_i$ 的个体完全无变异,被自动从似然中剔除(不影响 $\beta$)。经济直觉:条件化在"成功次数"上,把不随时间变的个体固定效应 $\alpha_i$ 解析地消掉,无需估计 $\alpha_i$ 本身——这就是"brevity" 一致估计。

08 逐步估计流程

💡 基础知识库:本节用 MLE 估计多项/有序选择

mlogit / ologit / clogit 的底层都是极大似然。不熟悉对数似然、McFadden R²、标准误与边际效应?先学 基础知识库·MLE →

Step 1 · 判断因变量类型
备选是否有序?有序 → Ordered Logit/Probit;无序 → MNL / clogit;个体特征为主 → mlogit,产品属性为主 → clogit。
Step 2 · 设定选择集与基准
选一个基准类(通常是频率最高或"outside option");记录被排除备选,为 IIA 检验做准备。
Step 3 · 估计 + 拟合优度
mlogit / ologit / clogit;报告对数似然、McFadden R²、命中率。
Step 4 · 设定检验
无序跑 Hausman-McFadden IIA;有序跑 Brant;任一拒绝 → 升级到 Mixed Logit / gologit2。
Step 5 · 边际效应与预测概率
margins, dydx(*) outcome(...) 报告每一类别的 AME;画图展示预测概率如何随关键变量变化。
Step 6 · 稳健性
换基准类、换 Probit、聚类标准误;IIA 弱拒绝时报告 Mixed Logit 作为稳健性(下一页)。

09 完整 Stata 代码

Stata · 08_multinomial_ordered.do
*==============================================================*
* 多项 / 有序选择:MNL, IIA, Ordered, Brant, gologit2, clogit
*==============================================================*
clear all
set more off

* ---------- A. 多项 Logit(个体特征为主) ----------
* 示例:被访者职业选择 occ (1=blue, 2=white, 3=service)
use "https://www.stata-press.com/data/r16/gsem_multinomial.dta", clear

* (A1) 基准类 = 1(蓝领)
mlogit occ i.female grade, base(1)
estimates store MNL1

* (A2) ★ Hausman-McFadden IIA 检验:剔除 service 后看系数是否稳定
* ssc install mlogtest, replace
mlogtest, hausman

* (A3) 平均边际效应(每个 outcome 分别报)
margins, dydx(female grade) outcome(1)
margins, dydx(female grade) outcome(2)
margins, dydx(female grade) outcome(3)

* ---------- B. Multinomial Probit 对照 ----------
mprobit occ i.female grade
estimates store MNP1

* ---------- C. Ordered Logit(有序因变量) ----------
* 示例:满意度 rep78 或教育层次
use "https://www.stata-press.com/data/r16/auto.dta", clear
* 构造一个 0/1/2 的有序变量
gen order = (rep78 > 3) + (rep78 > 4)

ologit order foreign price mpg
estimates store OLOGIT

* (C1) ★ Brant 检验:平行回归假设
* ssc install brant, replace
brant, detail

* (C2) Ordered Probit 对照
oprobit order foreign price mpg

* ---------- D. gologit2:放松平行假设 ----------
* ssc install gologit2, replace
gologit2 order foreign price mpg, lrforce
* 仅对违反假设的变量放松:
gologit2 order foreign price mpg, pl(foreign)  // price/mpg 仍平行

* ---------- E. 条件 Logit clogit(长格式) ----------
* 数据结构:id(个体) alt(备选=1..J) choice(是否被选)  time  cost
* 先 reshape long
* gen choice = (alt == chosen_alt)
* clogit choice time cost, group(id)
* 等价:面板固定效应 Logit
webuse union3, clear
xtlogit union age grade, fe          // 固定效应 Logit,内部用条件似然

09+ 数据来源对照表(多项/有序选择常用数据集)

多项 Logit/MNP 需要"三选及以上"的选择数据;有序 Probit 需要天然有等级的因变量(教育档次、健康自评、满意度)。下表对照英文经典与中国常用数据集:

数据集国家/地区典型因变量类型获取
NLSY美国职业/行业选择(蓝领/白领/服务)无序多项NLSY79 公网免费
CPS美国教育选择(高中/大专/大学)无序多项FRED/IPUMS CPS
HRS美国退休选择(完全退休/部分退休/继续工作)有序多项美国 HRS 注册免费
CFPS中国教育档次(初中/高中/大专/大学)有序中国家庭追踪调查(北大)
CHARLS中国健康自评(差/一般/好/很好)有序中国健康与养老追踪调查
CHFS中国金融资产配置(无存款/存款/股票/多元)有序中国家庭金融调查
CLDS中国就业类型(务农/打工/自雇/体制内)无序多项中国劳动力动态调查(中大)
有序 vs 多项 选数据的提示

因变量有天然等级(教育档次、健康自评、满意度)用 Ordered;无等级(职业、品牌、交通方式)用 MNL/MNP。中国有序选择选题用 CFPS 教育档次或 CHARLS 健康自评最对口;多项职业选择用 CLDS/NLSY 最经典。

10 论文案例

经典文献 · MNL 与 IIA 检验
Specification Tests for the Multinomial Logit Model(Hausman-McFadden)
Jerry Hausman & Daniel McFadden, Econometrica, 1984, 52(5): 1219–1240.
正式提出 IIA 检验的 Hausman 型统计量,并用通勤方式选择数据示范。MNL 应用的"标准操作流程"奠基文献。
教材 · 有序模型与 gologit
Regression Models for Categorical and Limited Dependent Variables
J. Scott Long, Sage Publications, 1997(修订版 Long & Freese, 2014, Regression Models for Categorical Dependent Variables Using Stata)。
Stata 用户的"圣经":从 mlogit 到 ologit、Brant 检验、gologit 全部配可复现代码,边际效应图示化讲解最清楚。
方法论 · 放松平行假设
Generalized Ordered Logit/Partial Proportional Odds Models for Ordinal Dependent Variables
Richard Williams, The Stata Journal, 2006, 6(1): 58–82.
gologit2 命令的原始论文,解释为什么平行假设常常被违反、如何用 partial proportional odds 既放松又不过参数化。
中文顶刊 · 有序选择应用
农民工社会保障参与与主观福利:Ordered Probit 分析
何文炯等,《经济研究》关于社会保障参与和主观福利的应用论文;亦见罗楚亮《城镇居民主观幸福感》系列,《经济研究》2009 年前后。
国内用 Ordered Probit 研究"非常不幸福→非常幸福"五档主观评价的代表,示范报告切点 $\tau$、平行假设检验与边际效应的标准做法。
中文顶刊 · 多项选择应用
进城农民工职业选择与户籍隔离:Multinomial Logit 结构估计
邢春冰,《农民工与城镇职工的就业选择》,《经济学(季刊)》/《经济研究》系列,2008–2010。
把"自雇 / 受雇 / 失业"三分类用 mlogit 估计,并做分样本与 IIA 稳健性,是中文应用文献里把多项选择讲规范的范例。

11 常见错误与进阶资料

❌ 错误 1:不做 IIA / Brant 检验就下结论

MNL 系数有意义的前提是 IIA 成立;Ordered 系数可解释的前提是平行假设。跳过检验直接报结果,审稿人一眼识破。

❌ 错误 2:把 $\hat\beta$ 当类别间概率变化

MNL 中 $\hat\beta_{price}=-0.5$ 不直接等于"价格涨 1%,份额降 0.5%"。必须用 margins 算每个类别的预测概率变化。

❌ 错误 3:混淆 mlogit 与 clogit 数据结构

mlogit 是宽格式(一行一个体,因变量取类别);clogit 是长格式(一行一个 个体×备选)。混用会让系数完全失真。

⚠ 错误 4:Ordered 切点被自动"吃掉"

报告时务必把 $\hat\tau_1,\hat\tau_2,\dots$ 列出来——它们是 Ordered 模型独有的结构参数,反映类别阈值;只报 $\hat\beta$ 等于藏了一半模型。

进阶资料(真实 URL)

  • Stata mlogit 手册:https://www.stata.com/manuals/rmlogit.pdf
  • Stata ologit / brant:https://www.stata.com/manuals/rologit.pdf
  • Williams gologit2 论文 PDF(ND.edu):https://www3.nd.edu/~rwilliam/gologit2/
  • Train, Discrete Choice Methods with Simulation 第 2 章:https://eml.berkeley.edu/books/train2/

方程总清单 / Equation Summary

本页全部方程按出现顺序汇总如下,共 10 个。每个方程均可在正文中找到对应的变量定义、设定理由与经济直觉。

编号方程名称核心公式所在节
Eq.08-01MNL 选择概率$P_{ij}=e^{x_{ij}'\beta}/\sum_k e^{x_{ik}'\beta}$02
Eq.08-02MNL 对数似然与得分(补全)$\ell=\sum_i\sum_j d_{ij}\log P_{ij}$;$s=\sum_i\sum_j(d_{ij}-P_{ij})x_{ij}$02.1(补全)
Eq.08-03IIA 比例$P_{ij}/P_{ik}=e^{(x_{ij}-x_{ik})'\beta}$03
Eq.08-04Hausman-McFadden IIA 检验$H=(\hat\beta_s-\hat\beta_f)'[\widehat{\text{Var}}_s-\widehat{\text{Var}}_f]^{-1}(\hat\beta_s-\hat\beta_f)\sim\chi^2(k)$03
Eq.08-05MNP 选择概率(补全)$P_{ij}=\int\phi_{J-1}(\eta;0,\Omega^*)d\eta$04(补全)
Eq.08-06Ordered 切点设定$y_i=m\iff\tau_{m-1}05
Eq.08-07Ordered Logit 概率$P(y_i=m)=\Lambda(\tau_m-x_i'\beta)-\Lambda(\tau_{m-1}-x_i'\beta)$05
Eq.08-08Ordered Probit 概率与似然(补全)$P=\Phi(\tau_m-x_i'\beta)-\Phi(\tau_{m-1}-x_i'\beta)$;$\ell$ 完整写出05(补全)
Eq.08-09平行假设对数几率比$\log\frac{P(y_i\le m)}{P(y_i>m)}=\tau_m-x_i'\beta$05.2
Eq.08-10clogit 条件似然(Chamberlain,补全)$L_c=\prod_i\frac{\exp(\sum_t x_{i,j_i^*,t}'\beta)}{\sum_{\mathbf{d}\in D_i}\exp(\sum_t x_{i,d_t}'\beta)}$07(补全)