def fit(Xtrain, y_train, Xtest, num_pts): learner = TrendLearner(num_pts, 1) learner.fit(Xtrain, y_train) probs = learner.predict_proba(Xtest) return probs
def test_predict_good(self): base_one = np.ones(10) base_two = np.array([90, 2000, 90, 2000, 90, 2000, 90, 2000, 90, 2000]) y = [] X = [] for _ in range(10): X.append(self.addnoise(base_one)) X.append(self.addnoise(base_two)) y.append(1) y.append(0) l = TrendLearner(3, 1) l.fit(X, y) P = [] for _ in range(50): P.append(self.addnoise(base_one)) P.append(self.addnoise(base_two)) predict = l.predict(P) self.assertEqual(50, sum(predict == 0)) self.assertEqual(50, sum(predict == 1)) probs = l.predict_proba(P) for i in xrange(probs.shape[0]): if i % 2 == 0: self.assertTrue(probs[i, 1] > probs[i, 0]) else: self.assertTrue(probs[i, 0] > probs[i, 1])
def fit(C, y_train, X, y_true, num_pts): learner = TrendLearner(num_pts, 1) learner.fit(C, y_train) probs = learner.predict_proba(X) y_pred = probs.argmax(axis=1) return y_pred, probs
def test_predict_bad(self): base_one = np.ones(10) base_two = np.array([90, 2000, 90, 2000, 90, 2000, 90, 2000, 90, 2000]) y = [] X = [] for _ in range(10): X.append(self.addnoise(base_one)) X.append(self.addnoise(base_two)) y.append(1) y.append(0) l = TrendLearner(1, 1) l.fit(X, y) P = [] for _ in range(50): P.append(self.addnoise(base_one)) P.append(self.addnoise(base_two)) predict = l.predict(P) self.assertEqual(100, sum(predict == 0))