带有排他性选择的离散选择模型:概率估计方法问询
嘿,这个问题刚好戳中了离散选择和匹配理论的交叉点——带排他性约束的多主体选择,结合你提到的**无关替代项独立(IIA)**假设,咱们一步步拆解清楚:
首先得明确核心前提:每个方案i只能被一个主体选中,且主体j选方案i的效用是$Y_{ij} = \beta x_i + u_{ij}$,其中$u_{ij}$服从Gumbel分布(这是IIA成立的核心,Gumbel的极值差满足独立于其他替代项的性质)。
这个概率的核心是「有没有主体能抢到方案i」,得分两种场景看:
场景1:主体数 ≤ 方案数(J ≤ I)
这时候方案足够多,理论上每个主体都能拿到自己的最优方案,不会出现抢同一个方案的情况。那方案i被选中的概率,就是至少有一个主体把i当成最优方案的概率:
$$
P(i \text{ 被选中}) = 1 - \prod_{j=1}^J \left(1 - p_{ij}\right) = 1 - \left( \frac{\sum_{k≠i} \exp(\beta x_k)}{\sum_{k=1}^I \exp(\beta x_k)} \right)^J
$$
这里的$p_{ij}$是普通MNL里单个主体j选i的概率:$\frac{\exp(\beta x_i)}{\sum_{k=1}^I \exp(\beta x_k)}$。整个公式的逻辑是:先算所有主体都不选i的概率(每个主体选其他方案的概率相乘),再用1减这个值,就是i被至少一个主体选中的概率。
场景2:主体数 > 方案数(J > I)
这时候僧多粥少,每个方案都会被抢(毕竟主体必须选一个方案),所以方案i被选中的概率直接是1——不管i的效用高低,都会有主体因为没别的可选而选它(当然,如果主体可以不选,那另当别论,但你的问题里是「选择方案i」,默认必须选一个)。
这个概率是「主体j不仅想选i,还能在竞争中抢到i」的概率,同样分场景:
场景1:主体数 ≤ 方案数(J ≤ I)
因为方案足够,没有竞争,主体j只要把i当成最优方案就能拿到它,所以概率就是普通MNL的单个主体选择概率:
$$
P(j \text{ 选中} i) = \frac{\exp(\beta x_i)}{\sum_{k=1}^I \exp(\beta x_k)}
$$
场景2:主体数 > 方案数(J > I)
这里有竞争了,主体j要抢到i,得满足两个条件:要么只有j一个人把i当成最优方案,要么j在所有想抢i的主体里效用最高。通过Gumbel分布的性质推导,最终的概率是:
$$
P(j \text{ 选中} i) = \frac{1 - \left(1 - \frac{\exp(\beta x_i)}{\sum_{k=1}^I \exp(\beta x_k)}\right)^J}{J}
$$
简单解释下:分子是方案i被选中的总概率(也就是场景1里的$1 - (1-p_{ij})^J$),除以主体数J,相当于把「i被选中」的概率平均分配给每个可能抢到它的主体——这是因为Gumbel分布的对称性,所有主体抢i的机会是均等的,只要他们想抢。
要算出上面的概率,得先估计出$\beta$,咱们用**最大似然估计(MLE)**就行:
- 构造似然函数:如果观测到主体j选了方案i,就把对应的$P(j \text{ 选中} i)$作为似然贡献;如果方案i没被选中(J<I时),就把$P(i \text{ 未被选中}) = (1-p_{ij})^J$作为贡献。
- 对似然函数取对数,用优化算法(比如牛顿法)最大化对数似然,得到$\beta$的估计值。
在实际操作中,你可以用R的mlogit包扩展处理带容量约束的情况,或者手动写似然函数用optim来跑。
因为整个框架依赖IIA,你得验证这个假设是否成立:
- Hausman检验:去掉一个替代方案,重新估计$\beta$,如果参数有显著变化,说明IIA不成立,得换嵌套Logit或混合Logit模型。
- McFadden ρ检验:检查替代项之间的相关性,判断IIA是否合理。
内容的提问来源于stack exchange,提问作者JorgeG

