许多行业专家在做出数据驱动决策时质疑共同预测算法的可靠性。 巧克力消费与诺贝尔奖获得的虚假相关性突出了相关与因果关系之间的关键区别。 尽管存在相关性,但它并不是自动暗示因果关系。 了解根本原因并将数据分析用于有影响力的变化对于企业至关重要。
本教程使用Python的Dowhy库介绍了基本因果AI概念。 尽管与标准机器学习不同,但对回归分析的基本掌握却很有帮助。 Datacamp的“ Python中线性建模简介”和“商业的机器学习”课程提供相关背景。
因果AI基础知识 与预测分析相比,因果推理需要一种不同的方法。 南希·卡特赖特(Nancy Cartwright)的“无原因,无原因”强调了对因果结构获得因果答案的必要性;纯粹的数据驱动方法不足。 为了确定因果关系,必须排除其他解释,需要超越数据本身的外部知识。
考虑新的工作 - 家庭(WFH)政策对员工生产率的影响。 初始分析可能显示WFH员工的任务完成较高,但是这是因果关系吗? 其他因素,例如员工个性或家庭状况,可能会影响WFH的偏好和生产力,作为常见原因。
注意:图形由Causalfusion.net
中的
dowhy Microsoft的Dowhy库(Pywhy生态系统的一部分)是Python因果分析的领先工具。 我们将模拟数据以说明因果推理步骤。
如表1所示,Dowhy使用标签(原始表保持不变)。 因果图由数据参数隐含定义。 Dowhy使用点语言表示图形。
创建了一个因果模型,将数据和图形组合在一起:
因果分析和偏差
!pip install git+https://github.com/microsoft/dowhy.git import numpy as np import pandas as pd import dowhy from dowhy import CausalModel import dowhy.datasets import statsmodels.api as sm # Set seed for reproducibility np.random.seed(1) # Simulate data data = dowhy.datasets.linear_dataset( beta=1, num_common_causes=2, num_discrete_common_causes=1, num_instruments=1, num_samples=10000, treatment_is_binary=True) df = data['df'] # ... (rest of the DoWhy code remains the same) ...>
>简单的线性回归显示一个斜率系数,但由于常见原因,这可能会偏差。 Dowhy的后门标准通过控制影响治疗和结果的变量(在此示例中的内向和儿童人数)来帮助解决此问题。
>!pip install git+https://github.com/microsoft/dowhy.git import numpy as np import pandas as pd import dowhy from dowhy import CausalModel import dowhy.datasets import statsmodels.api as sm # Set seed for reproducibility np.random.seed(1) # Simulate data data = dowhy.datasets.linear_dataset( beta=1, num_common_causes=2, num_discrete_common_causes=1, num_instruments=1, num_samples=10000, treatment_is_binary=True) df = data['df'] # ... (rest of the DoWhy code remains the same) ...
压力测试和鲁棒性
>
仪器变量
仪器变量(例如影响WFH但不直接影响生产率的地铁封闭)提供了替代性识别策略。 Dowhy会自动识别合适的仪器,提供更健壮的仪器,尽管可能更精确,但估计。
结论
以上是Python中的因果AI入门 - 代码示例和第一步的详细内容。更多信息请关注PHP中文网其他相关文章!