专访|2022 Daniel H. Wagner 获奖者彭天翼:将理论创新应用于零售企业

 

嘉宾介绍:

彭天翼,现为MIT五年级博士生,导师为MIT Operation Research Center的Vivek Farias,本科毕业于清华姚班。研究方向为因果推断和机器学习,处于计算机科学、经济学、和运筹学的交叉领域。

在今年的INFORMS会议中,彭同学所在研究团队与全球最大的啤酒生产集团Anheuser Busch Inbev (ABI,百威英博)合作的文章获得了Daniel H. Wagner奖项。Daniel H. Wagner高级分析和运筹学实践卓越奖颁发给那些对实际问题提出分析性强的解决方案、并用易懂的写作表述工作的研究者。同时,彭同学的另一篇文章Markovian Interference in Experiments也是今年INFORMS Applied Probability Society student-paper competition和Jeff McGill Student Paper的best paper。

在Daniel H. Wagner Prize获奖文章Generalized Synthetic Control for TestOps at ABl: Models, Algorithms, and Infrastructure当中,他们提出Generalized Synthetic Control算法,与ABI共同搭建大规模测试平台TestOps,协助ABI在墨西哥市场进行promotion和portfolio的销售决策。目前TestOps平台平均每月可增加数百万美元的销售收入,并影响总收入约1.35亿美元的交易市场。

作为运筹学优秀的青年学者,彭同学在这次专访中为我们详细介绍了这篇文章的企业合作过程、研究内容、参评奖项以及与业界合作的经验。

问题速览
一、项目背景
可以介绍一下你们和 ABI 的合作是怎么开始的吗?
可以简单介绍下实验平台(experimentation platform)的背景吗?
这个项目的参与人数和持续时间,以及双方团队是如何协作的?
二、研究内容
获奖论文的研究内容。
Generalized Synthetic Control (GSC) 的理论基础,和DID的对比。
如何设计实验来验证GSC方法比DID方法具有更好的效果?
TestOps平台会辅助ABI进行哪些类型的决策?
TestOps平台是只在ABI内部使用,还是会拓展到更广泛的应用范围?
三、经验分享
Daniel H. Wagner奖项看重哪些方面?
评选过程是什么样?
合作过程中是否会有业界/学界关注点不同的情况,你们是怎么处理的?
如何兼顾在实际项目中做到学术创新的目标?

一、项目背景

运筹OR帷幄:可以先介绍一下你们和 ABI 的合作是怎么开始的吗?

我的导师 Vivek Farias 和 ABI 之间有很长期的合作项目,一直合作得比较好。这次做实验平台(experimentation platform)项目的契机是我们先做了关于因果推断和矩阵补全的一个理论问题,理论文章做出来以后,我们想着要不要找一个地方去实现一下,正好那个时候我们了解到 ABI 在做这个实验平台,有遇到类似的问题,我们就抱着尝试的态度,开始了这个合作项目。

运筹OR帷幄:可以简单介绍下实验平台experimentation platform的背景吗?

什么是实验平台以及为什么它很重要呢?考虑这样一个问题:假想你是ABI公司,你想要检验某种产品搭配策略或者销售策略的效果。这时候一种很自然的想法就是去做一个随机控制实验(或者叫A/B testing)。你随机地选择100个商店去使用新策略(实验组),另外100个商店去使用原策略(控制组)。然后等一段时间(比如说一个月),对比实验组和控制组的收入情况。

