带你读《2022技术人的百宝黑皮书》——倾向得分匹配(PSM)的原理以及应用(3) https://developer.aliyun.com/article/1247864?groupCode=taobaotech
Stratification and Interval Matching 分层区间匹配
分层匹配可以看作radius matching的一种相似版本,即将倾向得分分成多个区间,在每个区间内进行匹配。需要注意的是,分层的依据除了propensity score,也可以用一些我们认为重要的特征(如性别、地区),在相同特征
的用户间进行匹配。
匹配示例SQL
在计算复杂度不太高的情况下,我们通常能够使用sql进行匹配算法的实现,示例如下:
with matching_detail as ( select t1.user_id as treatment_userid, t1.score as treatment_pscore, t2.user_id as control_userid, t2.score as control_pscore, row_number() over (partition by t1.user_id order by abs(t1.score-t2.score) asc) as rn from propensity_score_treatment t1 left join propensity_score_control t2 -- 分层匹配 on t1.gender = t2.gender and round(t1.score, 1)*10 = round(t2.score, 1)*10 where abs(t1.score-t2.score) <= 0.05 -- caliper matching ) select * from matching_detail where rn = 1 # rn大于1时为多邻居/radius匹配
上述的三种方法实际上都只使用了对照组中的部分样本,若希望使用对照组中的所有样本可对对照组中的样本整体赋权,计算整体的差值。
匹配质量检验
鉴于我们基于倾向分做匹配,需要检测其他特征在实验组与对照组之间的分布是否相近。
理论依据:因为 ,在给定 的情况下, 与 应该相互独立。也就是说倾向得分相同时, 的分布应该趋近一致。
可量化的指标——标准化偏差 Standardised Bias
通过标准化偏差我们可以衡量 在实验组与对照组分布的差异大小,通常我们认为低于5%的偏差是可以接受的(当然越小越好)。
带你读《2022技术人的百宝黑皮书》——倾向得分匹配(PSM)的原理以及应用(5) https://developer.aliyun.com/article/1247862