倾向得分匹配PSM | 双重差分DID | AB Test对比

发布时间:2026/8/25 7:09:07

倾向得分匹配PSM | 双重差分DID | AB Test对比
倾向得分匹配PSMPSM能解决什么问题在一场促销活动后业务发现领券的的人均下单金额120元没有领券的人均下单金额80元。是因为发放消费券使得下单金额提升的吗—— 不一定因为领券的人群本来就更爱买东西可能没有券一样会买。这就是选择偏差。两组人群起点不一样不能直接比较。我们希望比较的是 “和领券人群差不多的人如果没领券会怎样”也就是需要找历史消费、活跃度、年龄都相似但刚好没领券的人再比两人花了多少钱这个方法就叫 匹配Matching。那“倾向得分”起到什么作用现实影响领不领券的因素很多比如历史消费金额、所在城市级别、活跃天数、是否容易被push触达等如果按这么多特征一一匹配结果就是几乎找不到完全相同的人。原理的核心是只要两个人在「领券概率」上一样就说明他们“各方面综合相似”。所以PSM起到的作用是第一步用历史特征算每个人“看起来有多像会领券的人”倾向得分第二步给每个领券的人找一个得分最接近、但没领券的人第三步对比两组的结果 —— 这就可以证明下单金额的提升是消费券的作用。本质就是把多维匹配问题压缩成一维得分再匹配。PSM是基于什么原理PSM 基于两个核心理论支柱潜在结果框架Rubin Causal Model, RCM、条件独立假设Conditional Ignorability / Unconfoundedness通俗地说先算一个人“有多像会接受干预的人”再只比较得分相近、但一个干预一个没干预的两人从而近似随机实验的效果。举个例子平台发了 10 万张“满 50 减 10”优惠券用户可以自己领。月底一看领券的人平均花了 120 元没领券的人平均花了 80 元。能不能说领券让人多花了 40 元 不能因为愿意领券的人本来就更爱买东西。如果不处理这个“选择偏差”效果会被严重高估。这时候用 PSM倾向得分匹配给每个领券的人找一个“长得像他、但没领券”的人再比较。消费层级领券人数领券GMV未领券人数未领券GMVPSM效应low500605000555medium1500130800012010high800180300017010结果解读在 low低消费人群里效应只有 5在 medium/high中高消费人群里效应是 10优惠券对中高消费人群效果更好对低消费人群拉动有限。以后发券可以减少给低频用户的投放集中资源给中高频用户。双重差分DID双重差分DID是基于什么理论潜在结果模型Rubin Causal Model, RCM 平行趋势假设Parallel TrendsDID 基于潜在结果框架通过在面板数据中引入个体固定效应和时间固定效应利用处理组与对照组在干预前后双重差分识别平均处理效应ATT它的因果识别依赖于平行趋势假设也就是若无干预两组结果变量的时间趋势是相同的。平行趋势假设若无干预处理组和对照组的 outcome 随时间的变化趋势相同为什么不直接用AB Test而要用DID之所以用 DID 而不是 A/B是因为很多业务和政策干预无法随机分配之所以用 DID 而不是简单前后或组间对比是因为 DID 能同时消除不随时间变的个体异质性和共同时间冲击从而避免严重的混淆偏误。AB Test 不适用的场景限制说明不能随机化​政策、法规、全量上线、线下门店、城市级干预伦理/商业不允许​不能故意不给某些用户核心权益历史数据复盘​功能已上线无法回滚重做实验网络效应/溢出​同一城市随机会污染如补贴、推荐。溢出的概念处理组的干预“漏”到了对照组使对照组不再代表无干预状态。破坏了AB测试的核心假设无相互干扰SUTVA被破坏。比如给A组的用户发券B组的用户没有那么A组的区域订单变多司机/骑手就去A组区域接单导致B组的订单更难被满足了B组的转化率因此被A组影响。或者A组用户把优惠发给B组朋友拼单等B组也受益了压低AB组直接的差距。因为 A/B 要求组间互不干扰而上面场景做不到而采用DID 能用地理/时间隔离代替用户级随机规避同一城市内的溢出污染。举个例子平台1月在北京上线优惠活动想测算活动能不能对GMV带来提升。上海没有这个活动作为对照组。问题是北京消费比上海高1月有元旦春节等节假日大家本来就会多花钱。而DID可以消除这两个干扰的影响。citymonthtotal_amountbeijing2023-111000beijing2023-121100beijing2024-011300beijing2024-021400shanghai2023-11900shanghai2023-12950shanghai2024-011000shanghai2024-021050组别政策前11–12月政策后1–2月变化北京处理组(10001100)/2 1050​(13001400)/2 1350​300上海对照组(900950)/2 925​(10001050)/2 1025​100DID (北京变化)−(上海变化) (300)−(100) 200业务意义优惠活动让北京用户每个月多贡献了 200 元业绩。拆解上海涨了 100 → 这是元旦/春节的自然增长北京多涨了 200 → 这是免配送费的真实效果PSM与DID区别与联系PSM 是横向对比只关心组内特征是否平衡。目的是让两组静态可比。DID 纵向横向对比先算各自前后变化消个体差异再比变化量的差消时间冲击。目的是让两组变化趋势可比。维度PSMDID解决偏误来源​选择偏差组间特征不同组间固有差 时间共同冲击数据要求​丰富协变量 X前后面板 对照组关键假设​条件独立已观测全平行趋势匹配维度​横截面特征相似时间 组别趋势相似能消未观测固定异质​❌✅不随时间那部分一句话总结“找和他差不多的人”“看他和对照组变化差多少”什么时候要用 PSM‑DID 而不是单独 PSM当既有自选又有前后时可以采用PSM‑DIDPSM能做的事① 让处理组和对照组在基期“特征相似”② 控制可以观测的选择偏差。PSM做不到的① 不能消除时间周期的影响比如节假日、大盘增长。② 如果平行趋势边际不满足PSM 样本仍可能残存趋势差。也即PSM 只能消“静态差异”消不掉“趋势差异”。DID能做到③ 不能处理 不随时间而变动的观测不到的比如用户天生特质、潜在付费意愿对趋势的解释。以下场景要用PSM-DID#条件说明1非随机干预用户/城市自选或运营指定需 PSM 平衡协变量2有前后面板同批单位有干预前 干预后能做 DID3处理 / 对照组基线存在显著差异​ 或平行趋势边缘可疑​单独 DID 也可能偏先做 PSM 改善平行趋势条件4你想报告因果效应而非描述差异​需双重差分消除时间×固定效应PSM 补 DID 的短板组间不可比DID 补 PSM 的短板时间趋势、未观测固定效应以下场景不能用PSM-DID情况建议可随机分流A/B直接 RCT随机对照试验只有横截面无前后期只能 PSM承认局限有面板但随机分配城市真自然实验且平行趋势 OK单独 DID 足够处理组 全量用户整个总体都受了干预无对照组需合成控制 / 中断时间序列合成控制法造一个对照组——用多个“未受干预的相似单元”加权组合拼成一个“虚拟对照组”模拟如果该地/产品没被干预会怎样。中断时间序列用干预前后的自身时间趋势——不靠横向对照别人而是用自己干预前的时间序列做对照看干预点前后趋势是否发生突变。DID 、 PSM 与 AB TestA/B 是理想 → DID / PSM 是在观测数据里“尽量像随机实验”。都是为逼近 随机对照试验RCT 的因果识别RCTA/B直接随机 → 无混杂DID用时间和组别双重差分 模拟 RCT 的控制逻辑PSM用匹配 模拟随机分组下的“可比对照组”。三种方法如何选择A/B Test 通过随机化无偏识别因果是黄金标准DID 在无法随机但拥有处理组/对照组前后面板数据时利用双重差分消除不随时间变异质性与共同时间冲击依赖平行趋势假设PSM 在干预非随机且有丰富协变量时通过倾向得分匹配构造可比对照组仅能控制已观测混杂。三者目标相同——估计因果效应适用条件不同常据数据与研究设计选择或联用PSM‑DID。Q1: 能对干预随机分配吗 ├─ YES → ★ A/B Test首选 └─ NO → Q2: 有处理组/对照组【前后面板数据】 ├─ YES → 优先考虑 DID │ └─ 若组间基线差异大 → PSM‑DID └─ NO → 用 PSM确认已观测协变量充分方法能否消未观测偏差说明PSM❌ 只能消可观测观测数据匹配——用已观测特征构造“假随机”对照组DID✅ 消不随时间变未观测需平行趋势准实验 面板——用“前后差分 × 组间差分”模拟控制组AB Test​ ✅✅直接消所有未观测偏差​RCT是因果推断的“黄金标准“3种方法核心对比维度A/B Test (RCT)DID (双重差分)PSM (倾向得分匹配)是否随机​✅ 是❌ 否自然/运营分组❌ 否数据要求​可随机分流 记录结果面板数据同一样本前后 ≥2 期 对照组横截面或面板 丰富协变量 X​控制未观测固定异质​✅ 随机化消去✅ 消去不随时间变部分需平行趋势❌ 只控制已观测 X控制时间冲击​✅同期随机✅通过对照组时间差分❌核心假设​随机化、SUTVA平行趋势​ 无溢出条件独立(CIA)​ 共同支撑典型场景​UI改版、算法上线、发券随机政策试点、城市分批上线、历史复盘用户自选领券/买会员/参加活动主要风险​实操不可行伦理/全量/历史平行趋势不成立 → 偏误遗漏关键未观测变量 → 仍有偏差因果可信度​⭐⭐⭐⭐⭐⭐⭐⭐⭐假设成立⭐⭐⭐仅已观测

