隨機係數Logit模型及Stata實現

2020-12-12 騰訊網

  歡迎投稿(薦稿)計量經濟圈,計量相關都行

  作者:北京交通大學經濟管理學院博士生,王琦珀。歡迎你加入計量經濟圈社群,一起探討前沿計量理論和實證方法。

  一、隨機係數Logit模型

  1.背景

  實證產業組織(Empirical Industrial Organization,EIO)是目前產業組織理論的前沿,其中又以Ariel Pakes為帶頭人,其近期工作論文包括The Competitive Effects of Information Sharing、Moment Inequalities for Multinomial Choice with Fixed Effects等(Asker et al.,2016;Pakes&Porter,2016)。其中Berry,Levinsohn&Pakes(1995)建立的隨機係數離散選擇模型(現通常稱為BLP模型)結合了隨機係數和Logit模型,允許價格的內生性,所以是當前需求估計建模理論和應用的熱點。

  國內應用較好的文章如陳立中、李鬱芳(2011),餘東華、王蒙蒙(2015),肖俊極、譚詩羽(2016),研究的都是乘用車市場,主要原因是數據的適用性,研究主題包括稅收政策、汽車減排、併購合謀等。國外的文章中,較新的有Friberg& Romahn(2015),Barros(2016),Zhang et al.(2016)等,研究的範圍有啤酒市場、運輸市場等。Vincent(2015)開發了Stata的blp estimator,幫助廣大的Stata用戶進行研究,但是目前使用該程序的文章較少。

  2.模型結構

  Nevo(2000)對BLP模型進行了深入的介紹,BLP模型的具體內容可參照該文章,在此轉引知乎「驚記」的回答:

  BLP模型假設消費者選擇產品j的效用函數是

  其中是產品的特徵(比如在汽車市場就是性能,大小,品牌等等)是價格,

  是對應這兩個變量的係數。和普通的logit model區別在於,在不同消費者之間可以不同(比如張三更在乎性能,而李四不太在乎性能)。為了加入這種偏好差異同時不加入過強的假設,我們假設他們的形式是

  其中是兩個常數,而是期望為的隨機變量,所以這個模型是random coefficient。對於的分布假設,一般會直接取正態分布然後估計他們的standard deviation;對於價格係數這種肯定為負的係數,可以把它的隨機部分假設為log normal來保證符號不會變化。至於叫logit model的原因在於效用函數裡的一般假設為GEV分布。

  BLP模型在估計參數時分為兩步(1)通過擬合市場份額來估計非線性參數;(2)通過GMM來估計線性參數。在此不作細緻介紹,詳細可見「驚記」的回答或Nevo原文。

  3.適用範圍

  首先,消費者的效用偏好要有顯著差異。在blp中需要表徵產品特徵差異的變量,如汽車市場中人們可能對汽車的大小、顏色這些指標有不同的偏好。

  其次,數據為市場份額。如電商市場,若能得到華為Mate10,蘋果X在某一年的市場銷售份額數據,那麼就可以用BLP。

  第三,一般不同市場的價格要有變化。若不同市場中產品一直保持一個價格,那麼估計會無效。

  最後,模型儘量是非動態模型。BLP已經有兩層iteration,在計算上很耗時間,如果再加上動態模型,比如耐用品,或者serially correlated cost這種情況,就相當於又加上了一到兩層iteration,跑起來簡直遙遙無期。(轉自驚記)

  劉忠等(2012)總結了BLP模型的應用領域,主要包括兼併審查、新產品經濟特性、產業政策審查、福利測算等。目前論文的寫作方法一般為研究對象的事實(案例)分析+理論推導+BLP估計結果分析+彈性分析,在對其中的數據進行合併時,就可推演出併購合謀、新政策影響等預測,從而估計福利變化。但由於數據的可獲取性,最為保險的應用領域仍然是乘用車市場,若能夠利用數據爬取或內部資料,可分析諸如電商市場、運輸市場等。

  二、Stata安裝及基本語法

  1.命令安裝和示例數據獲取

  net install st0408.pkg

  net get st0408.pkg

  2.語法

  可以看出,在option裡面有三個是必填的,即endog、stochastic和markets。具體含義如下:

  endog //內生,需填寫內生變量=工具變量,如:汽車價格=燃料價格cpi人口數……

  stochastic //產品特徵,即與其他產品產生差異的變量,當使用非調查問卷(人口統計數據)時,可直接填寫如: 排量,車型……

  markets //市場,表示市場的變量

  三、示例及含義解釋

  1.無人口統計數據時

  use blp_nodemo //使用樣本數據,該數據中包含10種產品25個市場:s為市場份額,p為產品價格,w1、w2、w3代表影響產品成本的工具變量,x1為產品特徵,mkt為市場,product代表產品。

  gen w12=w1^2 //生成其他影響產品成本的變量,下同

  gen w22=w2^2

  gen w32=w3^2

  gen x12=x1^2

  bysort mkt: egen x1s=sum(x1) //生成代表競爭的產品差異化水平的變量

  replace x1s=x1s-x1

  blp s x1, stochastic(x1) endog(p=w1 w2 w3 w12 w22 w32 x12 x1s) markets(mkt) //使用Standard instruments進行估計,結果如圖1

  blp s x1, stochastic(x1) endog(p=w1 w2 w3 w12 w22 w32 x12 x1s) markets(mkt) optinst(w1 w2 w3) //使用Optimal instruments進行估計,結果如圖2

  圖1 Standard instruments估計結果

  圖2Optimal instruments估計結果

  2.使用人口統計數據時

  use blp_demo //使用樣本數據,該數據中包含10種產品50個市場,含義同上,其中x1由人口統計變量d1、d2表示,d1、d2存儲在專門的數據集demodata.dta中。

  gen w12=w1^2

  gen w22=w2^2

  gen w32=w3^2

  gen x12=x1^2

  bysort mkt: egen x1s=sum(x1)

  replace x1s=x1s-x1

  blp s x1, stochastic(x1=d1 d2,p) endog(p=w1 w2 w3 w12 w22 w32 x12 x1s) markets(mkt) optinst(w1 w2 w3) demofile(demodata) initdemo(1,1) initsd(1,1) elast(p,1,product) //使用Optimal instruments估計,結果如圖3

  matrix list e(elast) //報告價格彈性矩陣,如圖4(只截取1-5產品價格彈性矩陣)

  圖3 Demographic data的Optimal instruments估計結果

  圖4 產品價格彈性(部分)

  References

  Asker, J., Fershtman, C., Jeon, J., & Pakes, A. (2016). The competitive effects of information sharing. Nber Working Papers.http://www.nber.org/papers/w22836

  Barros, C.P., Demand analysis in Angola seaports.Maritime Policy & Management, 2016. 43(6): p. 676-682.

  Berry, S., J. Levinsohn, and A. Pakes,Automobile prices in market equilibrium.

  Econometrica,1995.63: p. 841–890.

  Friberg, R. and A. Romahn, Divestiture requirements as a tool for competition policy: A case from the Swedish beer market.International Journal of Industrial Organization, 2015. 42: p. 1-18.

  Nevo, A., A Practitioner's Guide to Estimation of Random-Coefficients Logit Models of Demand. Journal of Economics & Management Strategy, 2000. 9(4): p. 513-548.

  Pakes, A., & Porter, J. (2016). Moment inequalities for multinomial choice, with fixed effects. Nber Working Papers.http://www.nber.org/papers/w21893

  Vincent, D.W., The Berry-Levinsohn-Pakes estimator of the random-coefficients logit demand model.Stata Journal, 2015. 15(3): p. 854-880.

  Zhang, Y., et al., The impact of car specifications, prices and incentives for battery electric vehicles in Norway: Choices of heterogeneous consumers.Transportation Research Part C-Emerging Technologies, 2016. 69: p. 386-401.

  驚記回答:誰能簡單解釋一下經濟學中的BLP模型?-知乎https://www.zhihu.com/question/63050927/answer/205227770

  陳立中、李鬱芳,汽油價格、稅收政策與乘用車市場的微觀選擇行為——基於需求側、供給側和節能減排效應估計.中國工業經濟, 2011(08):第15-24頁.

  劉忠等,隨機係數LOGIT模型的最新發展及其應用.經濟學動態, 2012(12):第125-130頁.

  肖俊極、譚詩羽,中國乘用車行業的縱向一體化與橫向共謀實證分析.經濟學(季刊), 2016(04):第1387-1408頁.

  餘東華、王蒙蒙,橫向併購反壟斷審查中的競爭損害模擬分析——以一汽併購華晨為例.財貿研究, 2015(06):第47-54+115頁.

  作者準備的PDF 版本連結: https://pan.baidu.com/s/1jyEevwNaOn-gvL4c35JnTg 密碼: 5vqc

  給推文作者讚賞,我們會全部移交於他,如果你覺得推文作者辛苦或者用心,那就在文後給該作者打賞吧。歡迎你加入計量經濟圈社群,一起探討前沿計量理論和實證方法。

  幫點擊一下下面的小廣告,謝謝支持!

