def test_predict(self, data): raw_model = VW() raw_model.fit(data.x, data.y) model = VWRegressor() model.fit(data.x, data.y) assert np.allclose(raw_model.predict(data.x), model.predict(data.x)) # ensure model can make multiple calls to predict assert np.allclose(raw_model.predict(data.x), model.predict(data.x))
def test_predict(self, data): raw_model = VW() raw_model.fit(data.x, data.y) model = VWRegressor() model.fit(data.x, data.y) assert np.allclose(raw_model.predict(data.x), model.predict(data.x))
def test_oaa(self): X = [ '1 | feature1:2.5', '2 | feature1:0.11 feature2:-0.0741', '3 | feature3:2.33 feature4:0.8 feature5:-3.1', '1 | feature2:-0.028 feature1:4.43', '2 | feature5:1.532 feature6:-3.2' ] model = VW(convert_to_vw=False, oaa=3) model.fit(X) assert np.allclose(model.predict(X), [1., 2., 3., 1., 2.])
def test_oaa(self): X = [ "1 | feature1:2.5", "2 | feature1:0.11 feature2:-0.0741", "3 | feature3:2.33 feature4:0.8 feature5:-3.1", "1 | feature2:-0.028 feature1:4.43", "2 | feature5:1.532 feature6:-3.2", ] model = VW(convert_to_vw=False, oaa=3) model.fit(X) assert np.allclose(model.predict(X), [1.0, 2.0, 3.0, 1.0, 2.0])
def test_decision_function(self, data): classes = np.array([-1., 1.]) raw_model = VW(loss_function='logistic') raw_model.fit(data.x, data.y) predictions = raw_model.predict(data.x) class_indices = (predictions > 0).astype(np.int) class_predictions = classes[class_indices] model = VWClassifier() model.fit(data.x, data.y) assert np.allclose(class_predictions, model.predict(data.x))
def test_predict(self, data): model = VW(loss_function='logistic') model.fit(data.x, data.y) assert np.isclose(model.predict(data.x[:1][:1])[0], 0.406929)
def test_predict_not_fit(self, data): model = VW(loss_function='logistic') with pytest.raises(NotFittedError): model.predict(data.x[0], data.y[0])
def test_predict_no_convert(self): model = VW(loss_function='logistic', convert_to_vw=False) model.fit(['-1 | bad', '1 | good']) assert np.isclose(model.predict(['| good'])[0], 0.245515)
def test_predict_not_fit(self, data): model = VW(loss_function='logistic') with pytest.raises(NotFittedError): model.predict(data.x[0])
def test_predict_no_convert(self): model = VW(loss_function="logistic", convert_to_vw=False) model.fit(["-1 | bad", "1 | good"]) assert np.isclose(model.predict(["| good"])[0], 0.245515)
def test_predict_no_convert(self): model = VW(loss_function='logistic') model.fit(['-1 | bad', '1 | good'], convert_to_vw=False) assert np.isclose(model.predict(['| good'], convert_to_vw=False)[0], 0.245515)