相关新闻

Python面向对象进阶:__slots__、@property、枚举类、元类到底是什么?一篇彻底讲明白!(小白必看) (六.2)

Python面向对象进阶:__slots__、@property、枚举类、元类到底是什么?一篇彻底讲明白!(小白必看) (六.2)

2026/8/24 14:05:31

一、多重继承:一个类为什么可以有多个"爸爸"?上一篇文章,我们学习了继承。例如:class Animal:def eat(self):print("动物都会吃东西")创建狗类:class Dog(Animal):pass这时候:dog Dog…

LLM研究动态的生存指南:10个一线博客的技术雷达图谱

LLM研究动态的生存指南:10个一线博客的技术雷达图谱

2026/8/23 18:53:26

1. 这不是一份“资源清单”,而是一份LLM研究动态的生存指南如果你每天打开arXiv首页时,第一反应是快速滑动到“cs.CL”和“cs.LG”分类下,手指悬停在标题上却迟迟不敢点开——因为怕又是一篇30页附录、5个消融实验、3套新指标的论文&#xff…

FPGA加速随机模拟退火算法实现与优化

FPGA加速随机模拟退火算法实现与优化

2026/8/23 8:40:07

1. FPGA实现随机模拟退火算法的核心原理1.1 模拟退火算法的硬件加速挑战模拟退火(Simulated Annealing, SA)作为解决组合优化问题的经典算法,其核心思想源于金属退火过程中的热力学行为。算法通过控制"温度"参数,在搜索空间中逐步收敛到全局最…

LunaTranslator 游戏翻译工具完整上手:零基础 30 分钟跑通 Galgame 日文实时翻译

LunaTranslator 游戏翻译工具完整上手:零基础 30 分钟跑通 Galgame 日文实时翻译

2026/8/25 9:45:01

LunaTranslator 游戏翻译工具完整上手:零基础 30 分钟跑通 Galgame 日文实时翻译 【免费下载链接】LunaTranslator 视觉小说翻译器 / Visual Novel Translator 项目地址: https://gitcode.com/GitHub_Trending/lu/LunaTranslator LunaTranslator 是一款开源免…

为什么你需要自建DoH代理?doh-cf-workers破解运营商DNS封锁的隐私防御全攻略

为什么你需要自建DoH代理?doh-cf-workers破解运营商DNS封锁的隐私防御全攻略

2026/8/25 9:45:01

为什么你需要自建DoH代理?doh-cf-workers破解运营商DNS封锁的隐私防御全攻略 【免费下载链接】doh-cf-workers DNS-over-HTTPS proxy on Cloudflare Workers 项目地址: https://gitcode.com/gh_mirrors/do/doh-cf-workers 运营商DNS劫持、广告污染、隐私泄露…

应届生算法面试指南:手写代码与思路模板实战

应届生算法面试指南:手写代码与思路模板实战

2026/8/25 9:45:01

1. 应届生技术面试中的算法考核现状去年秋招季,我作为面试官参与了公司前后端岗位的校招技术面。在连续两周的高强度面试中,一个现象让我印象深刻:超过60%的应届生在面对手写算法题时,会出现思路混乱、代码冗余甚至完全无法动笔的…

LongtermChatExternalSources记忆原理揭秘:Embedding向量化与余弦相似度检索的完整拆解

LongtermChatExternalSources记忆原理揭秘:Embedding向量化与余弦相似度检索的完整拆解

2026/8/25 9:45:01

LongtermChatExternalSources记忆原理揭秘:Embedding向量化与余弦相似度检索的完整拆解 【免费下载链接】LongtermChatExternalSources GPT-3 chatbot with long-term memory and external sources 项目地址: https://gitcode.com/gh_mirrors/lo/LongtermChatExte…

Path of Building PoE2 离线构建规划:天赋、装备与伤害计算完整指南

Path of Building PoE2 离线构建规划:天赋、装备与伤害计算完整指南

2026/8/25 9:45:00

Path of Building PoE2 离线构建规划:天赋、装备与伤害计算完整指南 【免费下载链接】PathOfBuilding-PoE2 项目地址: https://gitcode.com/GitHub_Trending/pa/PathOfBuilding-PoE2 Path of Building PoE2(PoB2)是一款面向《流放之路…

前端表白网站:HTML/CSS/JS如何承载情感表达

前端表白网站:HTML/CSS/JS如何承载情感表达

2026/8/25 9:35:00

1. 这125个表白网站不是“模板合集”,而是程序员情感表达的完整技术图谱你搜“七夕程序员表白网站”,首页弹出来的几乎全是标题党——“全网最全”“一键下载”“秒变浪漫高手”。但真正打开压缩包,90%是同一套轮播图渐变文字心形SVG的复制粘…

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

2026/8/24 19:53:32

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

2026/8/24 19:56:07

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

2026/8/24 21:16:09

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南

2026/8/25 0:04:34

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory Meta Description:GetQzonehistory 是一个QQ空间历史说…

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

2026/8/25 0:04:35

【题目来源】 https://www.luogu.com.cn/problem/P7912 【题目描述】 小熊的水果店里摆放着一排 n 个水果。每个水果只可能是苹果或桔子,从左到右依次用正整数 1,2,…,n 编号。连续排在一起的同一种水果称为一个“块”。小熊要把这一排水果挑到若干个果篮里&#x…

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

2026/8/25 0:04:35

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG 【免费下载链接】transformers.js State-of-the-art Machine Learning for the web. Run 🤗 Transformers directly in your browser, with no need for a server! 项目地址: https:/…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/22 2:02:26

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/22 4:13:47

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/22 1:32:34

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…