傾向得分匹配(PSM)操作過程與問題反思

2021-03-02 管理學季刊

1.數據來源

來源:網絡資源,其實也比較容易找,比如人大經濟論壇。但為了避免相關的版權爭議,我重新寫了一個do文件,處理的方法和變量也有改變。

舉例:接受培訓對於工資的影響

分析思路:(1)驗證選擇性的存在;(2)傾向值打分;(3)匹配估計量

兩種方法:pscore;psmatch2

所選用數據:國家支持工作示範項目(National Supported Work,NSW)

2.原理

需要估計的內容:處理效應,Treatment Effect

評估某項目或政策實施後的效應,如政策推出的各種項目,此類研究被稱之為項目效應評估,也被稱之為處理效應,項目參與者的全體構成控制組或對照組,而未參加項目者則構成控制組或對照組。即y1i-y0i。

選擇性偏誤:
由於個體通常會根據其參加項目的預期收益E(y1i-y0i)而自我選擇是否參加項目,導致對平均處理效應的估計帶來困難。

兩大假定:
可忽略性:給定xi,則(y0i,y1i)獨立於Di
均值可忽略性:在給定xi的情況下, y0i和y1i都均值獨立於Di

匹配估計量的基本思路:
找到屬於控制組的某個體j使得其與屬於處理組的個體i的可測變量取值儘可能相似,即xi ≈xj。
基於可忽略性假設,則個體i與個體j進入處理組的概率相近,具有可比性,故可將yj作為y0i的估計量。

目標:

在一般的實證研究中,由於存在很多其他變量混淆自變量和因變量之間的關係,研究者很難直接探索二者之間的淨效果( net effects)。這些混淆變量的影響通常被稱為選擇性誤差( selectionbias) , 而通過傾向值匹配的方式來控制和消除選擇性誤差

3.實操

變量:

變量

定義

treat

接受培訓(處理組)表示1,沒有接受培訓(控制組)表示0

age

年齡

educ

受教育年數

black

虛擬變量,black=1

hsip

虛擬變量,hsip=1

marr

婚姻狀況虛擬變量,已婚,marr=1

re74

1974年實際工資

re75

1975年實際工資

re78

1978年實際工資

u74

當在1974年失業,u74=1

agesq

age*age

educsq

educ*educ

re74sq

re74*re74

re75sq

re75*re75

u74blcak

u74*blcak


(1)檢驗選擇性的存在

**--基本命令--**

cd: work_file_path...

use nswpsid.dta,clear

browse

rename _all,lower
*我手頭的數據變量名全部為大寫,便於觀察,我統一修改為小寫

reg re78 treat age educ black hisp marr re74 re75 agesq educsq nodegree re74sq re75sq u74black u74hisp

reg re78 treat

下圖中,treat效果並不顯著。大量的自變量的存在也導致了一定的共線性問題,也就是說,其他變量稀釋了treat變量解釋的方差。

下圖顯示,treat顯著,說明是存在選擇性問題的。

(2)傾向值打分

**--基本命令--**

global breps 1000
*設定重複抽樣全局宏1000次

global vars age agesq educ educsq black hisp marr re74 re75 re74sq u74 u75 u74hisp nodegree  
*設定一個全局宏vars,代表後面的變量

pscore treat $vars, pscore(myscore) comsup blockid(myblock) numblo(10) level(0.005) logit

*設置block,設置顯著性水平0.005,採用logit估計。一般而言,logit和probit都是比較常用的估計方法。
*這個模型也叫作選擇模型。
*我們應該先檢驗打分的平衡性。

選擇模型

描述~~

滿足了平衡性要求。

(3)匹配估計量

注意:由於採用了自助法抽樣,而且是1000次,所以計算起來會費時費力,在此僅做演示。

(電腦配置:臺式機,六代i7處理器,16G內存,1T硬碟+256G SSD。部分模型計算時間超過五分鐘)

方法一:近鄰匹配(nearest neighbor matching)

