Stata:数据包络分析 (DEA) 简明教程

文摘   教育   2024-11-01 22:01   中国  


👇 连享会 · 推文导航 | www.lianxh.cn

🍓 课程推荐:2024 机器学习与因果推断专题
主讲老师:司继春 (上海对外经贸大学) ;张宏亮(浙江大学)
课程时间:2024 年 11 月 9-10 日 ;16-17日
课程咨询:王老师 18903405450(微信)

 课程特色 · 2024机器学习与因果推断

  • 懂原理、会应用。本次课程邀请了两位老师合作讲授,目的在于最大限度地实现理论与应用的有机结合。为期四天的课程,分成两个部分:第一部分讲解常用的机器学习算法和适用条件,以及文本分析和大语言模型;第二部分通过精讲 4-6 篇发表于 Top 期刊的论文,帮助大家理解各类机器学习算法的应用场景,以及它们与传统因果推断方法的巧妙结合。
  • 以 Top 期刊论文为范例。目前多数人的困惑是不清楚如何将传统因果推断方法与机器学习结合起来。事实上,即便是 MIT 和 Harvard 的大牛们也都在「摸着石头过河」。为此,通过论文精讲和复现来学习这部分内容或许是目前最有效的方式了。张宏亮老师此前在浙江大学按照这一模式教授了「因果推断和机器学习」课程,效果甚佳:学生们能够逐渐建立起研究设计的理念,并在构造识别策略时适当地嵌入机器学习方法。

彭诗敏 (中山大学)
E-mail: pengshm7@mail2.sysu.edu.cn


目录

  • 1. 数据包络分析 (DEA) 简介

  • 2. CCR 模型

  • 3. BCC 模型

  • 4. DEA-Malmquist 指数模型

  • 5. DEA 和 MPI 的 Stata 实现

    • 5.1 dea 命令

    • 5.2 malmq 命令

  • 6. 结语

  • 参考文献



温馨提示: 文中链接在微信中无法生效。请点击底部「阅读原文」。或直接长按/扫描如下二维码,直达原文:

1. 数据包络分析 (DEA) 简介

数据包络分析 (DEA) 是由美国著名运筹学家 A.Charnes (查恩斯) 、W.W.Cooper (库铂) 、E.Rhodes (罗兹) 于 1978 年首先提出,在相对效率评价概念基础上发展起来的一种非参数检验方法。

在 DEA 中,受评估的单位或组织被称为决策单元 (简称 DMU) 。DEA 通过选取决策单元的多项投入和产出数据,利用线性规划,以最优投入与产出作为生产前沿,构建数据包络曲线。其中,有效点会位于前沿面上,效率值标定为 1;无效点则会位于前沿面外, 并被赋予一个大于 0 但小于 1 的相对的效率值指标。

DEA 模型具体又可细分为三种类型:

  • CCR 模型:该模型假定规模报酬不变,主要用来测量技术效率;
  • BCC 模型:该模型假定规模报酬可变,主要测算纯技术效率,即技术效率与规模效率的比值;
  • DEA-Malmquist 指数模型:该模型可以测算出决策单元 (DMUs) 的生产效率在不同时期的动态变化情况。

2. CCR 模型

CCR 模型 由 Charnes, Cooper 和 Rhodes 于 1978 年提出,它可以计算规模报酬不变情况下的资源配置效率。

首先,我们简单推导一下 CCR 模型。以第 个决策单元的效率指数为目标,以所有决策单元的效率为约束,我们可以得到以下模型设定:


其中, 表示第 个决策单元对第 种投入要素的投放总量,而  则表示第 个决策单元中第 种产品的产出总量, 分别指第 种类型投入与第 种类型产出的权重系数。

,经 Charnes-Cooper 变换,可变为如下线性规划模型:


在上述规划的对偶规划中我们引入松弛变量 和剩余变量 ,松弛变量表示达到最优配置需要减少的投入量,剩余变量表示达到最优配置需要增加的产出量。由此,不等式约束会变为等式约束,模型可以简化为:


我们能够用 CCR 模型判定技术有效和规模有效是否同时成立:

  1. 若满足 ,则决策单元为 DEA 有效,决策单元的经济活动同时为技术有效和规模有效;
  2. 若满足 ,但至少某个投入或者产出大于 0,则决策单元为弱 DEA 有效,决策单元的经济活动不是同时为技术有效和规模有效;
  3. 若满足 ,决策单元不是 DEA 有效,经济活动既不是技术有效,也不是规模有效。

