Exemple #1
0
import unittest
from os.path import join
from flowvb.core._lower_bound import _LowerBound
from tests.test_old_faithful import makeTestFaithful

TEST_ACCURACY = 3
MAX_DIFF = pow(10, -TEST_ACCURACY)
TEST_DATA_LOC = join('tests', 'data', 'old_faithful')

TestLogDirichletNormalizationPrior = makeTestFaithful(
    'log_dirichlet_normalization_prior.mat',
    _LowerBound._log_dirichlet_normalization_prior,
    ('num_comp', 'prior_dirichlet'),
    'log_dirichlet_normalization_prior')

TestLogDirichletNormalization = makeTestFaithful(
    'log_dirichlet_normalization.mat',
    _LowerBound._log_dirichlet_normalization,
    ('num_obs', 'num_comp', 'prior_dirichlet'),
    'log_dirichlet_normalization')

TestLogDirichletConst = makeTestFaithful('log_dirichlet_const.mat',
    _LowerBound._log_dirichlet_const,
    ('prior_dirichlet',), 'log_dirichlet_const')

TestLogWishartConst = makeTestFaithful('log_wishart_const.mat',
    _LowerBound._log_wishart_const,
    ('num_features', 'nws_dof', 'nws_scale_matrix'),
    'log_wishart_const', max_diff=1)

TestExpectLogPx = makeTestFaithful('expect_log_px.mat',
Exemple #2
0
import unittest
from flowvb.core._ess import _ESS
from tests.test_old_faithful import makeTestFaithful

TestUpdateSmmMean = makeTestFaithful(
    "smm_mean.mat",
    _ESS._update_smm_mean,
    ("num_obs", "num_comp", "latent_scaled_resp", "latent_resp", "latent_scale"),
    "smm_mean",
    load_data=True,
)

TestUpdateSmmCovar = makeTestFaithful(
    "smm_covar.mat",
    _ESS._update_smm_covar,
    ("num_obs", "num_features", "num_comp", "latent_resp", "latent_scale", "latent_scaled_resp", "smm_mean"),
    "smm_covar",
    load_data=True,
)

TestUpdateSmmMixweights = makeTestFaithful(
    "smm_mixweights.mat", _ESS._update_smm_mixweights, ("num_obs", "latent_resp"), "smm_mixweights"
)

if __name__ == "__main__":
    suite = unittest.TestLoader().loadTestsFromTestCase(TestUpdateSmmMean)
    suite.addTest(unittest.TestLoader().loadTestsFromTestCase(TestUpdateSmmCovar))
    suite.addTest(unittest.TestLoader().loadTestsFromTestCase(TestUpdateSmmMixweights))
    unittest.TextTestRunner(verbosity=2).run(suite)