Rumah > Peranti teknologi > AI > Bermula dengan Causal AI dalam Python - Contoh Kod dan Langkah Pertama

Bermula dengan Causal AI dalam Python - Contoh Kod dan Langkah Pertama

Lisa Kudrow
Lepaskan: 2025-03-10 11:05:09
asal
297 orang telah melayarinya

Banyak pakar industri mempersoalkan kebolehpercayaan algoritma ramalan biasa apabila membuat keputusan yang didorong oleh data. Korelasi palsu, seperti itu antara penggunaan coklat dan pemenang Nobel, menyerlahkan perbezaan penting antara korelasi dan penyebab. Walaupun korelasi wujud, ia tidak secara automatik menyiratkan hubungan kausal. Memahami punca akar dan menggunakan analisis data untuk perubahan yang berkesan adalah penting untuk perniagaan, syarikat -syarikat terkemuka seperti Microsoft dan Amazon untuk melabur banyak dalam kausal AI.

Tutorial ini memperkenalkan konsep AI kausal asas menggunakan perpustakaan Dowhy Python. Walaupun berbeza daripada pembelajaran mesin standard, pemahaman asas analisis regresi membantu. "Pengenalan kepada pemodelan linear di Python" dan "Pembelajaran Mesin untuk Perniagaan" DataCamp menawarkan latar belakang yang relevan.

Causal AI Fundamentals

Kesimpulan penyebab memerlukan pendekatan yang berbeza daripada analisis ramalan. Nancy Cartwright's "No Punca In, No Cause Out" menekankan keperluan untuk andaian mengenai struktur kausal untuk mendapatkan jawapan kausal; Pendekatan yang didorong oleh data semata-mata tidak mencukupi. Untuk menentukan kausalitas, penjelasan alternatif mesti diketepikan, yang memerlukan pengetahuan luaran di luar data itu sendiri.

Pertimbangkan kesan dasar kerja baru dari rumah (WFH) terhadap produktiviti pekerja. Analisis awal mungkin menunjukkan penyelesaian tugas yang lebih tinggi untuk pekerja WFH, tetapi adakah kausal ini? Faktor lain, seperti personaliti pekerja atau situasi keluarga, boleh mempengaruhi keutamaan dan produktiviti WFH, bertindak sebagai penyebab biasa.

Getting started with causal AI in Python – code examples and first steps

nota: graf yang dicipta oleh causalfusion.net

graf kausal secara visual mewakili hubungan ini, membuat andaian secara eksplisit dan membenarkan penghalusan. Andaian ini boleh menjadi kuat, tetapi sifat eksplisit graf kausal meningkatkan kredibiliti analisis.

Dowhy dalam python

Perpustakaan Dowhy Microsoft (sebahagian daripada ekosistem PYWHY) adalah alat utama untuk analisis kausal di Python. Kami akan mensimulasikan data untuk menggambarkan langkah -langkah kesimpulan kausal.

Dowhy menggunakan label seperti yang ditunjukkan dalam Jadual 1 (jadual asal tetap tidak berubah). Graf kausal secara tersirat ditakrifkan oleh parameter data. Dowhy menggunakan bahasa dot untuk mewakili graf.
!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) ...
Salin selepas log masuk
Salin selepas log masuk

Model kausal dibuat menggabungkan data dan graf:
digraph {v0->y;W0-> v0; W1-> v0;Z0-> v0;W0-> y; W1-> y;}
Salin selepas log masuk

model=CausalModel(
        data = df,
        treatment=data['treatment_name'],
        outcome=data['outcome_name'],
        graph=data['gml_graph']
        )
Salin selepas log masuk
analisis kausal dan pengurangan bias

Regresi linear mudah menunjukkan pekali cerun, tetapi ini boleh berat sebelah kerana sebab -sebab yang sama. Kriteria backdoor Dowhy membantu menangani masalah ini dengan mengawal pembolehubah yang mempengaruhi kedua -dua rawatan dan hasil (introversi dan bilangan kanak -kanak dalam contoh ini).

!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) ...
Salin selepas log masuk
Salin selepas log masuk

Dowhy menyediakan pelbagai kaedah anggaran; Pembasmian kebarangkalian songsang digunakan di sini untuk keluasan. Anggaran yang terhasil adalah dekat dengan kebenaran tanah, menunjukkan pengurangan bias.

ujian tekanan dan keteguhan

Ujian Refutasi Dowhy membantu menilai kebolehpercayaan asumsi. Menambah sebab biasa yang tidak dapat diobservasi memberi kesan yang signifikan kepada julat anggaran, yang menonjolkan pengaruh pembolehubah yang tidak dapat diobservasi.

Getting started with causal AI in Python – code examples and first steps

pembolehubah instrumental

Pembolehubah instrumental (seperti penutupan bawah tanah yang mempengaruhi WFH tetapi tidak memberi kesan langsung kepada produktiviti) menawarkan strategi pengenalan alternatif. Dowhy secara automatik mengenal pasti instrumen yang sesuai, memberikan lebih mantap, walaupun berpotensi kurang tepat, anggaran.

Getting started with causal AI in Python – code examples and first steps

Kesimpulan

Dowhy memudahkan penyebab AI, menyediakan saluran paip yang komprehensif. Selepas menguasai asas -asas, meneroka teknik canggih dan perpustakaan lain. Kesimpulan kausal memerlukan kepakaran dan kerjasama domain untuk menentukan model dan andaian yang sesuai. Usaha ini berbaloi untuk mendapatkan jawapan kausal yang penting untuk keputusan perniagaan yang dimaklumkan. Kursus "Pembelajaran Mesin untuk Perniagaan" DataCamp menyediakan peluang pembelajaran selanjutnya.

Atas ialah kandungan terperinci Bermula dengan Causal AI dalam Python - Contoh Kod dan Langkah Pertama. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan