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
                }
            })
Esempio n. 3
0
	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}})
Esempio n. 4
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}})