含義:最鄰近匹配法是最常用的一種匹配方法,它把控制組中找到的與處理組個體傾向得分差異最小的個體,作為自己的比較對象 。
優點:按處理個體找控制個體,所有處理個體都會配對成功,處理組的信息得以充分使用。
缺點:由於不捨棄任何一個處理組,很可能有些配對組的傾向得分差距很大,也將其配對,導致配對質量不高,而處理效應ATT的結果中也會包含這一差距,使得ATT精確度下降。 

*--基本命令--**
set seed 12345
*(產生隨機數種子)
attnd re78 treat $vars,comsup boot reps($breps) dots logit

可以看到,這個估計結果並不好。但經過重複抽樣之後,可以看到估計結果有了明顯的改善。

方法二:半徑匹配(radius matching)

半徑匹配法是事先設定半徑,找到所有設定半徑範圍內的單位圓中的控制樣本,半逕取值為正。隨著半徑的降低,匹配的要求越來越嚴。

**--基本命令--**

set seed 12345
attr re78 treat $vars, comsup boot reps($breps) dots logit radius(0.001)

在重複抽樣後,標準誤和t值估計的更為穩健。

方法三:分層匹配(stratification matching)

分層匹配法是根據估計的傾向得分將全部樣本分塊,使得每塊的平均傾向得分在處理組和控制組中相等。
優點:Cochrane ,Chambers(1965)指出五個區就可以消除95%的與協變量相關的偏差。這個方法考慮到了樣本的分層問題或聚類問題。就是假定:每一層內的個體樣本具有相關性,而各層之間的樣本不具有相關性。
缺點:如果在每個區內找不到對照個體,那麼這類個體的信息,會丟棄不用。總體配對的數量減少。

**--基本命令--**

set seed 12345
atts re78 treat $vars, pscore(mypscore) blockid(myblock) comsup boot reps($breps) dots

可以看到,在抽樣評估之前,並沒有估計出準確的t值的解析解。自助法抽樣之後,得到了數值。

方法四:核匹配法(kernel matching)
核匹配是一種非參數方法,通過構造一個虛擬對象來匹配處理組,構造的原則是對現有的控制變量做權重平均,權重的取值與處理組、控制組PS值差距呈反向相關關係。

**--基本命令--**

set seed 12345
attk  re78 treat $vars,comsup boot reps($breps) dots logit

核估計同樣如此。

方法五:馬氏距離

由於在傾向得分匹配第一階段估計傾向得分時存在不確定性,Abadie and Imbens的相關研究又重新回到更簡單的馬氏距離,進行有放回且允許並列的k近鄰匹配,針對非精確匹配一般存在偏差,提出了偏差校正的方法,通過回歸的方法估計偏差,然後得到偏差校正匹配估計量。

**--基本命令--**

nnmatch re78 treat $vars, m(4) tc(att) population  bias(bias) robust(4)

以下內容下次再進行介紹~~

(4)模型總結和匯總

根據一般論文中匯報的結構,進行制表和製圖(ps在控制組和幹預組的支持圖)。

(5)傾向得分估計的另一種思路:psmatch2

在接續之前,我還是要簡單回顧一下上篇文章的內容。

第一部分:數據來源

用的是國家支持工作示範項目(National Supported Work,NSW)數據,這個數據在計量經濟學中的地位,應該不亞於auto.dta(汽車數據)的地位。所以在絕大多數涉及到PSM或者「處理效應模型」的教材中,都會使用這個數據。

在示例中,使用的是一個子數據集nswpsid.dta,這個數據子集是由Dehejia和Wahba倆人構建出來的(1999),原始數據是Lalonde在1986年使用的。

本文數據及分析有兩個來源:

第一個來源在Cameron&Trived《微觀計量經濟學:方法與應用》(中譯本,上海財經大學出版社,2010)pp794-800。

第二個來源在陳強的《高級計量經濟學及stata應用(第二版)》(高等教育出版社,2014)pp546-555。

第一個來源主要是介紹pscore,第二個來源介紹psmatch2,兩個方法其實沒有什麼本質的差別。

