def test_lws_allevidence(self): self.assertDictEqual( marginal_lws_a(self.bn, evidence={ 'Burglary': 'Yes', 'Alarm': 'Yes', 'Earthquake': 'Yes', 'JohnCalls': 'Yes', 'MaryCalls': 'Yes' }), { 'Alarm': { 'No': 0.0, 'Yes': 1.0 }, 'Burglary': { 'No': 0.0, 'Yes': 1.0 }, 'Earthquake': { 'No': 0.0, 'Yes': 1.0 }, 'JohnCalls': { 'No': 0.0, 'Yes': 1.0 }, 'MaryCalls': { 'No': 0.0, 'Yes': 1.0 } })
def test_likelihood_weighted_sample(self): """ THIS HAS BEEN VALIDATED AGAINST BNLEARN """ np.random.seed(3636) self.assertDictEqual( marginal_lws_a(self.bn, evidence={'Burglary': 'Yes'}), { 'Alarm': { 'No': 0.058, 'Yes': 0.942 }, 'Burglary': { 'No': 0.0, 'Yes': 1.0 }, 'Earthquake': { 'No': 0.997, 'Yes': 0.003 }, 'JohnCalls': { 'No': 0.136, 'Yes': 0.864 }, 'MaryCalls': { 'No': 0.343, 'Yes': 0.657 } })
def test_lws_allevidence(self): self.assertDictEqual(marginal_lws_a(self.bn,evidence={'Burglary':'Yes','Alarm':'Yes', 'Earthquake':'Yes','JohnCalls':'Yes','MaryCalls':'Yes'}), {'Alarm': {'No': 0.0, 'Yes': 1.0}, 'Burglary': {'No': 0.0, 'Yes': 1.0}, 'Earthquake': {'No': 0.0, 'Yes': 1.0}, 'JohnCalls': {'No': 0.0, 'Yes': 1.0}, 'MaryCalls': {'No': 0.0, 'Yes': 1.0}})
def test_likelihood_weighted_sample(self): """ THIS HAS BEEN VALIDATED AGAINST BNLEARN """ np.random.seed(3636) self.assertDictEqual(marginal_lws_a(self.bn,evidence={'Burglary':'Yes'}), {'Alarm': {'No': 0.058, 'Yes': 0.942}, 'Burglary': {'No': 0.0, 'Yes': 1.0}, 'Earthquake': {'No': 0.997, 'Yes': 0.003}, 'JohnCalls': {'No': 0.136, 'Yes': 0.864}, 'MaryCalls': {'No': 0.343, 'Yes': 0.657}})