許多行業專家在做出數據驅動決策時質疑共同預測算法的可靠性。 巧克力消費與諾貝爾獎獲得的虛假相關性突出了相關與因果關係之間的關鍵區別。 儘管存在相關性,但它並不是自動暗示因果關係。 了解根本原因並將數據分析用於有影響力的變化對於企業至關重要。
本教程使用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中文網其他相關文章!