实际上这样的A/B testing现在已经广泛地应用在大型互联网公司了。比如说在谷歌,脸书,字节跳动等公司,他们搭建的大型平台实验平台每一年可以运行几万个实验,用于检测算法效果、系统性能、交互设计、营销策略等等。有的实验一次性甚至可以有上亿用户参与其中。如此大规模的实验帮助他们快速地发现优异的算法策略,识别市场的走向,调试最优的参数,是这些大型公司如此成功的核心要素。这背后隐藏的是一种公司决策文化的转变,人们摒弃原有的“由人驱动的决策模式”(The Highest Paid Person's Opinion Based Decisions, HIPPO) ,转向“由事实和数据驱动的决策模式”,也就是通过规模化实验、数据整合、因果分析、快速迭代来进行科学决策。对于这种模式以及相关实验平台感兴趣的同学,我推荐大家去读一本叫《Trustworthy Online Controlled Experiments》的书(by Ron Kahavi等)。

现在的一个趋势是,越来越多的公司,包括非互联网的传统企业,开始意识到基于数据决策的重要性,他们也想要搭建自己的实验平台。ABI就是这样一家公司,虽然他们处于传统的零售行业(啤酒销售巨头),但他们受到互联网公司的鼓舞,投入了非常多的资金和人力来建设他们自己的实验平台。在这个建设过程当中,他们发现线下的实验其实比线上的实验有大的多的挑战。比如说(i)线下实验的单位是门店,进行一次实验需要投入很多人力和物力(比如到门店去调整某种销售策略),远比线上的实验复杂的多 (ii)实验的噪声非常大,因为门店的数量是有限制的,而且销售数据受随机波动影响很大(iii)实验很难做到完美的随机,这其中有很多不可控因素,包括门店店主他们是否愿意按时按质进行实验策略等,都是很大的问题。

在这样的背景下,我们想要应用我们的理论研究去提供一个解决方案。我们想帮助ABI从noisy的实验结果中更好地区分信号和噪声,更好更快地识别出那些优秀的商业策略来。

运筹OR帷幄:这个项目的参与人数和持续时间,以及双方团队是如何协作的呢?

从对接开始大概有接近两年的时间。总体框架大概是我们提供算法,他们实现。我们 MIT 主要是负责核心算法,现在是2个博士生和4个硕士生在做,一方面合作实现算法,另一方面指导和监管他们这个平台的搭建。ABI 那边其实是一个比较大的团队,这是他们一个公司内部很重要的一个项目。他们那边主要和我们对接的,每次开会大概是6-8人的 data scientist 和 data engineering 的一个团队。但是他们背后还有负责实现的soft engineer等等,平台搭建有二三十人甚至更多。

过程当中他们可能会遇到很多关于平台的搭建的问题,我们就会一起讨论解决方案。比如有的实验他们想要测量的指标可能是离散的,不是连续的,我们要怎么去修改算法;比如处理数据,实际数据其实非常sparse,要进行aggregation这样的一些操作,会有一些让理论算法变得更加practical的改动。我们其实也是在不同国家尝试了。首先在北美想要试用,后面发现 ABI 在美国市场能够控制的部分其实非常少,有很大的阻力。然后又转移到墨西哥,ABI 在墨西哥有很大的市场,有很强的市场话语权,进展就顺利了很多。

二、研究内容

运筹OR帷幄:可以简单介绍这篇获奖论文的研究内容吗?

论文主要介绍了我们在搭建ABI的实验平台当中遇到的主要困难和我们的解决方案。实际上,在一开始分析实验时,ABI采用的是传统的方法例如Difference-in-Difference, 或者简称DID。然后我们发现每100个线下的实验,只有6个实验我们能看到显著的效果,这是非常不让人满意的。这意味着大部分实验我们都不能区分噪声和信号,换句话说,就是实验白跑了。这里其实有两个核心问题要解决:一个是怎么降低估计量的方差,另一个就是解决所谓的non-compliance问题。或者说实验的 unit 不是完全随机的,它可能会依赖很多数据很多因素,比如说历史销售数据等等。这正是我们的理论文章尝试解决的问题。当应用我们的方法后,现在每100个实验,有65个实验左右有显著的效果了,我们还在进一步提高相关的算法的稳定性和效果。在新算法的基础上,我们搭建的实验平台已经在ABI的中美洲分部使用,对公司的营收产生很大的积极影响。

ABI在这里遇到的挑战其实是很常见的。别的想要搭建实验平台、进行科学决策的公司也会遇到类似的问题。所以这个文章背后我们想解决更大的问题就是,对于这样的一个搭建实验平台的过程,我们尝试去提供一个范例和解决方案。

运筹OR帷幄:你们提出的 Generalized Synthetic Control (GSC) 的理论基础是什么?或者说和 DID 方法的对比。

我们核心的想法是,用 DID实际上是把控制组的平均值和实验组的平均值,这两个平均值进行对比,但是很多时候因为各种各样的因素,这样的对比并不准确(比如两个组的分布相差较大)。这里的一个想法其实跟最近10年来慢慢比较流行的方法叫Synthetic Control是类似的。Synthetic Control这一大类算法的想法,是说相比于使用控制组的平均值,实际上我们可以尝试把控制组不同的实验单位(unit)用不同的权重加起来。因为你可以想象说在控制组里面有一些实验、有一些商店可能不是那么重要,它并不能很好地match实验组的这些特点。有的商店可能match的更好,然后它match的方式是基于历史销售数据来做match,通过不同的加权,所以可能可以获得一个更好的match。

这是一个general的intuition,但是我们算法的特点就是说,现有的这一类算法一般还是只能解决比较特殊的 treatment pattern。一般来讲,它的treatment pattern是一个block,就是有一堆商店在同一时刻开始做这样一个实验。但是如果 pattern变得比较复杂,那么他们的算法实际上现在并不清楚要怎么apply。

我们的算法叫Generalized Synthetic Control,大概指的是说我们想要解决的是更加general的pattern,我们的理论文章实际上就是尝试对这个问题进行一个解答,这个问题就是说:如果你的pattern是非常general的,到底在什么条件下可以去做这样一个估计?然后如果可以估计的话,你怎么去估计地最好?

这其实就涉及到理论文章,也就是算法的理论基础是什么。理论文章实际上是一个低秩矩阵的补全或者说回归的问题。低秩矩阵的补全问题应该算是最近10年来学术界很流行的一个问题,也有很多的应用,但是一个很大的challenge就是这些分析工作主要还是限定在missing pattern是iid的。在我们的问题上很显然它不会是iid的,它肯定是非常special,而且可能会和历史数据有很复杂的依赖关系。所以我们的理论文章主要是想解决的问题就是:对于这样一个一般化的treatment pattern,矩阵补全的算法应该怎么做,以及它能得到怎么样的guarantee。在这上面我们其实花了挺多的功夫,最后这个问题我个人感觉是我们得到了一个比较完整的解答。这个文章发在了去年NeurIPS的oral上,而且是今年的msom的finalist,我个人感觉还是比较兴奋的结果,大家有兴趣的话可以去看看那个理论文章(Learning Treatment Effects in Panels with General Intervention Patterns,https://arxiv.org/abs/2106.02780)。

运筹OR帷幄:你们如何设计实验来验证GSC方法比DID方法具有更好的效果呢?

这其实是一个非常好的问题,现在一般验证方法,一个是做A/A testing,大概就是说你找一个找没有做实验的阶段,假装它做了实验,然后你把这个作为input给不同的算法, 理论上应该要输出0,然后你就可以用这个来比较一下大家是不是输出的0。这是一个很常见的方法,也是一个很简单很intuitive的方法,一般来说还比较robust,因为这个测试没有依赖于任何假设,它就是说我在没有做测试的情况下面假装做了测试,那么你应该告诉我0,因为我没做测试。

除了比较简单的测试以外,还会有一些别的,比如说可能会加一些pseudo treatment effect。就是拿一个真实的数据,这个数据是没有做实验的,然后你假装做了实验,并且你假装加一些effect上去,然后希望把effect给recover出来。

在我们的情况下面,商业团队其实也会对这个产品做基于商业上的一些分析,结合这个数据的结果一起来做分析。

总的来讲的话,其实在因果推断里面怎么去做算法的验证,实际上是我觉得在理论上很有挑战的问题。因为一般来讲,就是你做实验其实不知道真实结果,大家没有一个真正的ground truth。我个人觉得这一块的研究是很有价值,我自己也挺有兴趣的,但我会觉得说实际上是整个领域里一个很大的问题。最近几年我感觉大家在往这个方向想办法,怎么去得到一些结果。一个想法可能是,能不能仿照ImageNet去建造一个大的、属于因果推断的数据集。里面还是有很大的挑战,但是可以一步一步做的比现在更好一些。

运筹OR帷幄:TestOps平台会辅助ABI进行哪些类型的决策呢?

现在主要是两种类型的决策,一个是promotion,比如说打折的销售策略;另一个是portfolio,比如说在商店里改变assortment,增加某一类产品的曝光率。有的决策可能是针对比较特殊的产品类型,那么测量效果的时候就看它对这一类产品的效果。还有的可能是商店层面的一些策略,这个时候看的就是商店层面的影响。

运筹OR帷幄:TestOps平台是只在ABI内部使用,还是会拓展到更广泛的应用范围呢?

这个平台是只在ABI内部使用,但是这个算法本身其实是比较general的。我们目前其实还在跟另外一个公司叫Takeda(武田制药公司)合作。制药公司也有面临类似的问题,他们想要去跟医生之间有一些交互,比如说告诉这些医生最新的关于罕见病的一些研究和他们公司研发的一些新药。你可以想象,他们在有限资源的情况下,应该跟哪些医生去交互。

这个矩阵的行是不同的医生,列是时间,然后他们的intervention就是说要去跟这些医生进行交互。他想要去最优化交互的过程,因为他们的人是有限的,他希望去预测比如说哪个医生的病人当中有罕见病患者的概率会更高一些,然后更有效地利用这样信息去做交互。这里面很关键的一步也是要测量,在这样的一个交互过程当中,交互的效果是什么?可以想象交互本身也是很复杂的,它不会是iid的,一定会依赖于之前的历史数据等等很多因素。它是一个更加困难的问题,因为它是heterogeneous treatment effect。

这一类的问题或者这一类的算法,其实现在应用还是比较广泛。

三、经验分享

运筹OR帷幄:相比Daniel H. Wagner奖项的其他竞争者,你觉得你们的优势是什么?或者说这个奖项看重哪些方面,可以分享给以后想申请的同学。

我觉得大家其实都做得很好。可能我们的优势,一个是我们的实现本身是比较扎实的,这个平台本身已经在墨西哥跑起来了,产生了实际上比较大的一个impact,特别在ABI内部有比较大的impact,所以可能是一个加分项。

别的我不好说是我们的优势,但是我觉得可能是大家可以更注意的方面,就是这个奖有哪些要注意的因素。一个是,因为Wagner prize本身关注的是实践和理论相结合的工作,所以你的实践、实现效果,它的impact这些是比较重要的。还有一个比较关键的是,我会觉得你的文章和展示是需要让一般的audience能看得懂,有intuition,数学部分可能就是要尽量简化一些。大家比较关心的是你到底是怎么实现的,效果怎么样。

如果能得到一些企业的背书,我觉得就比较好。比如说我们的展示当中是有ABI的负责人一起过来展示,我印象当中辛林威老师在他演讲里面也有视频,是阿里巴巴那边的负责人来给一个背书,我觉得可能是评委比较想看到的。除了企业本身的背书以外,另外一点我觉得可能也有加分项,就是说你解决的问题本身是不是有更广泛的影响,比如说你的问题是不是解决了一类趋势、大家现在正在比较关注的问题,而不是一个特殊企业的问题,然后比较难以泛化。

运筹OR帷幄:评选过程大概是什么样呢?

从我们自己的角度能看到的是,它会需要你首先在今年4月底的时候交一个4页的abstract,它会先进行第一轮挑选,选出semi-finalist,大概会在六七月的时候通知,然后你需要提交论文,这篇论文大概是21页左右,就需要把你的细节进行更多的补充,最后再通过这个论文从semifinalists里面选finalist。

这个过程当中,论文本身的写作,包括abstract本身的写作,我觉得是比较重要的。因为评委实际上是非常general的audience,他不一定是你这个问题或者领域方面的专家,这个时候他来了解你这个问题到底做得好不好、贡献有多大,实际上只能读你写的几页纸,所以你需要能强调你的重点,你看往年Wagner prize的文章,一般来讲数学部分是尽量的缩减,有的话尽量也是在appendix里面写。

最后的winner是在做finalist presentation当天选的。那天晚上他告诉我们结果,在之前其实我们谁都不知道什么情况。这里面还有个比较有意思的插曲,我们虽然对自己的工作比较有信心,但是觉得在论文主题上面并不是那么占优。我们感觉它是有点像优化营收这样的主题,然后finalist还有别的一些主题,比如说有做医疗管理方面像是肝脏移植。我印象中当时晚上八九点,正好我的导师打了电话给我,我们在讨论这篇文章,然后他就说你有没有收到邮件,消息好像出来了,我说我没看邮件,我觉得我们肯定得不了 winner,所以没什么好看的。然后挂了电话以后,我打开手机,然后一看收到了邮件,我们好像是winner,比较超出预期,比较高兴。

运筹OR帷幄:许多同学也都希望能开展一些在业界有实际应用的研究工作,你觉得在和ABI合作的过程中,是否会有业界/学界关注点不同的情况,你们又是怎么处理的呢?

我觉得这是一个非常好的问题,因为我个人觉得去开展在业界当中有实际应用的想法是很对的,特别是作为我们OR的同学,大家都有这个想法,想要学以致用,对吧。我个人比较喜欢在实践当中发现更有意义的理论问题,因为当你在实践的时候,比如说在和ABI合作的过程中扩展了我的视野,我就知道除了我自己研究的方向以外,还有什么样的问题在实践当中可能是比较重要的,这样之后我的理论方向可能就会去沿着那些方向走,所以它可能还会激励你产生新的想法。所以我觉得这个大方向是应该做的,是很正确的,但是在具体和业界实施合作的过程当中,应该说还是会有一些困难。我们也学了不少的教训和经验。

第一个经验的话,我觉得可能就是说你需要去了解不同的团队到底有什么需求。很多时候业界包括你跟公司合作的过程当中,公司本身也不是只有一个团队。他有不同的部门,有不同的人,有不同的内部等级,然后他们的需求是可能不一样的。你要去理解他们的需求是什么,因为我们的需求可能是想要搞清楚这个问题,想要去应用学界的方法,可能最后还想发文章,但是他们的需求不一定是这个,他想要解决实际问题。然后这里面我觉得有刚刚说的第一个核心问题,就是说你要问自己what kind of value you can bring to the table。你需要问自己这个问题,你可以为他们提供什么,这样可能才是一个好的方式,而不是说通过这个项目我能得到什么。

第二个是,因为你是在和人合作,然后人之间是需要信任的。你需要convince别人你的想法、你想做的事情。如果想要它真正实施的话。你要去做presentation,要去收集事例证据,然后去说服对方这个东西值得做。然后说服有的时候是一层一层的,比如说你想要实现你的算法,你可能先需要说服你直接对接的团队,当直接对接的团队觉得你的想法是真的有意义、有意思的时候,你们可能需要合起来再去说服一个更高层的人或者更大的团队。

在这个过程当中你会发现你做的presentation或者说你提供的材料它会不断变丰富,因为会有不同的角度和观点。从你的角度来讲,可能是一个比较偏理论的角度,毕竟我们在学界,会关注这个东西的理论方面很有意义。但是跟你对接的那些同学,他们就会从业务的角度,他们会找到在业务当中为什么我们要实现这个东西。补充在一起之后,你们就可以再去说服更外围的人,我觉得这也是一个比较值得学习的经验。因为在这个过程当中,确实当我们说服足够多的人以后,我们本身对这个问题的认识也更深刻了,而且在这个公司做实现或者资源方面也比较顺利了。

在我们的问题里面最核心的就是,我们希望说明就是Generalized Synthetic Control这一类型的算法比DID要更好。一开始并不是那么容易,data scientist他们比较快地理解了这个问题,他们是会同意,但是再扩展一层,比如说跟产品打交道的人,他们其实已经很习惯用DID的算法了,他们会比较抗拒你做出新的改变。这里面还有一个比较有意思的问题就是,因为他们以前可能会用DID的评估来作为他们团队的绩效,现在如果你提一个新的算法把他的绩效给改了,他百分之百是不愿意的,如果改高了还好,但是改低了他肯定是不愿意的,所以可以想象这样的算法是会有一些阻力的。这些阻力就需要我们一边从理论上从模型上解释为什么这个东西会更好,DID的问题是什么,一边可能需要跟更高决策的人进行沟通,比如说我们新的算法只会应用到以后的分析,之前的分析不会对公司的运行产生任何影响等等,也就会有一些执行层面的问题,这个是我做学界的时候不会想到的问题。

第三点也是相关的,就是自信。在算法实现的过程当中,肯定是会遇到很多具体实现的困难的。一般来讲很难说理论上面设计了一个算法,然后把这个算法直接丢到实际当中,它就工作得非常好。所以你要有这样的心理准备,在得到一个很好的改进结果之前,你肯定是要对实际算法进行很多改动,或者对实际的数据进行很多分析。比如说在这个过程当中,我们有的时候会觉得实际问题太复杂了,可能会失去一些信心,就是到底值不值得这么去做,最后到底能不能产生好的效果。我觉得就是有耐心一点,承认它就是很困难的事情。还是要对自己有自信,因为你花了很多时间做这个文章,你对这个问题的了解比绝大多数人都要更深刻一些。然后如果你坚持的话,不说你可以百分之百解决问题,但是你肯定能够去贡献你的价值,对他们公司肯定是会有帮助的,就是你要坚信你自己的价值。

运筹OR帷幄:因为你们这一篇是先有理论算法,你们再去找应用,不是那种对方拿着问题来找你们,你们再去一步一步做,所以你们也会担心最后做出来的成果在学术上可能不够创新吗?

这实际上是一个比较关键的问题,因为很多这样的合作项目都会面临这个问题,我们最后还是想发文章的,但是发文章并不是企业的第一诉求。这其实是需要比较好地去控制方向,才能达到。实际上ABI的合作项目并不是我们做的唯一的项目,我和我的导师其实已经合作了大概有四五个公司了。而且跟ABI也不是唯一的一个,我们其实跟ABI之前也在北美做过别的问题。

应该说有不同的模式。我会觉得如果作为学生的话,最好是和导师之间有一定的预期,有没有预期从这样一个实际的项目当中做出论文来?一般来讲确实是比较困难,而且学生能控制的东西是比较少。在跟企业合作的过程当中,如果发现了你觉得值得考虑的理论问题的话,你应该及时把它写下来,然后不要害怕。这个过程就不再是像导师给你一个课题让你做出来,实际上是你自己主动要去发现问题,然后要提出大概的一个思路,去说服别人的一个过程。这里面跟我刚刚讲的说服别人是类似的,如果你有了想法以后,你能够说服的人越多(包括你的导师),那么你最后能够产生论文的可能性就越高,所以这个可能是一个思路。

总的来说,我觉得产生论文还是比较困难的,因为在我的实践经历里面,整体能够产生论文的比例并不高。我会建议对于工业界的合作项目,作为学生的话,抱着一个学习和开放的态度去参与,在这个过程中你开拓了眼界,积累了理论和实践相结合的经验,增加了对相关产业趋势的把握。所谓读万卷书,行万里路,我始终相信这样的工业界经历是非常有益的,不管以后是选择创业,工作,还是学术。如果恰好有论文产出的话,那便是锦上添花了哈哈。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值