2017-11-03 41 views
0

특정 상태 집합 사이의 전환 확률을 알아 내기 위해 pgmpy Python package을 사용하려하지만 모델에 맞을 때 조건부 확률이 올바르지 않습니다.잘못된 조건부 확률을 반환하는 pgmpy

제가 말하고있는 문제의 매우 단순한 예로서, A와 B의 두 가지 상태로 구성된 베이지안 네트워크를 A에서 B로 이어지는 단일 지향 에지로 가정하십시오. 그리고 우리가 관찰 한 가정 A가 0 일 때마다 B는 하나이고 A가 1 일 때마다 B는 0입니다. 이 상황을 설명하는 코드가 주어진다 : 우리는 다음 model.cpds[1]를 호출하여 장착 조건부 확률을 검사하지만 때

import pandas as pd 
from pgmpy.models import BayesianModel 

data = pd.DataFrame(data={'A': [0, 0, 1, 1, 1, 1], 'B': [1, 1, 0, 0, 0, 0]}) 
model = BayesianModel([('A', 'B')]) 
model.fit(data) 

, 우리는 pgmpy는 다음 배운 것을 발견 :

+------+------+------+ 
| A | A(0) | A(1) | 
+------+------+------+ 
| B(0) | 0.5 | 0.5 | 
+------+------+------+ 
| B(1) | 0.5 | 0.5 | 
+------+------+------+ 

해야 배웠습니다

+------+------+------+ 
| A | A(0) | A(1) | 
+------+------+------+ 
| B(0) | 0.0 | 1.0 | 
+------+------+------+ 
| B(1) | 1.0 | 0.0 | 
+------+------+------+ 

누군가가 나에게 무슨 일이 일어나는지 설명해 주시겠습니까? 이것은 매우 기본적인 예이며, 나는 미쳐 가고있는 것처럼 느낍니다. 감사합니다

답변