← 返回作品集

🛒 电商漏斗 + A/B 测试解读器

淘宝 2900 万条真实用户行为(287,004 用户 / 10 天,阿里云天池公开集)。漏斗与 RFM 用的是项目跑出的逐级真实数字; A/B 测试区让你自己拖样本量、拖提升幅度,实时看统计功效和显著性——并讲清楚 p 值到底是什么。 源码

29,128,402行为记录
287,004用户
2.24%PV→购买转化
36.04%加购→购买转化
74.6%次日留存

A/B 测试工作台 · 调参数看结果

下面这台计算器复刻了项目里那场真实 A/B 的思路:对照组 vs 实验组,看转化率提升是否显著。默认参数=项目真实基线(对照 4.43%、提升 +0.44%、每组约 50 万用户)。


显著性水平固定为 α = 0.05(业界惯例)。上面三个数,下面实时出结论。

① 显著性(p 值)

—
p 值
—

② 统计功效 Power

—
在 α=0.05 下,检验发现这个提升的概率
—

它在算什么 · 三步流水线(全部在你的浏览器里完成)

1算两组转化率

实验组转化率 = 对照 × (1+提升)。这里:4.43% → 4.47%。

→
2双比例 Z 检验

用两组转化的标准误差归一化差异得到 z 值,再换算成 p 值。

→
3功效与结论

p<0.05 → 显著;功效=在 α=0.05 下能发现该提升的概率。两者都算给你看。

真实漏斗 · 每一级转化率(项目实测)

行为次数口径(pv→fav/cart→buy)。越往下越窄,最粗的瓶颈在"点击 → 兴趣行为"——约 93.8% 的点击没有产生任何收藏或加购。

怎么读漏斗(人话版)

加购 → 购买 36.04% 是漏斗里效率最高的环节——加购用户已有强烈购买意向,购物车召回(短信/推送)是 ROI 最高的抓手。

收藏 → 购买 69.07% 转化高但总量小(84 万 vs 加购 162 万),收藏是长决策周期的信号。

点击 → 任何兴趣行为只有 ~6%——首页/列表页的推荐精度是最大优化点,这正说明了项目做推荐排序的意义。
数据源:reports/sql_analysis_summary.md 第 2.3 节(03_conversion_funnel.sql)。

RFM 用户分层 · 真实占比(六档)

NTILE(5) 自动分箱 + 生命周期状态迁移。二八定律在真实数据里非常扎眼:8.5% 的高价值用户贡献了 42.3% 的购买。

RFM 分层明细表

层级占比平均购买购买贡献

沉睡(12.3%) + 流失风险(23.0%) = 35.3% 是召回潜力池;新用户(22.4%) 贡献仅 5.2%,首单引导在注册 48h 内最有效。

方法注释(一句人话版)

p 值:假设"实验组其实没效果"(原假设 H₀)成立,光靠随机波动也凑出当前这么大差异的概率。p=0.43 就是说——就算你的新功能屁用没有,也有 43% 的几率随机看到这么大的差距,所以它"不显著",不能证明有效。

统计功效 Power:当提升真的存在时,检验能把它找出来的概率。行业标准是 ≥80%。功效低 = 样本太小,"真的有效也没本事发现"。

AB 测试真实结论(诚实版):项目里那场 A/B 是 post-hoc 离线模拟(用对照训练推荐器、给实验组模拟曝光),测得 提升 +0.44%、p=0.43、不显著——低命中率的 item-CF 在模拟里几乎产不出因果效应。框架本身(SRM 哈希分组 + 对称 Z 检验)是严谨可用、可直接迁移到真实线上的。

更接近真实的因果实验:项目另用"加购当天"作真实处理、三窗口时序 + 倾向得分 + AIPW 双重稳健估计,测得加购对 3 天购买 +6.97pp(95%CI [+6.17, +7.80]),安慰剂臂(收藏)仅有 +2.34pp——真实效应约是混淆下限的 3 倍。
生产管线:Polars ETL → DuckDB SQL → dbt(31 项数据质量测试) → XGBoost/统计推断,见 src/shoplytics/ 与 reports/。

数据源汇总:漏斗/RFM reports/sql_analysis_summary.md;AB(0.44%/p=0.43) 与准实验(+6.97pp) reports/pipeline_summary.json、reports/uplift_quasi_results.json。