☰
拆解Oransim的64节点因果图:从曝光到品牌记忆,每个营销预测都透明可审计
2026/10/15 16:57:42 网站建设 项目流程

【免费下载链接】oransim

Causal Digital Twin for Marketing at Scale · Predict any marketing decision before you spend a dollar.

项目地址:https://gitcode.com/gh_mirrors/or/oransim
点击查看免费下载

Oransim 是一个面向营销决策的开源**因果数字孪生(Causal Digital Twin)**平台,核心口号是"在花一分钱之前,先预测你的投放 ROI"。而它最硬核的部分,是一张由领域专家手工设计的64 节点、117 条边的结构因果模型(SCM)图:从宏观环境、投放决策、算法分发,一直到点击、转化、复购,再到品牌记忆与长期品牌资产,每个节点、每条因果边都写在代码里,任何一条营销预测都能沿着这张图逐层追溯、透明可审计。

本文将带你完整拆解这张 Oransim 64 节点因果图的 8 层结构、"曝光 → 品牌记忆"的关键路径,以及它如何用do()反事实运算支撑投放决策 🎯

为什么营销预测需要一张因果图?

大多数营销预测工具(MMM 营销组合模型、AutoML、甚至 LLM"拍脑袋预测 ROI")给出的都是一个没有推导过程的数字:

  • MMM只拟合总营收曲线,无法回答"24 个素材 × 达人 × 预算组合中,哪一组 ROI 最高";
  • DMP / 观测型数据平台只汇报"已经发生了什么",无法推演"如果第 3 天换掉 2 个达人会怎样";
  • 黑盒模型连 SHAP 都替代不了真正的因果图——归因解释 ≠ 因果路径。

Oransim 的思路是:与其让模型自己"学"出一条隐式因果链,不如把营销领域的因果知识显式建模成一张图,让预测引擎沿着图上的边做推理。这样每个输出数字都可以回答一个问题——"它是怎么算出来的?"

64节点、117条边:8层因果图全景

这张图定义在 backend/oransim/causal/scm.py 中,共8 个层次(L1–L8),完整覆盖"外生环境 → 品牌存量 → 投放决策 → 算法分发 → 用户状态 → 群体话语 → 转化漏斗 → 商业产出"的营销因果链:

层名称节点数代表节点说明
L1宏观/外生9天气、节假日、竞品动作、全民舆情你无法控制、但会改变结果的环境变量
L2品牌存量6品牌认知度、品牌回忆、品牌好感、品牌资产长期累积的"隐藏变量"
L3投放决策12总预算、平台分配、达人选择、文案/视觉、出价策略唯一可干预(intervenable)的层
L4算法分发8ECPM 竞价、曝光分发、曝光频次、自然扩散平台推荐系统如何放大你的投放
L5用户状态5注意力、用户疲劳、情绪、信息理解度用户"此刻"的心理状态
L6群体话语5评论情绪、群聊共识、群体极化、病毒系数社交传播的第二波传播中介
L7漏斗9点击、互动、品牌搜索增量、加购、转化、复购经典转化漏斗
L8产出10直接 GMV、ROAS、ROI、品牌 lift、NPS 变化最终的商业指标

几个值得注意的设计点:

  • 12 个 L3 决策节点是唯一的干预入口。你想"调预算"、"换达人"、"改文案",本质都是在这 12 个节点上施加do()干预;
  • 图是有环的(cyclic)。比如复购 → 品牌资产 → ECPM竞价 → 下一周期曝光分发这样的长期反馈回路是故意的——真实营销就是这么滚雪球的,强行删边反而失真;
  • 节点还标注了time_varying(时变)与computed_by(由哪个模块真实计算,如brand_memory.py、hawkes.py),让"图"和"代码"一一对应。

从曝光到品牌记忆:一条主链的路径追踪

以"曝光 → 点击 → 品牌记忆"这条最有代表性的路径为例,沿着图上的边一步步走:

总预算 → ECPM竞价 → 曝光分发 → 曝光次数 → 广告回忆 → 点击 → 互动 ↓ ↓ 品牌回忆 品牌好感
  • 曝光侧:总预算 → ECPM竞价 → 曝光分发,再经算法放大(冷启破圈)与自然扩散(Hawkes 二次曝光)影响实际曝光次数与唯一覆盖;
  • 点击侧:曝光次数 → 广告回忆 → 点击,同时受注意力、用户疲劳、人群匹配度、达人信任等多条边共同调制——所以同样的曝光量,点不点得出,图上都有对应的因果解释;
  • 品牌记忆侧:广告回忆 → 品牌回忆(ad_recall → brand_recall)、互动 → 品牌好感(engagement → brand_favor),最终汇入 L2 的品牌资产,并在 L8 形成品牌认知 lift / 好感 lift等长期产出——投放的短期 ROI 和长期品牌记忆,第一次被放在同一张图里统一计算。

品牌回忆等长期状态的具体实现位于 backend/oransim/agents/brand_memory.py,图中通过节点的computed_by字段可以直接跳转到对应源码,这也是"可审计"的微观体现:每个图节点都能指到一段真实代码 📖

反事实预测:do() 算子的三步评估

有了图,"如果第 3 天把达人 A 换成 B,ROI 会怎么变?"这类问题就变成了标准的因果干预。Oransim 按 Pearl 三步法(abduction → action → prediction)实现,代码位于 backend/oransim/causal/ 目录:

  1. Abduction(溯因):在代理层复用基线采样噪声,在图层冻结各节点残差——保证"同一个虚拟世界";
  2. Action(干预):对do(kol=swap_A_for_B)这类干预节点固定取值、零化入边;
  3. Prediction(预测):对无环部分按拓扑序前向计算,对反馈环部分用数值迭代求不动点。

由于图里有环(严格说环上的 Pearl 溯因未定义),Oransim 采用了 Bongers et al. 2021 的带环 SCM 推广:把图中 25 个节点的反馈强连通分量(SCC)当作一个整体求不动点,实测 2–3 次迭代即收敛。

如果下游需要严格无环的 DAG(例如教科书式 Pearl 三步、DAG 注意力掩码),OSS 版也提供了时间展开投影dag_dict_unrolled(n_steps=K):n_steps=2时,64 节点 + 117 边的有环图会展开成128 节点 + 220 边的严格 DAG,14 条反馈边通过 DFS 回边分析自动检测、并跨时间片复制(src_t0 → dst_t1)。

透明可审计:把因果图当 API 来查

"可审计"不是一句口号,Oransim 把因果图做成了可查询的接口和可回归的测试:

审计手段位置能回答什么
GET /api/dagbackend/oransim/api_routers/predict.py完整图结构 + 哪些节点可干预
GET /api/graph/inspectbackend/oransim/api_routers/analysis.py图的分层统计、节点元信息(JSON)
audit_traceSchemadocs/en/schemas/单次预测中"哪些代理、哪些路径、哪些权重"参与了这个数字
不变量测试tests/test_causal_invariants.pyCI 中硬性断言 64 节点 / 117 边与环结构,防止图被悄悄改坏

也就是说,/api/predict返回的 14–19 类结构化输出中,audit_trace是专门给"审计"用的:它解释这个 ROI 数字来自哪条因果路径、哪些虚拟用户的行为,而不是一句"模型说如此"。这正是 README 里那句"No 'trust us, it's ML' — every prediction is decomposable"的工程落地 ✅

支撑因果图的"百万人社会"

图上的节点是"变量",而变量背后的取值来自一个100 万规模的可扩展虚拟消费者社会:通过 IPF(迭代比例拟合)按真实中国人口分布(年龄 × 性别 × 地域 × 收入 × 平台)校准生成,每个虚拟用户携带人口属性、兴趣亲和向量、分平台互动先验,其中高显著性个体升级为 LLM 驱动的 Soul 人格,直接"阅读"你的真实素材并给出反应。

因果图回答"路径怎么算",虚拟社会回答"值从哪来",两者组合起来,才是一次完整、可复核的营销因果预测。

60 秒跑起来:亲自查看这张图

git clone https://gitcode.com/gh_mirrors/or/oransim cd oransim && pip install -e '.[dev]' # mock 模式启动后端(无需 API Key) LLM_MODE=mock python -m uvicorn oransim.api:app --port 8001 # 直接拿到 64 节点因果图的 JSON curl http://localhost:8001/api/graph/inspect

前端启动后(python -m http.server 8090 --directory frontend),左侧面板可配置素材与预算,下方"反事实沙盘"直接拖动滑杆做do()干预——比如把预算从抖音挪到小红书,立即看到 14 天扩散曲线与原方案的差异:

想深入读代码?按这个顺序

想搞懂什么看哪里
64 节点、117 边的完整定义与 8 层分组backend/oransim/causal/scm.py
do() 干预、带环不动点求解、CATE 分层效应backend/oransim/causal/
品牌记忆 / 品牌资产的长期状态更新backend/oransim/agents/brand_memory.py
14 天干预感知扩散曲线(Hawkes)backend/oransim/diffusion/
输出 Schema 与 audit_trace 定义docs/en/schemas/
总体架构设计docs/en/architecture.md
中文完整文档README.zh-CN.md

总结:这张图给营销预测带来了什么

  • 透明:64 个节点全部人工标注语义(中文标签 + 计算模块),预测路径可逐边解释;
  • 可审计:/api/dag+audit_trace+ CI 不变量测试,图结构与预测归因双重可查;
  • 可干预:12 个 L3 决策节点对应真实投放动作,do()反事实让"换达人、调预算、换平台"从拍脑袋变成可计算的假设检验;
  • 长期视角:曝光 → 品牌记忆 → 品牌资产的反馈环让短期 ROI 与长期品牌资产在同一模型中互相约束。

对营销人而言,这不再是一个"预测黑盒",而是一台可以打开盖子的营销因果数字孪生引擎 🚀

【免费下载链接】oransim

Causal Digital Twin for Marketing at Scale · Predict any marketing decision before you spend a dollar.

项目地址:https://gitcode.com/gh_mirrors/or/oransim
点击查看免费下载

相关推荐

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询