第二部分:PSM的原理

步驟:(1)驗證選擇性的存在;(2)傾向值打分;(3)匹配估計量

第三部分:PSM的實際操作

幾種方法:

緊鄰匹配、卡尺匹配、分層匹配、核匹配、馬氏距離等等。其實遠不止這五種,不過要說常用,這幾種屬於比較常用的方法。

(4)模型總結和匯總

根據一般論文中匯報的結構,進行制表和製圖(ps在控制組和幹預組的支持圖)。

制表這個太基礎了,大家可以自行查閱相關的論文,如何匯報匹配估計量及其檢驗結果。當然,不能忘記敏感性分析。

一般而言,我們會選用box-plot或者kdensity-plot,在下面,分別展示一下。

**--基本命令--**

*箱圖
gr box myscore, over(treat) scheme(s1mono) saving(ps_box.gph,replace)

*核密度圖
kdensity myscore if treat==0, normal xtitle("Control") scheme(s1mono) saving(ps_2006_1.gph,replace)
kdensity myscore if treat==1, normal xtitle("Treated") scheme(s1mono) saving(ps_2006_2.gph,replace)
gr combine ps_2006_1.gph ps_2006_2.gph, xcommon ycommon saving(ps_2006.gph,replace)

在這個樣例中,箱線圖做出來的效果其實很差。為什麼呢?因為treat==1的組別樣本量太少。

但是,在核密度圖中,這個效果表現的就非常好。因為核估計是非參數估計的,所受到的約束會更小。

下圖為參照組:

下圖為幹預組:

傾向得分估計的另一種思路:psmatch2

其實呢,psmatch2和pscore除了句法結構稍有不同之外,估計的結果等是完全相同的。

我大致列一下命令,感興趣的朋友可以自行嘗試。

**--基本命令--**

use nswpsid,clear

rename _all,lower

global breps 1000
global vars age agesq educ educsq black hisp marr re74 re75 re74sq u74 u75 u74hisp nodegree  

psmatch2  treat $vars ,out(re78)


*近鄰匹配
psmatch2  treat $vars,out(re78) neighbor(2) ate
*半徑匹配
psmatch2  treat $vars,out(re78)  ate radius caliper(0.01)
*核匹配
psmatch2  treat $vars,out(re78)  ate kernel

*對自變量進行平衡性檢驗
pstest $vars, both graph

*共同支持區間
psgraph

近鄰匹配~~

跳過幾個步驟,直接到pstest

最後得到圖形如下:

共同支持區間:

比較差。還是樣本量的原因。

形而上者謂之道,形而下者謂之器。或者也可以將形而下稱之為「術」。

做計量研究,其實最初步的研究就是「技術層面」的問題,我們可以知其然(術)不知其所以然(道),根據課本的例子就可以去照貓畫虎生造一些模型。這個方法用於初學和訓練當然無可指摘,但長久下來,這個學習方法肯定是不行的。(在這裡就不涉及論文寫作中的「問題意識」了,單純討論方法論)

那什麼是「道」這個層面的問題呢?當然,往上一步就是方法論。計量研究的方法論是個「求真」的過程,在通俗的語境來解釋,就是一個「精確估計」樣本統計量並儘可能準確地推斷總體的過程。這和經驗哲學以及科學哲學有著很多契合,就是所謂的「工具理性」。具體到研究中,精確地估計(準確--是不可能達到的目標)就需要克服各種實實在在的困難,這些困難會干擾結果。

那麼,「這些困難」也就回到了「誤差項」這個範疇中,也就是各種內生性和異質性的問題了。所以,計量研究方法論最核心的問題就是怎樣解決內生性問題。

兜了這麼大圈子,說說傾向值匹配的優點吧:毫無疑問,相比於常規的OLS,在OLS對選擇性或者幹預性時間的估計出現偏誤時候,PSM可以(在一定程度上)克服選擇性問題。通過設定選擇模型,實現控制組和幹預組的狀態的「拉平」和配對。進一步,實現了可忽略假設以及反事實推斷中「若甲是乙,在同等幹預條件下會如何」的設定。最後就是匹配估計量。

