Bayesian network inference menggunakan pymc (Beginner's confusion)

12

Saat ini saya mengikuti kursus PGM oleh Daphne Koller di Coursera. Dalam hal itu, kami umumnya memodelkan Bayesian Network sebagai grafik langsung penyebab dan efek dari variabel yang merupakan bagian dari data yang diamati. Tetapi pada tutorial dan contoh PyMC saya biasanya melihat bahwa itu tidak cukup dimodelkan dengan cara yang sama seperti PGM atau minimal saya bingung. Dalam PyMC, orang tua dari setiap variabel dunia nyata yang diamati seringkali merupakan parameter distribusi yang Anda gunakan untuk memodelkan variabel.

Sekarang pertanyaan saya sangat praktis. Misalkan saya memiliki 3 variabel yang datanya diamati (A, B, C) (mari kita asumsikan mereka semua adalah variabel kontinu hanya untuk kepentingan itu). Dari beberapa pengetahuan domain, dapat dikatakan bahwa A dan B menyebabkan C. Jadi kita memiliki BN di sini - A, B adalah orang tua dan C adalah anak-anak. sekarang dari persamaan BN P (A, B, C) = P (C | A, B) * P (A) * P (B)

Saya dapat mengatakan A dan B adalah beberapa distribusi normal dengan beberapa mu dan sigma, tetapi bagaimana saya memodelkan P (C | A, B)? Gagasan umum yang ingin saya pelajari, adalah bagaimana cara mempelajari BN ini menggunakan PyMC sehingga saya dapat meminta BN. Atau apakah saya harus menambah BN dengan parameter model dalam beberapa mode.

Apakah masalah ini dapat dipecahkan menggunakan pymc? atau ada yang salah dengan fundamental saya?

Bantuan apa pun akan dihargai!

zubinmehta
sumber

Jawaban: