paper2skills Playbook

ALM-MTA 前门因果多触点归因 - 剔除隐藏混淆的广告真实 ROI 剥离

Skill-FrontDoor-Causal-MTA · 13-广告分析

causalexperimentforecastingoptimization广告与投放供应链与补货WF-A 智能补货WF-B 广告优化WF-G Listing内容优化WF-H 复购增长
年化 ROI150-300 万元
实现难度⭐⭐⭐☆☆
业务视角
适用角色广告优化师 / 投放负责人 · CMO · 运营负责人
适用平台Amazon PPC(SP/SB/SD)· TikTok Ads · Meta 广告 · 多平台归因
什么情况下用广告账户几十个系列,不知道哪个在真正赚钱;ROAS 看起来好看但实际利润没有提升;预算有限想集中打高价值用户
成功是什么样的每分广告预算有明确 ROI 追踪,砍掉低效渠道后同等预算 ROAS 提升 30-50%
业务痛点
ROAS 好看但利润没有涨不知道哪个素材真的有效归因窗口期不同数据打架TikTok/Meta/Amazon 广告数据整合不了

1. 解决的问题

孕晚期用户购买周期 6-8 周,在"下定决心买推车"后主动搜索并点击所有重定向短信/DPA 广告

2. 核心算法逻辑

多触点归因的致命缺陷:广告数据中存在一个隐身幽灵——未观测混淆因子 U(用户内心的强烈购买意愿)。这个幽灵同时导致用户"疯狂点击各种重定向广告(触点 T)"并且"最终购买(转化 Y)"。传统模型把 U 的全部功劳都错误归到广告渠道头上,结果重定向广告(Retargeting)ROAS 虚高,真正创造需求的上漏斗渠道(TikTok/FB Awareness)被严重低估。

3. 业务应用场景

- 业务问题:孕晚期用户购买周期 6-8 周,在"下定决心买推车"后主动搜索并点击所有重定向短信/DPA 广告。Last-Click 把 500 美金订单 100% 归给"最后那条打折短信",导致短信渠道 ROAS=8x,TikTok Awareness ROAS=1.2x。预算持续向短信倾斜,拉新渠道萎缩 → 全局流量恶性循环。 - 数据要求:用户级触点序列(渠道名、时间戳)+ 购买标签 Y + 行为代理指标(每用户 PDP 平均停留时长或滑动深度合成指数) - ALM-MTA 操作: - 代理 M = `scroll_depth_score × 0.6 + dwell_time_norm

- 业务问题:新品吸奶器在 TikTok Creator 生态投放 KOL 内容(触点 A)+达人 Shop 链接(触点 B)+Amazon 品牌广告(触点 C)。用户在看到 KOL 内容时已有强购买意愿,导致 Amazon 广告被高估,KOL 内容被严重低估,创作者生态预算持续缩减。 - 数据要求:TikTok Creator API 视频观看深度(作为代理 M)+ 三渠道触点 + 购买转化 - 预期产出:KOC/KOL 内容的真实因果 ROAS,用于优化达人分佣和内容预算;Amazon 广告从"功劳抢夺者"还原为"收割层" - 业务价值:KOL 内容预算优化后 CPM 效率提升约 30%,

4. 输入数据要求

请查看原始代码模板获取输入规格。

5. 输出结果

请查看原始代码模板获取输出规格。

6. 业务价值 / ROI

  • ROI 预估
  • 中型母婴品牌月广告预算 150-300 万元,重定向广告占比通常 30-40%
  • 矫正后识别虚假 ROI 水分,预算从 Retargeting 向上漏斗重分配 20-30%
  • 保守估计:新客增量 15-25%,年化新增 GMV 300-800 万元
  • 实施成本:1 名数据工程师 + 2 周开发接入,一次性成本约 3 万元
  • 回收周期:< 1 个月

7. 代码模板

代码块数量:2 · 路径:未检测到

"""ALM-MTA 前门因果多触点归因 — 核心用法示例"""
from model import (
    simulate_frontdoor_data,
    ALMMTAPipeline,
    ALMMTAConfig,
    compute_roas_correction,
)

# 1. 准备用户级数据(真实场景替换为业务数据)
df, _, channels = simulate_frontdoor_data(n_users=5000, seed=42)

# 2. 运行归因管道
config = ALMMTAConfig(
    latent_dim=4,
    adversarial_weight=1.5,
    n_iter_purifier=300,
    n_bins_frontdoor=5,
)
pipeline = ALMMTAPipeline(config=config)
result = pipeline.fit_predict(df, channels)

# 3. 查看因果 vs 朴素归因对比
print(result.summary_df())
# 输出示例:
#              渠道  因果 ATE  朴素相关  偏差倍数  因果贡献%  朴素贡献%
#  fb_awareness  0.165   0.127   -0.23    32.5     63.5
# tiktok_content  0.211   0.059   -0.72    41.5     29.5
#   retarget_sms  0.132   0.014   -0.89    26.0      7.0

# 4. 计算矫正 ROAS 并做预算重分配决策
spend = {'fb_awareness': 80000, 'tiktok_content': 70000, 'retarget_sms': 50000}
roas_df = compute_roas_correction(result, spend, total_revenue=500000)
print(roas_df)
# retarget_sms 原始ROAS=0.70,矫正ROAS=2.60 → 水分倍数=0.27
# 说明 73% 的 ROAS 来自用户自身意愿,而非广告贡献

8. 论文来源

  • 2605.08881