看上去很完美。

但結局很殘酷。

越複雜的模型越脆弱,假設越強,設定條件越多。所以PSM是有很強的局限性的。

考慮到我的表述不太精確,引用陳強《高級計量經濟學及stata應用》pp.545的一段話:

(1)PSM通常要求比較大的樣本容量以達到高質量的匹配。

(2)PSM要求除立足於控制組的傾向得分有較大的共同取值範圍;否則會丟失較多的觀測值,導致剩下的樣本不具有代表性;

(3)PSM只控制了可側變量的影響,如果仍然存在依不可測變量選擇(selection on observable),仍然會帶來隱形偏差。

另外呢,Gary King和 Richard Nielsen在2015年的工作論文「Why Propensity Scores Should Not Be Used for Matching」中也講了一些為什麼這個方法會存在問題。題目有點兒駭人聽聞,其實主要是講,有些PSM的研究忽視了樣本間的不平衡性,用PSM生造出來的研究肯定會有這個問題。我把二人的摘要貼出來,看一下為啥會這樣~~

Researchers use propensity score matching (PSM) as a data preprocessing step to selectively prune units prior to applying a model to estimate a causal effect. The goal of PSM is to reduce imbalance(目的就是為了減少不平衡性) in the chosen pre-treatment covariates between the treated and control groups, thereby reducing the degree of model dependence and potential for bias(削減模型依賴性及偏誤). We show here that PSM often accomplishes the opposite of what is intended — increasing imbalance, inefficiency, model dependence, and bias. Theweakness of PSM is that it attempts to approximate a completely randomized experiment, rather than, as with other matching methods, a more powerful fully blocked randomized experiment. PSM, unlike other matching methods, is thus blind to the often large portion of imbalance that could have been eliminated by approximating full blocking. Moreover, in data balanced enough to approximate complete randomization, either to begin with or after pruning some observations, PSM approximates random matching which turns out to increase imbalance. For other matching methods, the point where additional pruning increases imbalance occurs much later in the pruning process, when full blocking is approximated and there is no reason to prune, and so the danger is considerably less. We show that these problems with PSM occur even in data designed for PSM, with as few as two covariates, and in many real applications. Although these results suggest that researchers replace PSM with one of the other available methods when performing matching, propensity scores have many other productive uses.(最後並不是完全地否定)

來源:微信公眾號計量經濟圈

