def test_run(): forwardPasser = ForwardPasser( X, y[:, numpy.newaxis], numpy.ones(X.shape[0]), numpy.ones(1), max_terms=1000, penalty=1 ) forwardPasser.run() res = str(forwardPasser.get_basis()) + "\n" + str(forwardPasser.trace()) filename = os.path.join(os.path.dirname(__file__), "forward_regress.txt") with open(filename, "r") as fl: prev = fl.read() assert_equal(res, prev)
def test_run(): forwardPasser = ForwardPasser(X, y, numpy.ones(y.shape), max_terms=1000, penalty=1) forwardPasser.run() res = str(forwardPasser.get_basis()) + \ '\n' + str(forwardPasser.trace()) filename = os.path.join(os.path.dirname(__file__), 'forward_regress.txt') with open(filename, 'r') as fl: prev = fl.read() assert_equal(res, prev)
class TestForwardPasser(object): def __init__(self): numpy.random.seed(0) self.basis = Basis(10) constant = ConstantBasisFunction() self.basis.append(constant) bf1 = HingeBasisFunction(constant, 0.1, 10, 1, False, 'x1') bf2 = HingeBasisFunction(constant, 0.1, 10, 1, True, 'x1') bf3 = LinearBasisFunction(bf1, 2, 'x2') self.basis.append(bf1) self.basis.append(bf2) self.basis.append(bf3) self.X = numpy.random.normal(size=(100, 10)) self.B = numpy.empty(shape=(100, 4), dtype=numpy.float64) self.basis.transform(self.X, self.B) self.beta = numpy.random.normal(size=4) self.y = numpy.empty(shape=100, dtype=numpy.float64) self.y[:] = numpy.dot( self.B, self.beta) + numpy.random.normal(size=100) self.forwardPasser = ForwardPasser( self.X, self.y, numpy.ones(self.y.shape), max_terms=1000, penalty=1) def test_orthonormal_update(self): numpy.set_printoptions(precision=4) m, n = self.X.shape B_orth = self.forwardPasser.get_B_orth() v = numpy.random.normal(size=m) for i in range(1, 10): v_ = numpy.random.normal(size=m) B_orth[:, i] = 10 * v_ + v v = v_ self.forwardPasser.orthonormal_update(i) B_orth_dot_B_orth_T = numpy.dot(B_orth[:, 0:i + 1].transpose(), B_orth[:, 0:i + 1]) assert_true( numpy.max(numpy.abs( B_orth_dot_B_orth_T - numpy.eye(i + 1)) ) < .0000001 ) def test_run(self): self.forwardPasser.run() res = str(self.forwardPasser.get_basis()) + \ '\n' + str(self.forwardPasser.trace()) filename = os.path.join(os.path.dirname(__file__), 'forward_regress.txt') with open(filename, 'r') as fl: prev = fl.read() assert_equal(res, prev)
def test_run(): forwardPasser = ForwardPasser(X, missing, y[:, numpy.newaxis], sample_weight, max_terms=1000, penalty=1) forwardPasser.run() res = str(forwardPasser.get_basis()) + \ '\n' + str(forwardPasser.trace()) filename = os.path.join(os.path.dirname(__file__), 'forward_regress.txt') # with open(filename, 'w') as fl: # fl.write(res) with open(filename, 'r') as fl: prev = fl.read() assert_equal(res, prev)