来源:市场资讯
(来源:运筹OR帷幄)
目录
0 引言
1 怎么和因果推断结上缘的
2 怎么学,以及这一路的真实感受
3 做因果建模,我最真实的几点体感
4 下一站去哪:大模型时代的转型思考
0 引言
大家端午节快乐!做了或者即将做父亲的,再加一个父亲节快乐
趁着本周多出来的一天假,抓紧更新一篇。上次被一个关注了三年的老粉调侃为"季更博主",我得知耻而后勇,提升一下更新频率。
今天的主题不是某个具体算法的分享,而是对之前写的因果推断系列文章,做一个体系化的总结。选在这个时间节点,有两个原因:一是业界比较常用的因果推断算法基本都已经覆盖了,算是告一段落;二是大模型时代已经来了,效率提升是肉眼可见的,理解它、并让它为自己所用,是必须早点迈出的一步——这也让我对后续的写作方向有了新的想法。
最近几年在公司一直做定价相关的项目,和因果推断打交道比较多,文章里也会把一些实际的思考加进来,供大家参考。
1 怎么和因果推断结上缘的
我在学校研究的是梯度类算法和智能优化算法,步入社会后从运筹优化算法工程师起步。为了更好地应对业务上各类最优决策的需求,这几年陆续系统学习了运筹学经典算法和机器学习算法原理,也整理到了前两个专栏。
转到定价业务之后,才发现因果推断也是躲不掉的必修课——不懂因果推断,就很难真正说清楚"价格变化对销量的影响到底有多大"。于是下定决心,把这个专栏也做起来。
回头梳理,和因果推断的结缘大致可以分为三个阶段。
第一阶段:评估策略效果。
2023年第一次接触DID(双重差分法),正是用来解决算法策略上线后的效果评估问题。当时面对的问题很典型:实验分组不是严格随机的(按城市或商家类型划定)。DID的核心思路是通过比较"前后差值的差值",把实验组和对照组之间固有的基线差异抵消掉,从而还原策略的真实因果效应。它帮我解决了一个关键问题——在无法做理想AB实验的条件下,依然能给出相对可信的因果判断。当时的感受是:DID 的假设清晰、逻辑严谨,对数据要求也没有那么苛刻,是真正能在业务里落地的方法。
第二阶段:引入因果推断。
转到新业务后,遇到了 DID 解决不了的问题——不再只是评估"有没有效果",而是需要直接建模干预变量和结果变量之间的函数关系。这时候才意识到,因果推断对这类场景来说不是"可选项",而是必须项。初期业务对模型精度的要求不高,只要算法效果能跑赢随机基线,就能支撑拿到业务结果。但即便如此,因果推断的思维框架也是必须有的——不用它,模型的方向从一开始就可能跑偏。
第三阶段:精细化建模。
随着业务深入,对因果推断的要求又往前推了两步。第一步是精度:业务需要持续拿到更好的指标,就会反推算法不断迭代,对模型精度的要求也随之水涨船高——早期跑赢基线就够了,后来连小幅的精度提升都变得有意义。第二步是粒度:光有全局效应不够,还需要挖掘不同场景、不同人群下各自的局部因果效应——同样的干预,对不同人群的影响可能差异很大,只有估计出这种异质性,决策才能真正精细化。到这个阶段,才算是真正把因果推断作为核心能力在用,而不只是一个评估工具。
2 怎么学,以及这一路的真实感受
因果推断对业务决策如此重要,而自己此前的技术栈主要是运筹优化,因果推断几乎是空白。既然躲不掉,那就系统学一遍——这个决定做起来并不难,难的是怎么学。
想体系化地学因果推断,比学运筹学和机器学习要难一些。难在这个方向本身有点割裂:传统方法(PSM、DID、工具变量法等)在学术界有专门的书,但业务里用得越来越少;而在互联网业务中真正常见的方法(DML、因果森林、各类深度因果模型等),又很难在一本书里找全。缺少前人系统化的梳理,学起来就容易东一块西一块——我自己就走了这段弯路,导致学习过程断断续续,又上文不接下文的。
所以按自己的认知,把之前写的几篇文章重新做了一个整理和分类:
第一层:先搞清楚体系。 因果推断和相关性分析的本质区别是什么?因果效应的常用估计指标(ATE、ATT、CATE)各代表什么?潜在结果框架(Potential Outcome Framework)又是如何定义"因果效应"这件事本身的?有了这些认知底座,后面学具体方法才不会迷失方向。
第二层:传统方法打基础。 PSM 和 DID 是最经典的两类,原理相对直观,也是理解后续方法的基础。搞清楚它们各自依赖什么假设、在什么条件下会失效,比死记公式重要得多。
第三层:业务常用方法。 DML、元学习、因果森林、DragonNet、VCNet——能搞懂原理最好;实在不行,至少搞清楚它们之间的区别、各自适合什么场景,以及估计的是整体效应(ATE)还是个体异质性效应(CATE)。到这一层,基本就算是一个还不错的里程碑了。
三年,十篇,说长不长,说短也不短。趁这个机会,说说这一路学下来最真实的几点感受。
第一,这个阶段充其量算是入门,谈不上体系。 对各类方法有了基本认知,知道它们在解决什么问题、各自的假设和局限是什么——但真正的理解,还需要在具体项目里反复锤炼才能沉淀下来。说实话,因为在公司以运筹方向为主,实际分工时更多是做后续的决策部分,亲手做因果效应建模的机会不多。好在还在做定价业务,即便不是自己直接建模,也能从业务角度持续观察和理解各类方法的实际效果。而且现在有了大模型的加持,如果真想自己动手实践,调参、换模型、跑对比实验,应该都不会特别花时间。
第二,大模型对持续学习的助力,实在太强了。 以前遇到理解不了的地方,经常被卡住好久——就算在知乎之类的地方找到了些答案,也不敢确认对不对,自然也不敢写出来。有了大模型就完全不一样:它可以帮你梳理一篇论文的整体框架,不厌其烦地一遍遍解释每个细节,举实例、推导公式、画图辅助理解,甚至帮你找数据、跑代码、做分析。遇到卡壳的地方,不再是孤军奋战。可以说,大模型大大降低了持续学习的门槛——这个专栏能写完,它功不可没。
第三,大模型时代,我写的技术文章还有没有价值? 这个问题曾经让我很长时间不想更新。总觉得大模型已经能回答一切,自己写的东西好像多余了。后来慢慢想明白:写文章的第一动力,本来就不该是"对别人有没有用",而是给自己一个系统梳理和总结的机会——把散落在脑子里的东西逼出来,写清楚,才算真正消化了。至于能不能对别人有些参考,是其次的事。当然,大模型给的是标准答案,但它替代不了的,是一个人面对陌生算法时的"咀嚼过程"——我是怎么解构它的、卡在哪里了、又是如何把新概念和已有认知一点点连起来的。这种人类视角的思考路径,对同样在学习路上的人,或许也还有一点参考价值。所以最终还是把这个专栏写完了。
3 做因果建模,我最真实的几点体感
前面聊的是学习那件事,这里说说业务里的实际体感。
我的主战场是定价,为了对标行业先进水平,也会关注营销方向的算法——两个方向的相关度很高,很多方法是通用的。此前也认真思考过两者的区别:定价主要依赖对商品价值的判断,属于端到端定价,涨价和降价都要考虑;营销主要考虑预算在商品间的分配,属于分层定价,更多关注补贴和降价。方向不同,建模的重心自然也不完全一样。但有一点是共同的:两个方向对因果推断都非常重视,会持续投入资源迭代模型,努力提升算法指标。
从公开发表的论文也能看出行业对这个方向的重视程度:
美团骑行— Data-Driven Real-time Coupon Allocation in the Online Platform (arxiv)
美团外卖 — Decision Focused Causal Learning for Direct Counterfactual Marketing Optimization (arxiv)
美团到餐 — Optimizing Marketing Subsidies via Counterfactual Learning with Asymmetric Reward Function (SIGIR 2026)
和专栏里讲的算法原理对照着读,会更有感觉。
另外,我们团队也有一篇已经录用的会议论文,讨论的是考虑替代效应的因果效应建模,目前还没有对外链接。有需要的朋友可以留言,等链接出来了,我第一时间发出来。
模型迭代固然重要,但提升效果最有效的手段,往往是使用随机数据。
实际做因果建模,遇到的最大瓶颈往往不是算法本身,而是数据——观测数据天然带有选择偏差,用它建出来的模型,置信度是有上限的,再怎么换模型也很难突破。想真正把这个上限往上推,最有效的办法是使用随机实验数据。在业界,这是可以实现的,但需要提前对齐一些事项:随机方案设计、预算消耗估算、线上流量占比、在线周期等。流程不轻松,但一旦有了真正随机的数据,模型质量的提升往往是质变级别的。
4 下一站去哪:大模型时代的转型思考
开头说写这篇文章有两个原因,第二个是大模型时代来了,对后续方向有了新的想法。现在来兑现一下——这个想法具体是什么。
这不只是"下一个技术方向"的问题,更像是一次对自己和公众号的整体思考:大模型时代,我和我的公众号该怎么走?
① 深度拥抱大模型
大模型已经不是一个"值得关注的趋势",而是一个正在重塑一切的现实。我打算认真学、深入学,把大模型的技术逻辑搞清楚——相关文章也会持续在公众号里沉淀。
作为算法工程师来学大模型,有明显的优势,也有需要主动克服的地方。优势在于:有扎实的数学和模型基础,理解 Transformer、注意力机制、损失函数这些不太费力;熟悉训练、推理、评估的整个链路,能看懂底层在做什么,不只停留在"会用"的层面;有工程实战经验,清楚一个模型从原理到真正落地之间的鸿沟有多大。
但挑战也是真实的。传统算法的思维习惯是"自己建模、精确控制",而大模型更多是"调用+提示工程",思维方式需要切换;习惯了追求可解释性,大模型的黑箱特性和概率式输出,需要重新建立一套判断标准;还有就是大模型的工程生态(RAG、Agent、Fine-tuning 框架等)迭代极快,跟进的节奏比传统算法方向快很多,需要保持持续学习的状态。
② 智能决策 × 大模型,具体能怎么赋能
我一直觉得,运筹优化、机器学习、因果推断,本质上在回答同一个问题:怎么通过算法做出更好的决策。只是切入角度不同——运筹是在已知约束下求最优解,机器学习是从数据里找规律,因果推断是在行动之前估计效果。
结合大模型,这个方向有几个让我比较兴奋的可能性。建模效率:大模型可以辅助特征工程、生成代码、快速跑实验对比,大幅缩短从想法到验证的周期,试错成本低了,迭代速度自然就快了。决策解释性:传统算法的输出往往是一个数字,很难向业务方解释"为什么这么决策";大模型可以作为翻译层,把模型的输出转化成人能理解的决策依据,让算法真正融入业务决策流程。复杂约束的处理:运筹优化里很多约束是人工定义的,繁琐且容易遗漏;大模型有可能直接从业务描述中提取约束、生成优化方案,降低问题建模的门槛。Agent 决策:大模型 Agent 本质上是一个决策系统,运筹、机器学习、因果推断的知识积累,在理解和设计 Agent 的行为策略时会有直接帮助——这几个方向其实是打通的。
说实话,能持续研究"如何通过算法做出更好的决策"这件事,是真正给我带来价值感的事——不只是因为业务需要,更是因为自己真的觉得这件事有意思、有深度、做下去有成就感。所以这条主线不会变,任何有助于把决策做得更好的方法,包括大模型,我都乐意去学、去实践。公众号里还会出现更多相关的文章。
最后的最后,依然期待大家都能持之以恒地做一件件小事,积少成多,厚积薄发。
热门跟贴