facebookresearch/balance

The balance python package offers a simple workflow and methods for dealing with biased data samples when looking to infer from them to some target population of interest.

解決的問題

balance 是為了減輕數據樣本中的偏差而設計的——例如來自調查或觀察性研究的樣本——這些樣本未能準確反映目標人口。當存在抽樣偏差或非回應偏差時,從樣本數據中推論整體特徵會變得困難。

工作原理

此套件實作了一個工作流程,用於擬合與評估樣本中每個單位的權重。這些權重代表特定受訪者代表目標人口中的多少人,有效「平衡」樣本,使其與目標人口的輔助資訊(共變量)分佈相符。

關鍵調整方法包括:

  • 逆機率加權(IPW),使用 L1(LASSO)懲罰。
  • 共變量平衡傾向得分(CBPS)
  • 事後分層(Post-stratification)
  • 重加權(Raking)

它也提供工具,使用逆機率加權平均值($\mu\hat{}{IPW}$)或結果模型估計值($\mu\hat{}{OM}$)來估計整體結果,以及一種雙重穩健(AIPW)估計器。

適用對象

適用於需要平衡有偏差樣本以產生準確整體估計的研究人員、調查方法學家、人口統計學家、UX 研究人員、市場研究人員,以及資料科學家或機器學習工程師。

特色亮點

  • 多種調整方法:支援 IPW、CBPS、重加權與重加權事後分層。
  • 全面的診斷工具:包含條形圖、密度圖、QQ 圖與「Love 圖」,以視覺化調整前後共變量的平衡狀況。
  • 統計摘要:提供絕對標準化平均差(ASMD)與 Kish 的設計效應,用於評估權重品質。
  • diff-diff 整合:提供輕量級適配器,可使用 balance 產生的權重進行差異中的差異分析。
  • 結果估計:支援 IPW 與結果模型估計器,以進行穩健性檢驗。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案