前言#

因果推断的必要性#

因果推断对于明智的决策至关重要,因为它揭示了数据生成的真正过程,而不仅仅是预测模型中的关联。它使我们能够估计干预的效果和反事实结果,即使在没有干预数据的情况下也是如此。超越基于相关性的分析对于推广见解和真正理解现实世界的关系至关重要。例如,对于在医疗保健、教育和治理等社会关键领域积极干预的计算系统,正确预测和理解这些干预的因果效应非常重要。下面我们描述了一些需要因果推断的决策中的常见问题:

  • 它会起作用吗?
    • 对系统的提议更改是否会改善人们的结果?

  • 为什么它有效?
    • 是什么导致了系统结果的变化?

  • 我们应该做什么?
    • 对系统进行哪些改变可能会改善人们的结果?

  • 总体影响是什么?
    • 系统如何与人类行为互动?

    • 系统推荐对人们活动的影响是什么?

虽然有许多方法被提出用于因果推断,但一个关键的挑战是比较这些不同方法的假设并检查结果的稳健性。为此,DoWhy 是一个用于因果推断的 Python 库,支持明确建模和测试因果假设。DoWhy 做出了三点贡献:

  1. 提供了一种通过图形表示来建模因果关系的系统方法,确保所有潜在假设都被明确陈述并透明化。

  2. 为许多流行的因果推理方法提供了一个统一的接口,结合了图形模型和潜在结果的两大框架。

  3. 提供能力以测试假设的有效性(如果可能),并评估估计对违反假设的稳健性。

DoWhy的API还为因果推理提供了一个统一的语言,结合了因果图形模型和潜在结果框架。