3. BCC 模型

CCR 模型是在规模报酬不变的前提下所得到的,但是技术创新的规模报酬是不固定的,现实中存在的不平等竞争也会导致某些决策单元不能以最佳规模运行,于是 Banker,Charnes 和 Cooper 在 1984 年对之前仅讨论固定规模效益的 DEA 分析进行了扩展,提出了 BCC 模型。

BCC 模型考虑到在可变规模收益 (VRS) 情况,即当有的决策单元不是以最佳的规模运行时,技术效益 (Technology efficiency,TE) 的测度会受到规模效率 (Scale efficiency,SE) 的影响。

以上图为例,位于生产函数曲线 f(x) 上的点 A 与点 C 都是技术有效,位于 f(x) 曲线内的点 B 则不是技术有效。由于点 A 还位于生产函数曲线的拐点,A 还是规模有效点。然而点 C 位于规模收益递减区域,因此它不是规模有效。BCC 模型正是要讨论位于这种生产状况的决策单元。

因此,在构建 BCC 模型时,我们需要假设规模报酬可变,对 CCR 模型的约束条件进行简单的改进,增加凸性假设条件:

,即可得:



我们可以对数据同时做 CCR 模型和 BCC 模型的 DEA 分析来评判决策单元的规模效率 (SE)。如果决策单元 CCR 和 BCC 的技术效益存在差异,则表明此决策单元规模无效,并且规模无效效率可以由 BCC 模型的技术效益和 CCR 模型的技术效益之间的差异计算出来。

4. DEA-Malmquist 指数模型

传统的 CCR 和 BCC 模型只能横向比较决策单元在同一时间点的生产效率,DEA-Malmquist 指数模型则可以测度决策单元在不同时期间效率的动态变化,因此它可以分析面板数据,具有较广泛的应用性。

Malmquist 指数利用距离函数 (E) 进行运算,表示为以下数学表现形式:


为了把两个时期的技术水平都纳入考虑,我们取它们的几何平均值:


该生产率指数又可以分解为面向输入的效率变化 (EFFCH) 和技术效率(TECHCH) ,技术效率又可以分解为规模效率 (SECH) 和纯技术效率 (PECH) 两部分:

5. DEA 和 MPI 的 Stata 实现

5.1 dea 命令

dea 命令允许用户从数据文件中选择输入和输出变量,并通过指定的选项在 Stata 求解 dea 模型,该命令由 Yong-bae Ji 和 Choonjo Lee 于 2010 年编写。

5.1.1 dea 命令语法

在 Stata 命令窗口中输入 ssc install dea, replace 可以下载最新版的 dea 命令,进而输入 help dea 可以查看其帮助文件。

该命令的语法详情如下:

dea ivars = ovars [if] [in] [using/filename ][,  ///
rts(string) ort(string) stage(#) ///
trace saving(filename) ]

其中,

  • ivars 表示投入变量
  • ovars 表示产出变量
  • rts(string) 可选择不同规模报酬的相应模型:默认值是 rts(crs) ,即规模报酬不变 (对应 CCR 模型) , rts(vrs)rts(drs)rts(nirs) 分别表示规模报酬可变 (对应 BCC 模型) ,规模报酬递减和规模报酬不增长
  • ort(string) 指定方向:默认值是 ort(i) ,表示面向投入的 DEA 模型; ort(o) 表示面向产出的 DEA 模型;面向投入的 DEA 模型是指在至少满足已有的产出水平的情况下最小化投入,而面向产出的 DEA 模型则是指在不需要更多的投入的情况下最大化产出
  • stage(#) 默认值是 stage(2) ,即两阶段 DEA 模型;stage(1) 为单阶段 DEA 模型
  • trace 允许所有序列显示在结果窗口中,并保存在 " dea.log " 文件中

注意:需要导入决策单元变量 dmu

5.1.2 dea 的使用方法

举例:

*-导入例子所用的数据
use https://gitee.com/arlionn/data/raw/master/data01/data_dea.dta, clear

/* 网络不畅时,可以执行如下命令录入数据
clear
input str1 dmu byte(area employee sales profit)
"A" 3 4 2 2
"B" 5 2 3 4
"C" 3 3 2 3
"D" 4 4 3 5
"E" 4 3 3 4
end
*/

*-执行 dea 命令
dea area employee = sales profit

其中, area employee 为 csv 表中的投入变量,sales profit 为产出变量;data_dea.csv 数据仅用来举例,大家可以导入自己实际需要处理的数据。

5.1.3 dea 的结果解读

根据输出的结果,我们可以得到 5 个决策单元的生产效率:B 、D 、E 公司为 DMU 有效,得分皆为 1;A 、C 公司为 DMU 低效率,得分皆为 0.889 。

. dea area employee = sales profit

options: RTS(CRS) ORT(IN) STAGE(2)
CRS-INPUT Oriented DEA Efficiency Results:
                        ref: ref: ref:     ref:     ref:  islack:   islack:  oslack:  oslack:
       rank     theta     A    B    C        D        E     area  employee    sales   profit
dmu:A     5   .888889     0    0    0        0  .666667        0   1.55556        0  .666667
dmu:B     1         1     0    1    0        0        0        0         0        0        0
dmu:C     4   .888889     0    0    0  .333333  .333333        0   .333333        0        0
dmu:D     1         1     0    0    0        1        0        0         0        0        0
dmu:E     1         1     0    0    0        0        1        0         0        0        0

对于公司 A,减少 1.556 单位 的 employee 投入与 0.667 单位的 profit 产出将使得生产更有效率。对于公司 C ,减少 0.333 单位的 employee 投入将使得生产更有效率。

5.2 malmq 命令

malmq 命令允许用户从数据文件中选择输入和输出变量,并通过指定的选项在 Stata 解决 Malmquist 生产率指数模型,该命令由 Kyong-Rock Lee 和 Byung-Ihn Leem 于 2011 年编写。

5.2.1 malmq 命令语法

malmq ivars = ovars [if] [in] [using/filename] [, ///
      ort(string) period(string) ///
      trace saving(filename) ]

其中,

  • ivars 表示投入变量
  • ovars 表示产出变量
  • ort(string) 指定方向:默认值是 ort(i) ,表示面向投入的 DEA 模型;ort(o)表示面向产出的 DEA 模型
  • period(string) 指定时间
  • trace 允许所有序列显示在结果窗口中,并保存在 " malmq.log " 文件中

注意:决策单元变量 (dmu) 需要是字符型

5.2.2 malmq 的使用方法

举例:

*-导入例子所用的数据
. use https://gitee.com/arlionn/data/raw/master/data01/data_mpi.dta, clear
 
/* 网络不畅时,可以执行如下命令录入数据
clear
input str1 dmu byte(year i_x o_q)
"A" 1 2 1
"B" 1 4 2
"C" 1 3 3
"D" 1 5 4
"E" 1 6 5
"A" 2 2 1
"B" 2 4 3
"C" 2 3 4
"D" 2 5 3
"E" 2 5 5
end
*/
*-使用malmq命令
. malmq i_x = o_q,ort(i) period(year) 

其中, i_x 为 csv 表中的投入变量,o_q 为产出变量,时间间隔为一年 (year);data_mpi.csv 数据仅用来举例,大家可以导入自己实际需要处理的数据。

5.2.3 malmq 的结果解读

我们可以得到以下输出结果:

. malmq i_x = o_q,ort(i) period(year) 

Cross CRS-DEA Result:
          from     thru        t       t1
dmu:A        1        2       .5     .375
dmu:B        1        2      .75     .375
dmu:C        1        2  1.33333      .75
dmu:D        1        2       .6       .6
dmu:E        1        2        1     .625
dmu:A        2        3     .375     .375
dmu:B        2        3    .5625    .5625
dmu:C        2        3        1        1
dmu:D        2        3      .45      .45
dmu:E        2        3      .75      .75

Malmquist efficiency INPUT Oriented DEA Results:

     +--------------------------------+
     | year   dmu   CRS_eff   VRS_eff |
     |--------------------------------|
  1. |    1     A        .5         1 |
  2. |    1     B        .5      .625 |
  3. |    1     C         1         1 |
  4. |    1     D        .8        .9 |
  5. |    1     E   .833333         1 |
     |--------------------------------|
  6. |    2     A      .375         1 |
  7. |    2     B     .5625   .666667 |
  8. |    2     C         1         1 |
  9. |    2     D       .45   .533333 |
 10. |    2     E       .75         1 |
     |--------------------------------|
 11. |    3     A      .375         1 |
 12. |    3     B     .5625   .666667 |
 13. |    3     C         1         1 |
 14. |    3     D       .45   .533333 |
 15. |    3     E       .75         1 |
     +--------------------------------+

Malmquist productvity index INPUT Oriented DEA Results:

     +--------------------------------------------------------------+
     | period   dmu     tfpch   effch    techch      pech      sech |
     |--------------------------------------------------------------|
  1. |    1~2     A         1     .75   1.33333         1       .75 |
  2. |    1~2     B       1.5   1.125   1.33333   1.06667   1.05469 |
  3. |    1~2     C   1.33333       1   1.33333         1         1 |
  4. |    1~2     D       .75   .5625   1.33333   .592593   .949219 |
  5. |    1~2     E       1.2      .9   1.33333         1        .9 |
     |--------------------------------------------------------------|
  6. |    2~3     A         1       1         1         1         1 |
  7. |    2~3     B         1       1         1         1         1 |
  8. |    2~3     C         1       1         1         1         1 |
  9. |    2~3     D         1       1         1         1         1 |
 10. |    2~3     E         1       1         1         1         1 |
     +--------------------------------------------------------------+

由表二,我们可以得到决策单元每年的 CRS 效率与 VRS 效率。由表三,我们可以得到决策单元在每个阶段的全要素生产率变化 (tfpch) ,相对于 CRS 技术的技术效率变化 (effch),技术变革 (techch),相对于VRS技术的纯技术效率变化 (pech) 和规模效率变化 (sech) 这五个指标。

6. 结语

现如今 DEA 作为评估组织绩效的管理工具已经得到了相当大的关注,它被广泛用于评估银行、航空公司、医院、大学和制造业等公共部门和私营部门的效率中。而 dea 命令和 malmq 命令使得决策单元的效率可以在 Stata 中直接进行评估,不再需要同时使用统计分析软件与数据包络分析软件,大大简便了操作。我们可以看到当下很多评估组织效率的论文都使用了 Stata 求解 DEA 模型。然而,这两条命令只能指定上文提及的这些相对基础的模型,要指定 FG 模型、ST 模型、CCGSS 加法模型和具有无穷多个 DMU 的 CCW 模型,还需要对命令作进一步的优化和改进。

参考文献

  • Banker, R. D., A. Charnes, and W. W. Cooper. (1984) Some Models for Estimating Technical and Scale Inefficiencies in Data Envelopment Analysis. Management Science 30: 1078–1092.[PDF]
  • Charnes, A., W. W. Cooper, and E. Rhodes. (1978) Measuring the Efficiency of Decision Making Units. European Journal of Operational Research 2: 429–444.[PDF]
  • Kyong-Rock Lee, and Byung-Ihn Leem. (2011) Malmquist Productivity Analysis Index using DEA frontier in Stata. The Stata Journal.[PDF]
  • Yong-bae Ji, and Choonjo Lee. (2010) Data Envelopment Analysis. Stata Journal, 10(2): 267–280. [PDF]

🍓 课程推荐:2024 机器学习与因果推断专题
主讲老师:司继春 (上海对外经贸大学) ;张宏亮(浙江大学)
课程时间:2024 年 11 月 9-10 日 ;16-17日
课程咨询:王老师 18903405450(微信)

尊敬的老师 / 亲爱的同学们:

连享会致力于不断优化和丰富课程内容,以确保每位学员都能获得最有价值的学习体验。为了更精准地满足您的学习需求,我们诚挚地邀请您参与到我们的课程规划中来。请您在下面的问卷中,分享您 感兴趣的学习主题或您希望深入了解的知识领域 。您的每一条建议都是我们宝贵的资源,将直接影响到我们课程的改进和创新。我们期待您的反馈,因为您的参与和支持是我们不断前进的动力。感谢您抽出宝贵时间,与我们共同塑造更加精彩的学习旅程!https://www.wjx.cn/vm/YgPfdsJ.aspx# 再次感谢大家宝贵的意见!

New! Stata 搜索神器:lianxh 和 songbl  GIF 动图介绍
搜: 推文、数据分享、期刊论文、重现代码 ……
👉 安装:
  . ssc install lianxh
  . ssc install songbl
👉  使用:
  . lianxh DID 倍分法
  . songbl all

🍏 关于我们

  • 连享会 ( www.lianxh.cn,推文列表) 由中山大学连玉君老师团队创办,定期分享实证分析经验。
  • 直通车: 👉【百度一下: 连享会】即可直达连享会主页。亦可进一步添加 「知乎」,「b 站」,「面板数据」,「公开课」 等关键词细化搜索。


连享会
连玉君老师团队分享,主页:lianxh.cn。白话计量,代码实操;学术路上,与君同行。
 最新文章