相關焦點

  • Stata:多元 Logit 模型詳解 (mlogit)
    即某種選擇相對自己的 log-odds 始終為 0,致使該組別對應的任何解釋變量係數也必然為0。首先,Logit 模型估計的關鍵在於選定基準組 ( base group ),所有係數均是相對於基準組進行估計;其次,我們通常從概率的角度出發對 Logit 模型進行解讀。與二元 Logit 模型相似,基於勝算比 (odds) 對模型參數進行解釋能夠使模型更加簡明易懂。
  • 互助問答第366期:logit模型在stata操作中出現的問題
    logit模型在stata操作中出現的問題在進行logit模型回歸,在stata中輸入的命令是logit y x i.year i.industry, cluster(id),然而發現控制行業後出現下圖的情況,回歸時部分樣本被刪除
  • Stata: 如何檢驗分組回歸後的組間係數差異?
    如果兩個樣本組中的模型設定是相同的,則兩組之間的係數大小是可以比較的,而且這種比較在多數實證分析中都是非常必要的。下面使用我在stata初級班講座 (連玉君課程)中的例子,列舉幾種方法。調入 stata 自帶的數據集 nlsw88.dta。
  • reg2logit:用OLS估計Logit模型參數
    logit 模型主要是探究解釋變量對離散的被解釋變量的影響,而判別分析需要用已有的訓練集進行訓練,得到判別準則係數,從而實現對目標樣品的歸類,從這個維度看,判別分析是一種機器學習的方法。然而部分用於進行判別分析的電腦程式不提供 Logit 模型係數的估計值、標準誤、T 值。
  • Stata:隨機森林算法簡介與實現
    並且,當自變量的數量大於觀察值的數量時,線性回歸和邏輯回歸將無法運行,但隨機森林可以有效地回歸。實際上,隨機森林是表現最佳的統計學習算法之一。為此,本文將簡要介紹隨機森林算法、實現命令 rforest、以及案例。 2.
  • Stata15.0中文版正式發布!又要騙我去學習了
    Stata15提供了許多新功能,其中包含:擴展的回歸模型(Extended regression models):模型可配適連續、二元、順序結果變數並結合內生性共變量、樣本選擇與非隨機處理效果潛在類別分析(Latent class analysis)貝葉斯,輸入bayes,45個stata評估命令都可以來擬合貝葉斯模型
  • Stata: 為何使用 Logit 模型?Logit 模型評價
    在最近的一篇 博文 中,Paul von Hippel 對他之前關於線性概率模型的論點進行了擴展,他認為:在很多情況下,線性概率模型(通過普通最小二乘估計)比 Logit 回歸模型更可取。並且在他發表的兩篇文章中,von Hippel 提出了以下三個要點:在 0.20 到 0.80 的預測概率區間內,線性概率模型與 Logit 模型非常相近。
  • STATA學習總結(4):回歸及釋義
    實現,reg income educationcoefficient(coef.)為斜率b_cons 為截距a 斜率b表示:x每增加一個單位,y的變化情況b的檢驗,通過判定係數R²,R²表示,在y的所有差異中,由於x的變化所解釋掉的比例。
  • 玩轉Stata | 傾向得分配對(PSM)內生性檢驗利器
    表示計算得分的時候使用logit模型,如果不寫Logit,默認為probit模型計算得分,在連玉君的視頻中論述了二者並不存在明顯的差異。      ATE表示同是匯報ATE、ATU、ATT,大家看書重點了解      common表示僅對共同取值範圍內的個體進行匹配      odds使用機率比(odds ratio)算法為p/(1-p),熟悉logit模型的應該了解      qui屏幕中不顯示logit模型估計過程,可以節省運算時間
  • 【ECON-01】貿易引力模型及其Stata實現
    2.2 研究步驟針對短面板數據,一般要確定選擇固定效用模型還是隨機效用模型,固定效用模型是否要考慮時間效用等步驟,具體流程如下:3 應用實例3.1 參數估計由於本數據集共包括75個變量,且本案例僅為演示模型的計算過程,故只考慮部分候選變量對雙邊貿易出口額的影響。
  • 用Stata搞實證之面板模型入門
    如果你的城市是以數值如1,2,3,4來命名的,則可以省略這一步緊接著,可以用xtset來聲明面板模型的截面和時間在stata裡,x代表個體或截面(在計量中和paper裡,個體一般用n或i來表示,面板的模型的公式角標一般是it或者nt),t代表時間,set便是設置的意思。在stata裡,一般與面板相關的命令都會以xt開頭
  • Stata 16 正式發布:新增16+項主要功能特徵詳細介紹
    1Importing of SAS and SPSS dataset從SAS與SPSS中導入數據從各個軟體之間相互可以導入數據,互相兼容已經成為計量經濟學軟體的一個趨勢,小編發現spss24.0版本已經可以實現從spss中導入stata以及sas格式的數據,並且從spss中導入stata格式的數據,各方面的數據結構類型都還可以
  • Stata語言中的常用函數及其用法解釋, 在附上42篇Stata相關學習資料
    怎麼在Stata實現,11.Stata15版新功能,你竟然沒有想到,一睹為快,12."高級計量經濟學及Stata應用"和"Stata十八講"配套數據,13.數據管理的Stata程序功夫秘籍,14.非線性面板模型中內生性解決方案以及Stata命令,15.把動態面板命令講清楚了,對Stata的ado詳盡解,16.半參數估計思想和Stata操作示例,17.Stata最有用的points都在這裡,無可替代的材料,18.PSM傾向匹配Stata操作詳細步驟和代碼,乾貨十足,19.隨機前沿分析和包絡數據分析
  • Maximum Likelihood Estimation in STATA
    我們將使用lf方法來估計四種常見的模型: binary logit, binary probit, OLS, and mixed logit model.+ 所有program 中使用的新的變量要用tempvar+ ml model lf logitlf (eq1: foreign = weight length) 這一行是定義模型,即使用lf方法的logit_lf模型,模型中的y是foreign,而解釋變量包括了weight和length。+ ml maximize 這一行是對上述模型進行求解,計算出對應最大loglikelihood的參數。
  • 零基礎的同學如何用stata做一元線性回歸模型?
    stata軟體越來越受研究生的喜歡,很多研究生在做統計研究、學術分析的時候,也多選用此軟體。網上有關stata的教程有很多,但對於沒有基礎的同學來說,學起來稍微就有些吃力了。那麼,零基礎的同學應該如何學習呢?如何用stata做出滿意的一元線性回歸模型呢 ?
  • Stata: 面板數據模型-一文讀懂
    本文主要就普通靜態面板數據模型進行介紹,包括模型形式設定、模型分類與選擇及 Stata 程序實現等。為固定效應模型的擬合優度係數(不受約束模型),Stata 實現本部分以 Kleiber 和 Zeileis (2008) 的Grunfeld.dta數據集為例,說明運用面板數據模型的一般步驟。3.1.
  • 零基礎的同學如何用Stata做廣義估計模型(GEE)?
    什麼是廣義估計模型?廣義估計方程的打開方式又是怎樣的?在Stata中如何選取合適的變量、合適的代碼進而做出廣義估計模型(GEE)?今天,我們將學習如何在stata軟體中進行廣義估計模型(GEE)的操作,希望大家都能有所收穫。
  • 乾貨貼 | STATA與面板回歸模型(一)
    和spss、eviews等可視化軟體相比,stata用起來要方便的多,敲代碼的快樂,真的是體驗後才能知曉!以下是本人在本科畢業論文中使用的代碼,都是從各網站搜索而來,如有不當之處,歡迎留言指正!:隨機:xtreg pat env open rd size lev roe sub age   open2,reest store re固定:xtreg pat env open rd size lev roe sub age   open2,feest store fe霍斯曼檢驗:hausman fe re
  • 【學習記·第38期】stata常見問題及解決辦法
    . dis sqrt(exp(-4.8536))或者disexp(-4.8536/2)6.關於hausman檢驗,結果是CHI2(2)=2355.81,prob>chi2=0.000,可以使用隨機效應模型嘛?prob>chi2=0.000,is like p-value.
  • Stata 函數大全
    lngamma(x) 返回.gamma函數的自然對數log10(x) 以10為底對數函數logit(x) 返回logit函數值 logit(x)= ln{x/(1-x)}max(x1,x2,...>•   yw(Y, W)     從年,星期得到一個stata日期值,表示距1960年1月1日有多少個星期•    ym(Y, M)    從年,月得到一個stata日期值,表示距1960年1月1日有多少個月•    yq(Y, Q)     從年,季度得到一個stata日期值,表示距1960年1