Cho một mạng Bayes dạng chuỗi A→B→C, trong đó A có nA trạng thái, B có nB trạng thái, C có nC trạng thái (đánh số từ 1). Cho:
Biến C được quan sát ở trạng thái c. Vì C chỉ phụ thuộc B và B chỉ phụ thuộc A (tính chất Markov của mạng Bayes), hậu nghiệm của A được tính bằng cách liệt kê (enumerate) qua toàn bộ giá trị của B:
P(A=a∣C=c)∝P(A=a)∑b=1nBP(B=b∣A=a)P(C=c∣B=b)
Hãy tính phân phối hậu nghiệm đầy đủ P(A∣C=c) cho mọi a=1,…,nA.
Dòng 1: bốn số nguyên nA nB nC c (1≤c≤nC). Dòng 2: nA số thực — P(A). nA dòng tiếp theo: mỗi dòng nB số thực — hàng của bảng P(B∣A). nB dòng tiếp theo: mỗi dòng nC số thực — hàng của bảng P(C∣B).
In ra nA số thực trên một dòng, cách nhau bởi khoảng trắng, là P(A=1∣C=c),…,P(A=nA∣C=c), mỗi số làm tròn 6 chữ số thập phân. Nếu P(C=c)=0 (tổng chuẩn hoá bằng 0, sự kiện không thể xảy ra), in ra UNDEFINED.
Ví dụ:
Đầu vào:
2 2 2 1
0.5 0.5
0.9 0.1
0.2 0.8
0.8 0.2
0.3 0.7
Đầu ra:
0.652174 0.347826
Đầu vào:
1 2 2 2
1.0
0.4 0.6
0.9 0.1
0.2 0.8
Đầu ra:
1.000000
Đang tải editor...