def test_lin_poly_8(self): """ Linear polynomial in 8 variables. """ m = functools.partial(self.modeler, ord_cap=3, deg_cap=3) print model_validation.modeler_function_l2_errors( m, 80, model_validation.uniform_sampler(8, [-1.0, 1.0]), test_functions.lin_poly_8 )
def test_corr_poly_1(self): """ Source: "General formulation of HDMR component functions with independent and correlated variables", Rabitz/Li, J Math Chem 2011. Two identical copies of the polynomial taken and added together (on distinct sets of variables) to increase dimensionality to make this a more interesting example. """ mu = np.array([1.0, 2.0, 3.0, 1.0, 2.0, 3.0]) cov = np.array([ [1.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.5, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.5, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0] ]) sample_fn = model_validation.multi_gaussian_sampler(mu, cov) test_fn = test_functions.gen_corr_poly_1(mu) m = functools.partial(self.modeler, ord_cap=3, deg_cap=4) print "Cross-validation relative L2 errors", model_validation.modeler_function_l2_errors( m, 200, sample_fn, test_fn )
def main(): with open(out_file, 'w') as f: writer = csv.writer(f) modeler = functools.partial(cs_hdmr.cs_hdmr_modeler, ord_cap=2, deg_cap=5) errors = [ model_validation.modeler_function_l2_errors( modeler, n * sample_divisions, sample_fn, test_poly, sample_divisions=sample_divisions) for n in n_list ] for n, error_list in zip(n_list, errors): writer.writerow([n] + error_list)
def main(): with open(out_file, 'w') as f: writer = csv.writer(f) modeler = functools.partial( cs_hdmr.cs_hdmr_modeler, ord_cap=2, deg_cap=5 ) errors = [ model_validation.modeler_function_l2_errors( modeler, n*sample_divisions, sample_fn, test_poly, sample_divisions=sample_divisions ) for n in n_list ] for n, error_list in zip(n_list, errors): writer.writerow([n] + error_list)
def main(): with open(out_file, 'w') as f: writer = csv.writer(f) modeler = functools.partial(cs_hdmr.cs_hdmr_modeler, ord_cap=3, deg_cap=6) errors = [ model_validation.modeler_function_l2_errors( modeler, N * sample_divisions, model_validation.uniform_sampler(6, [-1.0, 1.0]), test_poly, sample_divisions=sample_divisions, noise=model_validation.make_gaussian_noise_fn(0, noise)) for noise in noise_list ] for noise, error_list in zip(noise_list, errors): writer.writerow([noise] + error_list)
def main(): with open(out_file, 'w') as f: writer = csv.writer(f) modeler = functools.partial( cs_hdmr.cs_hdmr_modeler, ord_cap=3, deg_cap=6, independent=True ) errors = [ model_validation.modeler_function_l2_errors( modeler, n*sample_divisions, model_validation.uniform_sampler(6, [-1.0, 1.0]), test_poly, sample_divisions=sample_divisions ) for n in n_list ] for n, error_list in zip(n_list, errors): writer.writerow([n] + error_list)
def main(): with open(out_file, 'w') as f: writer = csv.writer(f) modeler = functools.partial( cs_hdmr.cs_hdmr_modeler, ord_cap=3, deg_cap=6 ) errors = [ model_validation.modeler_function_l2_errors( modeler, N*sample_divisions, model_validation.uniform_sampler(6, [-1.0, 1.0]), test_poly, sample_divisions=sample_divisions, noise=model_validation.make_gaussian_noise_fn(0, noise) ) for noise in noise_list ] for noise, error_list in zip(noise_list, errors): writer.writerow([noise] + error_list)