选择实验获得的数据主要通过离散选择模型来完成。离散选择模型中,最主要的是logit模型。
之前已经介绍了二项logit模型回归的STATA实现(有修改),多项logit模型详解,多项logit模型回归系数解读,多项logit模型回归的检验
继续认识混合logit模型。
最常用的异质性模型是混合logit模型(MixedLogit,MXL),也叫做随机参数模型(Radom Parameter Logit,RPL)。MNL模型需满足随机误差项服从严格的IID假设,而混合Logit 模型则放松了这一限制,允许参数在个体之间随机变动,通过模型参数的分布(均值、标准差)刻画个体的异质性,可以更好地进行异质性研究。在这里要注意,混合logit模型的含义在不同的教科书中有一些不同的界定。陈强的高级计量经济学及STATA应用中混合logit模型并不是可以进行异质性分析的,而只是区别条件logit模型中自变量只能是不随方案而变的,而加入随方案变化而变化的自变量后,就不能用条件logit,只能用这个模型。而本文所说的混合logit模型也就是随即参数模型,怎很多文献中都是这样应用的(朋文欢等,2017;刘伟等,2019)。
01 模型特点
混合logit模型与多项logit的区别可以从可观测效用函数
多项logit模型的可观测效用函数为:
混合logit模型的可观测效用函数为:
区别就是模型的估计参数不是一个值:
其中
其中
02 数据继续应用STATA官方系统数据inschoice.dta来介绍混合logit模型的回归程序。(下载该数据,可以关注公众号【选择实验法沙龙】并回复【保险数据】)该数据是记录250人的可用保险方案和选定方案的信息,可选择的保险方案共5个:Health、HCorp、SickInc、MGroup、MoonHealth。根据选定信息和个体特征,共形成6个变量,id、premium、deductible、income、insurance、choice。在之前的文章中已经应用过。stata16.0版本采用了新命令cmmixlogit作为官方命令,之前stata15.0版中采用的命令asmixlogit不在作为官方命令.本文采用cmmixlogit估计混合logit模型(下载STATA16程序,可以关注公众号并回复【stata16】)
03 STATA命令及回归过程首先,设置变量属性,用命令cmset将变量id设置为caseid variable,将insurance设置为alternatives variable。
. cmset id insurance
caseid variable: id
alternatives variable: insurance
然后就可以用进行混合logit回归了。(1) 没有特征变量的回归我们先不考虑与方案无关的变量income,只考虑deductible和premium,并将这二者设置为随机变量,而方案类别变量insurance自动为固定变量,将第五个方案MoonHealth设置为参照方案。回归命令和结果
. cmmixlogit choice, random(deductible premium) basealternative(5)
Fitting fixed parameter model:
Fitting full model:
Iteration 0: log simulated likelihood = -295.88154 (not concave)
Iteration 1: log simulated likelihood = -295.61382
Iteration 2: log simulated likelihood = -294.83963
Iteration 3: log simulated likelihood = -294.30391
Iteration 4: log simulated likelihood = -294.29896
Iteration 5: log simulated likelihood = -294.29896
Mixed logit choice model Number of obs = 1,250
Case ID variable: id Number of cases = 250
Alternatives variable: insurance Alts per case: min = 5
avg = 5.0
max = 5
Integration sequence: Hammersley
Integration points: 579 Wald chi2(2) = 67.93
Log simulated likelihood = -294.29896 Prob > chi2 = 0.0000
-------------------------------------------------------------------------------
choice | Coef. Std. Err. z P>|z| [95% Conf. Interval]
--------------+----------------------------------------------------------------
insurance |
deductible | -1.170465 .3603088 -3.25 0.001 -1.876657 -.4642729
premium | -2.884635 .3524249 -8.19 0.000 -3.575376 -2.193895
--------------+----------------------------------------------------------------
/Normal |
sd(deductible)| .8917091 .4088678 .3630186 2.19037
sd(premium)| .7575605 .3986796 .2700583 2.125089
--------------+----------------------------------------------------------------
Health |
_cons | 4.146376 .895823 4.63 0.000 2.390595 5.902156
--------------+----------------------------------------------------------------
HCorp |
_cons | 3.686473 .7823089 4.71 0.000 2.153176 5.21977
--------------+----------------------------------------------------------------
SickInc |
_cons | 2.813831 .6328887 4.45 0.000 1.573392 4.05427
--------------+----------------------------------------------------------------
MGroup |
_cons | 1.413957 .4315399 3.28 0.001 .5681547 2.25976
--------------+----------------------------------------------------------------
MoonHealth | (base alternative)
-------------------------------------------------------------------------------
LR test vs. fixed parameters: chi2(2) = 4.48 Prob > chi2 = 0.1064
Note: LR test is conservative and provided only for reference.
(2)系数解释随机变量系数是默认为服从正态分布,因此回归结果给出了平均值和标准差,结果显示deductible服从N(-1.170465, 0.8917091^2)的正态分布,输入如下命令,计算正态分布的累计概率
. di normal(-1.170465/0.8917091)
.09465744
计算结果表明,一个方案的deductible免赔额越高,90.53%的个体选择该方案的概率减小,而9.47%的个体选择该方案的概率增加,这一定程度上体现了个体之间的异质性。再来看premium。结果显示premium服从N(-2.884635, 0. 7575605^2)的正态分布,输入如下命令,计算正态分布的累计概率:
.
计算结果表明,一个方案的premium保费越高,几乎100%的个体选择该方案的概率减小,而几乎没有个体选择该方案的概率增加。结果给出4个方案的虚拟变量系数,与多项logit类似,表示相对比于参照方案MoonHealth的胜算比对数 ( log-odds ),选择Health方案的概率是参照方案的exp(4.146376)倍,选择HCorp方案的概率是参照方案的exp(3.686473)倍,选择SickInc方案的概率是参照方案的exp(2.813831)倍,选择方案MGroup的概率是参照方案的exp(1.413957)倍。页脚中的似然比检验(LR test)结果p值为0.1064,我们可以接受原假设,显示了将premium和deductible变量设置为随机参数相对于只有固定参数的模型没有显著差异。
(3)加入特征变量的回归
我们再将income这个个体特征变量放入模型中,使用casevar()选项:
. cmmixlogit choice, random(deductible premium) casevars(income) basealternative
> (5)
Fitting fixed parameter model:
Fitting full model:
Iteration 0: log simulated likelihood = -290.37017 (not concave)
Iteration 1: log simulated likelihood = -290.35564
Iteration 2: log simulated likelihood = -289.03147
Iteration 3: log simulated likelihood = -288.91966
Iteration 4: log simulated likelihood = -288.91924
Iteration 5: log simulated likelihood = -288.91924
Mixed logit choice model Number of obs = 1,250
Case ID variable: id Number of cases = 250
Alternatives variable: insurance Alts per case: min = 5
avg = 5.0
max = 5
Integration sequence: Hammersley
Integration points: 579 Wald chi2(6) = 62.87
Log simulated likelihood = -288.91924 Prob > chi2 = 0.0000
-------------------------------------------------------------------------------
choice | Coef. Std. Err. z P>|z| [95% Conf. Interval]
--------------+----------------------------------------------------------------
insurance |
deductible | -1.155629 .3668827 -3.15 0.002 -1.874706 -.4365518
premium | -3.013088 .3897016 -7.73 0.000 -3.776889 -2.249287
--------------+----------------------------------------------------------------
/Normal |
sd(deductible)| .8472954 .4398034 .3063401 2.343505
sd(premium)| .8579541 .4192563 .3292362 2.235736
--------------+----------------------------------------------------------------
Health |
income | .6444183 .2753344 2.34 0.019 .1047728 1.184064
_cons | 1.237433 1.45387 0.85 0.395 -1.612099 4.086965
--------------+----------------------------------------------------------------
HCorp |
income | .4975011 .2453446 2.03 0.043 .0166346 .9783677
_cons | 1.483269 1.254495 1.18 0.237 -.9754962 3.942035
--------------+----------------------------------------------------------------
SickInc |
income | .1858664 .2281453 0.81 0.415 -.2612902 .633023
_cons | 2.093464 1.177981 1.78 0.076 -.2153365 4.402264
--------------+----------------------------------------------------------------
MGroup |
income | .1461937 .2188599 0.67 0.504 -.2827639 .5751512
_cons | .7965893 1.108163 0.72 0.472 -1.375371 2.968549
--------------+----------------------------------------------------------------
MoonHealth | (base alternative)
-------------------------------------------------------------------------------
LR test vs. fixed parameters: chi2(2) = 4.03 Prob > chi2 = 0.1336
Note: LR test is conservative and provided only for reference.
页脚中的似然比检验(LR test)结果p值为0.1336,我们可以接受原假设,显示了将premium和deductible变量设置为随机参数相对于只有固定参数的模型没有显著差异。这也就意味着不应该把这两个变量设置为随即参数。当然我们也可以看Z统计量,结果中没有提供,我们可以根据Z统计量公式(Z统计量=估计值/标准误)计算。结果显著。
. di .8472954/.43980341
.9265322
. di .8579541/.41925632
.0463714
结果中,4个方案的虚拟变量系数之外还有income这一项的系数,表示的是income和方案交乘项的系数,相比较于参照方案的胜算比对数 (log-odds ),可以看出系数全部大于0,表明随着收入的增加,个人更有可能选择Health HCorpSickInc MGroup等保险方案概率都比参照方案大,比较之下,收入越高,选择Health方案的概率最大。
参考文献:
陈强主编,高级计量经济学及stata应用,高等教育出版社
Stata 官网
刘伟,左鹏飞,高志峰.风险态度异质性对投资行为的影响——基于商业银行理财产品的选择实验[J].广东财经大学学报,2019(04):60-71.
欢迎关注公众号:【阡陌兴致】投资、社会感想
欢迎关注公众号:【选择实验法沙龙】学习和探讨选择实验法
欢迎关注知乎专栏【选择实验法】