解释现实世界数据中的变化
深度学习成功证明了统计相关性的力量:如果某些图像特征始终与"猫"标签相关,可以训练机器学习模型识别猫。但有时相关性不足,需要识别因果关系。例如COVID-19疫情期间,零售商可能发现特定产品库存急剧下降。导致下降的原因是什么?需求增加?供应短缺?运输延迟?预测模型失败?解决方法因原因而异。
在国际人工智能与统计会议(AISTATS)上,提出了一种识别概率分布变化原因的新技术。该方法涉及因果图——顺序过程的图形蓝图。图的每个节点及其传入边代表因果机制,即给定事件跟随前驱事件的概率。展示了如何计算单个机制变化对最终结果概率变化的贡献。
使用模拟数据测试该方法,可以规定单个因果机制的概率,提供测量基准真值。该方法产生的估计非常接近基准真值——L1距离仅偏差0.29。即使在小样本量(仅500个样本)下也实现了该性能。
考虑一个因果图,表示影响零售商库存量的因素。(这是极度简化;真实库存计数的因果图可能有数十个因素而非五个。)
在这个简化模型中,模拟系统估计补货成本(X1);预测算法估计需求(X2);规划算法(X3)确定采购订单的大小和时间;竞价(X4)机会性地发生,如大量产品以折扣价供应;所有这些因素共同影响库存量(X5)。
该网络中的每个输入-输出关系都有相关的条件概率分布或因果机制。单个因果机制的概率确定所有变量(X1-X5)的联合分布,即任何给定变量组合共同出现的概率。这又决定了目标变量——库存量的概率分布。
最终结果的重大变化可能伴随图中所有因果机制的变化。该技术识别变化对结果变化负最大责任的因果机制。
基本见解是:图中任何给定因果机制原则上可以独立变化而不影响其他机制。因此给定因果图、初始因果机制和暗示新因果机制的数据,逐个更新因果机制以确定每个对结果的影响。
该方法的问题是每个节点贡献的测量取决于更新节点的顺序。测量评估改变节点因果机制给定图中其他变量每个可能值的后果。但这些值的概率在更新因果机制时发生变化。因此根据哪些因果机制已更新,会得到不同的测量。
为解决该问题,遍历每个更新顺序的排列并平均每个节点的结果,这是博弈论中计算Shapley值技术的适应。
实践中,因果机制必须从数据推断;不提前给定概率分布。但为测试方法,创建了一个简单因果图,可以规定分布。然后使用这些分布生成数据样本。
在图的因果机制100次不同随机变化中,该方法表现非常好;每次变化500个数据样本,与基准真值的平均偏差为0.29(L1距离)。基准真值至少是3维向量(最多6维),至少有一个分量大小至少为1(最多五)。因此最坏情况下0.29的L1距离仍然是相对较小的距离。
测试了不同量的数据样本,从500到4000,但增加更多样本对近似精度影响很小。
内部也将该技术应用于供应链管理问题。对于特定产品系列,能够识别疫情期间库存量稳步下降的原因,而该数字前一年保持稳定。