美文网首页
Stata: 各类全要素生产率 TFP 估算方法

Stata: 各类全要素生产率 TFP 估算方法

作者: stata连享会 | 来源:发表于2020-01-07 23:04 被阅读0次

    刘帅 (武汉大学)
    E-mail: 421888599@qq.com

    Stata连享会   计量专题 || 精品课程 || 简书推文 || 公众号合集

    点击查看完整推文列表

    2020寒假Stata现场班

    北京, 1月8-17日,连玉君-江艇主讲

    image

    2020连享会-文本分析与爬虫-现场班

    西安, 3月26-29日,司继春-游万海 主讲;  (附助教招聘)

    image

    [[toc]]

    摘要

    与工具变量法和固定效应法一样,控制函数法也是一种常用的全要素生产率估算的方法。Olley and Pakes (1996)、Levinsohn and Petrin (2003) 、Ackerberg, Caves, and Frazer (2015) 都对全要素生产率的两步估计法作出了贡献,Wooldridge (2009) 则提出了基于GMM框架下的一步一致估计方法。本文基于Wooldridge (2009) 的估计方法,并运用Blundell and Bond (1998) 的动态面板工具变量法,提出了一种新的全要素生产率的估计方法,并通过蒙特卡洛模拟对该方法进行了评估。 我们还开发了一个新的 Stata 命令 prodest 进行全要素生产率的估计。本文通过与其他相关命令进行对比,展示了该命令的优点。

    本推文将简要介绍全要素生产率计算方法的原理,着重介绍 Stata 估计命令的运用。

    1. 引言

    正确估计全要素生产率在应用经济领域是一个基础性问题,也是一些具有深远影响文献的主要话题。一般来说,如果一个企业的资本存量较大,那么在面对低效率冲击时,其留在该市场的概率要远远高于那些具有较低资本存量的企业,因为这种规模较大的企业往往对未来的收益抱有更高的预期,从而不会轻易退出目前的市场。这就使得在面对低效率冲击时退出市场的概率和企业资本存量存在负相关关系,从而使得资本项的估计系数容易出现低估偏误。学者们提出不同方法以缓解此问题:固定效应法 (FE) 、工具变量法 (IV) 、控制函数法。

    在控制函数法中,Olley and Pakes (1996) 首次提出了两步估计法以克服内生性问题:用投资水平作为生产率的代理变量。 该方法得到了Levinsohn and Petrin (2003) 和
    Ackerberg, Caves, and Frazer (2015) 进一步完善。 Wooldridge (2009) 则提出了一种一步估计法:在 GMM 框架下得到 Levinsohn–Petrin (LP) 估计结果。

    以上方法都依赖于一个假设:企业在 t 期面临动态利润最大化问题。这就意味着 t 期生产率冲击 (后文中 \varepsilon_{i t}) 不影响状态而影响自由变量。因此生产率冲击与当期的状态变量无关,与自由变量的滞后项无关,所以这些变量可以作为工具变量。然而,增加滞后项会损失样本信息。

    本文基于动态面板工具变量对 Wooldridge 的估计方法进行了改进。这种改进可以在增加矩限制的同时而不损失信息。改进后的方法称之为 MrEst ,我们通过一系列模拟检验展示该方法能够产生稳健的结果,在“大N,小T”的面板数据中比 Wooldridge 的方法表现更好。

    本文将重点介绍一个新的命令 prodest,该命令可以实现上述所有全要素生产率的计算方法。

    2. 控制函数方法简介

    考虑以下 C-D 函数:

    y_{i t}=\alpha+\mathbf{w}_{i t} \boldsymbol{\beta}+\mathbf{x}_{i t} \boldsymbol{\gamma}+\omega_{i t}+\varepsilon_{i t} \quad (1)

    其中,

    • y_{i t} 是产出的对数值。
    • \mathbf{W}_{i t} 是一系列自由变量,也是取对数值。
    • \mathbf{x}_{i t} 是一系列状态变量,取对数值。
    • \omega_{i t} 是观测不到生产率。
    • \varepsilon_{i t} 是一个白噪声冲击。

    我们假设OP法和LP法的生产率都符合一阶马尔科夫过程:

    \begin{aligned} \omega_{i t} &=E\left(\omega_{i t} | \Omega_{i t-1}\right)+\xi_{i t} \\ &=E\left(\omega_{i t} | \omega_{i t-1}\right)+\xi_{i t} \\ &=g\left(\omega_{i t-1}\right)+\xi_{i t} \end{aligned} \quad (2)

    其中,\Omega_{i t-1} 是决策信息集合,\xi_{i t} 是生产率冲击,与生产率和状态变量均无关。

    下面,本文介绍了 6 种全要素生产率的计算方法,其中前 5 种为现有文献中已经提出的较为成熟的方法,最后一种为本文提出的基于动态面板的改进方法。

    2.1 OP 法

    Olley and Pakes (1996) 最早提出了两步一致估计法,其核心思想是把公司的投资水平作为生产率的代理变量。该方法假定企业根据当前企业生产率状况,据此做出投资决策,因此用企业的当期投资作为不可观测生产率冲击的代理变量,从而解决了同时性偏差问题。

    一般来说,状态变量通常是是资本,而自由变量通常为劳动。OP法需要满足投资与生产率之间单调递增。

    构造如下投资函数:

    i_{i t}=f\left(\mathbf{x}_{i t}, \omega_{i t}\right)(3)

    其反函数为:

    \omega_{i t}=f^{-1}\left(i_{i t}, \mathbf{x}_{i t}\right)=h\left(i_{i t}, \mathbf{x}_{i t}\right)(4)

    原生产函数变为:

    \begin{aligned} y_{i t} &=\alpha+\mathbf{w}_{i t} \boldsymbol{\beta}+\mathbf{x}_{i t} \boldsymbol{\gamma}+h\left(i_{i t}, \mathbf{x}_{i t}\right)+\varepsilon_{i t} \\ &=\alpha+\mathbf{w}_{i t} \boldsymbol{\beta}+\Phi_{i t}\left(i_{i t}, \mathbf{x}_{i t}\right)+\varepsilon_{i t} \end{aligned} \quad (5)

    其中

    \Phi_{i t}\left(i_{i t}, \mathbf{x}_{i t}\right)=\mathbf{x}_{i t} \boldsymbol{\gamma}+h\left(i_{i t}, \mathbf{x}_{i t}\right)=\mathbf{x}_{i t} \boldsymbol{\gamma}+\omega_{i t} \quad (6)

    通过估计式 (5) ,可以得到 β 的一致估计。接下来,用此估计值继续估计 γ。

    由式 (5) 式和 (2) 式 可得:

    \begin{aligned} y_{i t}-\mathbf{w}_{i t} \widehat{\boldsymbol{\beta}} &=\alpha_{0}+\mathbf{x}_{i t} \boldsymbol{\gamma}+\omega_{i t}+\varepsilon_{i t} \\ &=\alpha_{0}+\mathbf{x}_{i t} \boldsymbol{\gamma}+E\left(\omega_{i t} | \omega_{i t-1}\right)+\xi_{i t}+\varepsilon_{i t} \\ &=\alpha_{0}+\mathbf{x}_{i t} \boldsymbol{\gamma}+g\left(\omega_{i t-1}\right)+e_{i t} \end{aligned} \quad (7)

    其中,e_{i t}=\xi_{i t}+\varepsilon_{i t} \widehat{\omega}_{i t}=\widehat{\Phi}_{i t}-\mathbf{x}_{i t} \gamma,所以得到:

    y_{i t}-\mathbf{w}_{i t} \widehat{\boldsymbol{\beta}}=\alpha_{0}+\mathbf{x}_{i t} \boldsymbol{\gamma}+g\left(\widehat{\Phi}_{i t-1}-\mathbf{x}_{i t-1} \boldsymbol{\gamma}\right)+e_{i t} \quad (8)

    假设函数 g(\cdot) 满足随机游走过程,则得到

    y_{i t}-\mathbf{w}_{i t} \widehat{\boldsymbol{\beta}}=\alpha_{0}+\left(\mathbf{x}_{i t}-\mathbf{x}_{i t-1}\right) \gamma+\widehat{\Phi}_{i t-1}+e_{i t} \quad (9)

    e_{i t}=y_{i t}-\mathbf{w}_{i t} \widehat{\boldsymbol{\beta}}-\alpha_{0}-\mathbf{x}_{i t} \boldsymbol{\gamma}^{*}-g\left(\widehat{\Phi}_{i t-1}-\mathbf{x}_{i t-1} \boldsymbol{\gamma}^{*}\right) \quad (10)

    一旦 (9) 式被估计完成,那么生产函数中所有系数都会被成功估计。利用这一结果,我们可以拟合生产函数中残差的对数值,这也就是全要素生产率的对数值。

    2.2 LP法

    OP法需要满足投资与生产率之间单调递增,这就意味着那些投资额为零的样本并不能被估计。事实上,由于并非每一个企业每一年都有正的投资,被丢弃掉了。

    LP法则对OP法进行了改进,其核心思想是:不是用投资额作为代理变量,而是代之以中间品投入指标。LP法使得研究者可以根据可获得的数据灵活选择代理变量。

    2.3 Ackerberg–Caves–Frazer 修正

    OP和LP法都假设企业面对生产率冲击能够对投入进行无成本的即时调整。Ackerberg, Caves, and Frazer (2015) 和 Bond and Soderbom (2005) 则认为劳动(自由变量)的系数只有在自由变量和代理变量相互独立的情况下才能得到一致估计。否则,第一步的估计系数之间存在严重的共线性。针对此问题,他们提出了修正方法。

    2.4 Wooldridge 估计

    Wooldridge (2009) OP 和 LP 的估计方法进行了改进,他提出了基于 GMM 的一步估计法,该方法具有两个有点:(1) 克服了 ACF 提出的在第一步估计中潜在的识别问题; (2) 在考虑序列相关和异方差的情况下,能够得到稳健标准误。

    2.5 ACF的工具变量估计:Robinson估计

    在满足ACF的情况下,如果存在投入的时滞效应,那么第一阶段的方程无法识别任何参数。这时候需要用到 Robinson 的 IV 估计方法。

    2.6 动态面板工具变量法:MrEst

    正如 Wooldridge (2009) 建议的,GMM 框架中滞后项是有效的工具变量,但是加入滞后项会损失观测值。在常见的文献中,大多数数据观测值都不是很多,加入滞后项造成观测值损失这一问题更明显。为了解决此问题,本文在Wooldridge (2009) 框架下,运用Blundell and Bond (1998) 提出的动态面板工具变量方法进行修正。

    3. 全要素生产率估计的 Stata 操作

    本文重点介绍 prodest 命令。该命令的基本语法为:

     prodest depvar [if] [in], method(options)  \\\
             free(varlist) proxy(varlist) state(varlist)  \\\
             [options]
    

    其中,

    • depvar : 表示被解释变量,这里应该是产出的对数形式
    • method : 表示选择的估计方法
    • free : 表示自由变量
    • proxy : 表示代理变量
    • state : 表示状态变量

    选项 [options] 如下表所示:

    method 选项 含义
    op OP法,Olley and Pakes (OP 1996)
    lp LP法,Levinsohn and Petrin (LP 2003)
    wrdg Wooldridge (2009) 提出的方法
    rob Robinson (1998) and Wooldridge (2009) 提出的方法
    mr Mollisi and Rovigatti (MrEst 2017) 提出的方法

    Notes: method(), free(), proxy(), 和 state() 是必须要填写的。

    进一步说明如下:

    1. oplp 方法下,后面加入 acf 表示进行 ACF 修正。
    2. valueadded 表示 depvar 是增加值,而不是产出值。
    3. id 是指企业代码变量;t 指时间变量;reps 指的是 bootstrap 次数,默认 5次;
    4. poly 指的是多项式阶数,默认值为 3。(注释:对于式 (6),既可以采用局部线性回归进行估计,也可以采用高阶多项式非线性回归估计。)

    4. 实例演示

    下面采用作者提供的演示数据进行实例演示。演示数据由命令的编写者提供。

    use "E:\yanshi\data.dta"
    xtset id year
    

    我们先看一下数据各变量:

    sum
     Variable |        Obs        Mean    Std. Dev.       Min        Max
    -------------+---------------------------------------------------------
              id |      2,544    15770.49     7355.94      10007      40475
            year |      2,544    2001.042    3.223341       1996       2006
           log_y |      2,544    13.00315    1.462817   8.769663   18.57996
           log_k |      2,544     11.6683    2.156707    2.70805   18.21685
        log_lab1 |      2,544    1.769697    1.357786          0   6.861712
    -------------+---------------------------------------------------------
        log_lab2 |      2,544    1.679659    1.447586          0   6.439351
    log_materi~s |      2,544    4.108881    1.546106          0   9.944486
    log_invest~t |      2,544    11.13678     2.33267   1.072183   18.08836
    

    log_y 是产出,log_k 是资本,log_lab1、log_lab2 是两种劳动,log_materi 是中间品, log_invest 是投资。

     // LP method
    prodest log_y, method(lp) free(log_lab1 log_lab2) proxy(log_materials) state(log_k) valueadded  id(id) t(year) reps(50)
    predict lp, resid
    
    //LP method with ACF correction
    prodest log_y, method(lp) free(log_lab1 log_lab2) proxy(log_materials) state(log_k) valueadded acf id(id) t(year) reps(50)
    predict lpacf, resid
    
    //OP method
    prodest log_y, method(op) free(log_lab1 log_lab2) proxy(log_investment) state(log_k) valueadded id(id) t(year) reps(40) poly(4)
    predict op, resid
    
    //OP method with ACF correction
    prodest log_y, method(op) free(log_lab1 log_lab2) proxy(log_investment) state(log_k) valueadded acf optimizer(nm) id(id) t(year) reps(50)  
    predict opacf, resid
    
    //WRDG method
    prodest log_y, method(wrdg) free(log_lab1 log_lab2) proxy(log_materials) state(log_k) valueadded id(id) t(year) poly(2)
    predict WRDG, resid
    
    //MrEst method
    prodest log_y, method(mr) free(log_lab1 log_lab2) proxy(log_materials) state(log_k) valueadded lags(1) id(id) t(year) poly(2)
    predict MrEst, resid
    

    predict 用来得到残差,即全要素生产率。再用 sum 查看数据,可知:

    sum
     Variable |        Obs        Mean    Std. Dev.       Min        Max
    -------------+---------------------------------------------------------
              id |      2,544    15770.49     7355.94      10007      40475
            year |      2,544    2001.042    3.223341       1996       2006
           log_y |      2,544    13.00315    1.462817   8.769663   18.57996
           log_k |      2,544     11.6683    2.156707    2.70805   18.21685
        log_lab1 |      2,544    1.769697    1.357786          0   6.861712
    -------------+---------------------------------------------------------
        log_lab2 |      2,544    1.679659    1.447586          0   6.439351
    log_materi~s |      2,544    4.108881    1.546106          0   9.944486
    log_invest~t |      2,544    11.13678     2.33267   1.072183   18.08836
              lp |      2,544    10.96286    1.066562   7.459942   15.05695
           lpacf |      2,544    5.779031    .8841653    2.97516   9.391429
    -------------+---------------------------------------------------------
              op |      2,544    10.20758    .9346142   7.033391    13.8874
           opacf |      2,544    6.111483    .8551028    3.47782   9.514537
            WRDG |      2,544    10.48609    .9871158   7.157567   14.25115
           MrEst |      2,544    10.47634    1.000236   7.107223   14.27033
    

    下面,我们对6中方法的全要素生产率结果进行对比。

    tw (kdensity lp) (kdensity lpacf) (kdensity op)(kdensity opacf)(kdensity WRDG)(kdensity MrEst )
    
    image.png

    我们还计算了6种全要素生产率的相关关系矩阵

    pwcorr_a lp lpacf op opacf WRDG MrEst
    
       |       lp    lpacf       op    opacf     WRDG    MrEst
    -------------+------------------------------------------------------
              lp |   1.000   
           lpacf |   0.325***  1.000   
              op |   0.985***  0.473***  1.000   
           opacf |   0.392***  0.992***  0.533***  1.000   
            WRDG |   0.996***  0.407***  0.996***  0.472***  1.000   
           MrEst |   0.997***  0.394***  0.994***  0.459***  0.999***  1.000   
    
    

    5. 参考文献

    • Rovigatti G, Mollisi V. Theory and practice of total-factor productivity estimation: The control function approach using Stata[J]. The Stata Journal, 2018, 18(3): 618-662.
    • Ackerberg D A, Caves K, Frazer G. Identification properties of recent production function estimators[J]. Econometrica, 2015, 83(6): 2411-2451.
    • Blundell R, Bond S. Initial conditions and moment restrictions in dynamic panel data models[J]. Journal of econometrics, 1998, 87(1): 115-143.
    • Levinsohn J, Petrin A. Estimating Production Functions Using Inputs to Control for Unobservables[J]. Review of Economic Studies, 2003: 317-341.
    • Olley G S, Pakes A. The dynamics of productivity in the telecommunications equipment industry[J]. Econometrica, 1996, 64(6): 1263-1297.
    • Wooldridge J M. Estimating systems of equations with different instruments for different equations[J]. Journal of Econometrics, 1996, 74(2): 387-405.
    • Wooldridge J M. On estimating firm-level production functions using proxy variables to control for unobservables[J]. Economics Letters, 2009, 104(3): 112-114.
    • 鲁晓东, 连玉君. 中国工业企业全要素生产率估计: 1999—2007[J]. 经济学(季刊),2012(02):179-196.

    关于我们


    欢迎加入Stata连享会(公众号: StataChina)

    相关文章

      网友评论

          本文标题:Stata: 各类全要素生产率 TFP 估算方法

          本文链接:https://www.haomeiwen.com/subject/yaxgoctx.html