相關焦點

  • PSM-傾向得分匹配分析的誤區
    背景❞術語速查:「MR」:多元線性回歸「FFM」:函數形式設定錯誤「PSM」:傾向得分匹配分析傳統上,研究者使用多元線性回歸(MR)可以緩解一些內生性問題。傾向得分匹配❞「2.1 簡要介紹」一項好的研究往往能為為「因果關係」提供令人信服的經驗證據。但是,鑑於多數研究中使用的數據都是「非實驗數據」,研究者在處理內生性問題時會面臨諸多困難。
  • 一文讀懂傾向得分匹配法(PSM)舉例及stata實現(一)
    本文主要包括傾向匹配得分命令簡介、語法格式、傾向匹配得分操作步驟 思路,涉及傾向匹配得分應用、平衡性檢驗、共同取值範圍檢驗、核密度函數圖等內容。
  • 傾向匹配得分教程(附PSM操作應用、平衡性檢驗、共同取值範圍、​核密度函數圖)
    計量百科·資源·乾貨:本文主要包括傾向匹配得分命令簡介、語法格式、傾向匹配得分操作步驟 思路,涉及傾向匹配得分應用、平衡性檢驗、共同取值範圍檢驗、核密度函數圖等內容。在傾向得分匹配方法( Propensity Score Matching )中,根據處理指示變量將樣本分為兩個 組,一是處理組,在本例中就是在 NSW 實施後接受培訓的組;二是對照組 ( comparison group ),在本例中就是在 NSW 實施後不接受培訓的組。
  • 玩轉Stata | 傾向得分配對(PSM)內生性檢驗利器
    所以在此介紹傾向得分匹配方法(PSM)。本文在此就不介紹相關理論了,因為小編的理論也不是特別的好,如果想學習的可以參閱連玉君老師的相關視頻(重點推介),大概有5個課時;同時也可以參考陳強老師的《高級計量經濟學及stata應用》中的第28章處理效應。在此小編僅僅介紹stata的相關操作。
  • Propensity Score Matching 傾向得分匹配
    從整個系統的角度看,這個自主選擇的過程說明是否選擇參加培訓是內生變量,忽視這個過程導致內生性問題。因此,依據傾向得分進行匹配是一個簡單易行的選擇。我們丟棄觀測組中傾向得分低於實驗組傾向得分最小值、以及高於實驗組傾向得分最大值的數據,保證只比較有相似的傾向得分的實驗組和觀測組對象,然後分析數據的分布。
  • 內生性問題和傾向得分匹配, 獻給準自然試驗的厚禮
    Part II 傾向得分匹配方法1.數據來源來源:網絡資源,其實也比較容易找,比如人大經濟論壇。但為了避免相關的版權爭議,我重新寫了一個do文件,處理的方法和變量也有改變。方法三:分層匹配(stratification matching)分層匹配法是根據估計的傾向得分將全部樣本分塊,使得每塊的平均傾向得分在處理組和控制組中相等。優點:Cochrane ,Chambers(1965)指出五個區就可以消除95%的與協變量相關的偏差。這個方法考慮到了樣本的分層問題或聚類問題。
  • 傾向匹配得分教程【pscore、psmatch2、官方命令Teffects操作及應用】
    本文主要包括傾向匹配得分命令簡介、語法格式、傾向匹配得分操作步驟 思路,涉及傾向匹配得分應用、平衡性檢驗、共同取值範圍檢驗、核密度函數圖等內容。
  • 傾向得分配對宏
    ]配對好睏難呀,請問傾向得分配對要如何處理呢?[問題剖析]實際上,在財務研究中,配對方法有很多種,傾向得分配對是近幾年來流行的作法,在筆者讀博期間,大多數的配對都是採用相似特徵值配對,這些學術文獻大概都有這樣的論述本篇文章採用與事件公司同一年度、同產業但未發生事件的公司做為配對公司群體,並從中選出與事件公司相似的規模、BM、營利能力(...)等變量進行配對,在準則中,大約是選取鄰近10%-30%的特徵值進行配對
  • Stata新命令:psestimate - 傾向得分匹配中協變量的篩選
    雖然 PSM 不能完全解決內生性問題,但卻能在很大程度上緩解自我選擇問題導致的偏差。平衡性假設在 PSM 匹配時,用treat變量對控制變量進行Logit回歸,得到傾向得分值。傾向得分值最接近的控制組個體即為實驗組的配對樣本,通過這種方法可以最大程度減少實驗組與控制組個體存在的系統性差異,從而減少估計偏誤。
  • 傾向得分匹配:psmatch2 還是 teffects psmatch
    時至今日,仍不時有學生來諮詢我在使用 psmatch2 過程中所遇到的種種問題,可見其依然流行。然而,雖然 psmatch2 提供了豐富的具體匹配方法,但它最大的缺陷則在於其標準誤(standard errors)並不正確。基於標準誤對於統計推斷的重要性,這是 psmatch2 的致命弱點。 事實上,psmatch2 在匯報 PSM 估計結果時,已經委婉暗示了此局限性。
  • 傾向性匹配得分分析(PSM)是一種不太靠譜的方法
    圖3.彈出上圖對話框,組指示符選擇「treat」,即幹預因素,須為二分類變量;預測變量框裡選入所有混雜因素,傾向變量名即每個個體的傾向評分得分變量名,可隨意填寫(字母或字母加數字)、匹配容差可從較小的數值填寫,根據情況填寫;匹配id變量名,即可輸出一個變量,告訴我們每個case的匹配對象的id;數據集名稱可自行填寫。點擊確定可得到匹配結果。
  • 統計計量丨傾向得分匹配:psmatch2 還是 teffects psmatch
    比如,在下圖 psmatch2 估計結果底部的 Note 中,已經聲明「所提供的標準誤並未考慮到傾向得分是估計的」(S.E. does not take into account that the propensity score is estimated)。這意味著,在計算此標準誤中,有個不現實的假定,即假設所估計的傾向得分就是真正的傾向得分;這自然會導致偏差。
  • 傾向得分匹配法的詳細解讀.doc
    今天,商小研就要給大家介紹一種可以用來緩解自選擇偏誤的計量方法——傾向得分匹配法!為了解決上述的問題,我們可以利用匹配的思想,將控制組的個體按照各特性(協變量集中的變量)「距離」相近的方法與處理組中的個體進行匹配,這就使得匹配過後的個體除是否接受處理外並無顯著差異,所以就在一定程度上緩解了自選擇偏誤。這就是PSM中的匹配法思想。但是,在匹配之前我們需要考慮一個問題。
  • 一文讀懂PSM-DID操作及應用
    雙重差分傾向得分匹配
  • 因果推斷簡介之四:因果推斷簡介之四:觀察性研究,可忽略性和傾向得分
    Neyman; propensity score; 傾向得分; 匹配; 可忽略性; 回歸分析; 因果推斷; 混雜因素; 觀察性研究; 隨機化試驗這節採用和前面相同的記號。Z 表示處理變量(1 是處理,0是對照),Y 表示結果,X 表示處理前的協變量。
  • 認真談談PSM傾向性分析
    如圖1所示,在進行匹配之前,研究對象中581人發生了貧血,8244人未發生貧血,貧血病人與非貧血病人的絕大部分臨床特徵(如性別、年齡、體重指數、吸菸史等)之間均存在統計學差異。採用傾向匹配法之後,共有436例貧血患者找到了能與之匹配的非貧血患者。由圖1可見,匹配之後貧血與非貧血患者之間各特徵保持均衡。
  • 精神病傾向測試丨你的得分越高說明精神疾病傾向越嚴重
    經常放別人鴿子討厭被騙兒童時期做過殘忍的事喜歡誇讚自己的成就習慣性欺騙他人心安理得的做錯事與別人的觀點經常不合認為自己口才比別人好做過觸犯法律的事經常性對成就無感戀愛周期短過度依賴他人性格衝動覺得自己即使觸犯法律也是個高智商罪犯自制力偏低總是尋求刺激好高騖遠缺乏責任感性意識濃厚且不分場合不理解別人感動的事普通人進行該測試得分往往低於10分,不超過16分,這代表沒有精神變態。
  • 【更新通知】手把手教你Stata軟體操作與案例分析更新,速來!
    、實證分析中如何操作【Stata案例操作】Ch8  面板門限(檻)模型8.1  面板門限模型介紹【理論微課】含建模步驟流程圖 8.2  面板門限模型【Stata案例操作】 8.3  完整【實例】操作演示 Ch9  內生性問題 9.1  內生性【理論微課
  • 【融會貫通】教學反思該反思個啥?
    >教學反思不是對方法的重複教學反思要審視方法的效用而不是方法本身教學反思不是說課堂出現的問題問題完全可以寫,但是最重要的是問題的深層剖析教學反思不是說教學效果好教學效果可以寫,但是要說明效果來自怎樣的設計有效的教學反思其實只有一句話就是要認清和優化下一次的教學
  • 真問題驅動的深度教學反思
    那麼什麼是真問題呢?首先,「真問題」要聚焦特定的主題,只有聚焦於特定主題的問題,才是能夠進一步深入的、真正有價值的問題,一旦聚焦於「特定主題」,這一主題將統領整個教學反思過程。其次,這問題要指向教學改進,教學反思中的真問題,應該是教學改進,迫切需要去解釋的問題,且教師本人也有研究的欲望和研究熱情的問題。