예제 #1
0
 def test_schema_validation(self):
     trainable_16 = KNeighborsClassifier(n_neighbors=16)
     with self.assertRaises(jsonschema.ValidationError):
         _ = trainable_16.fit(self.train_X, self.train_y)
     trainable_15 = KNeighborsClassifier(n_neighbors=15)
     trained_15 = trainable_15.fit(self.train_X, self.train_y)
     _ = trained_15.predict(self.test_X)
예제 #2
0
 def test_predict_proba(self):
     trainable = KNeighborsClassifier()
     iris = sklearn.datasets.load_iris()
     trained = trainable.fit(iris.data, iris.target)
     #with self.assertWarns(DeprecationWarning):
     predicted = trainable.predict_proba(iris.data)
     predicted = trained.predict_proba(iris.data)
예제 #3
0
 def test_individual_op_freeze_trained(self):
     from lale.lib.sklearn import KNeighborsClassifier
     trainable = KNeighborsClassifier(n_neighbors=1)
     X = [[0.0], [1.0], [2.0]]
     y_old = [0.0, 0.0, 1.0]
     y_new = [1.0, 0.0, 0.0]
     liquid_old = trainable.fit(X, y_old)
     self.assertEqual(list(liquid_old.predict(X)), list(y_old))
     liquid_new = liquid_old.fit(X, y_new)
     self.assertEqual(list(liquid_new.predict(X)), list(y_new))
     frozen_old = trainable.fit(X, y_old).freeze_trained()
     self.assertFalse(liquid_old.is_frozen_trained())
     self.assertTrue(frozen_old.is_frozen_trained())
     self.assertEqual(list(frozen_old.predict(X)), list(y_old))
     frozen_new = frozen_old.fit(X, y_new)
     self.assertEqual(list(frozen_new.predict(X)), list(y_old))
예제 #4
0
    def test_individual_op_freeze_trained(self):
        from lale.lib.sklearn import KNeighborsClassifier

        with EnableSchemaValidation():
            trainable = KNeighborsClassifier(n_neighbors=1)
            X = np.array([[0.0], [1.0], [2.0]])
            y_old = np.array([0.0, 0.0, 1.0])
            y_new = np.array([1.0, 0.0, 0.0])
            liquid_old = trainable.fit(X, y_old)
            self.assertEqual(list(liquid_old.predict(X)), list(y_old))
            liquid_new = liquid_old.fit(X, y_new)
            self.assertEqual(list(liquid_new.predict(X)), list(y_new))
            frozen_old = trainable.fit(X, y_old).freeze_trained()
            self.assertFalse(liquid_old.is_frozen_trained())
            self.assertTrue(frozen_old.is_frozen_trained())
            self.assertEqual(list(frozen_old.predict(X)), list(y_old))
            frozen_new = frozen_old.fit(X, y_new)
            self.assertEqual(list(frozen_new.predict(X)), list(y_old))
예제 #5
0
    def test_with_multioutput_targets(self):
        from sklearn.datasets import make_classification, load_iris
        import numpy as np
        from sklearn.utils import shuffle

        X, y1 = make_classification(n_samples=10, n_features=100, n_informative=30, n_classes=3, random_state=1)
        y2 = shuffle(y1, random_state=1)
        y3 = shuffle(y1, random_state=2)
        Y = np.vstack((y1, y2, y3)).T
        trainable = KNeighborsClassifier()
        trained = trainable.fit(X, Y)
        predictions = trained.predict(X)
예제 #6
0
 def test_trained_individual_op_freeze_trainable(self):
     from lale.lib.sklearn import KNeighborsClassifier
     from lale.operators import TrainedIndividualOp
     trainable = KNeighborsClassifier(n_neighbors=1)
     X = [[0.0], [1.0], [2.0]]
     y_old = [0.0, 0.0, 1.0]
     liquid = trainable.fit(X, y_old)
     self.assertIsInstance(liquid, TrainedIndividualOp)
     self.assertFalse(liquid.is_frozen_trainable())
     self.assertIn('algorithm', liquid.free_hyperparams())
     frozen = liquid.freeze_trainable()
     self.assertIsInstance(frozen, TrainedIndividualOp)
     self.assertTrue(frozen.is_frozen_trainable())
     self.assertFalse(frozen.is_frozen_trained())
     self.assertEqual(len(frozen.free_hyperparams()), 0)
예제 #7
0
    def test_trained_individual_op_freeze_trainable(self):
        from lale.lib.sklearn import KNeighborsClassifier
        from lale.operators import TrainedIndividualOp

        with EnableSchemaValidation():
            trainable = KNeighborsClassifier(n_neighbors=1)
            X = np.array([[0.0], [1.0], [2.0]])
            y_old = np.array([0.0, 0.0, 1.0])
            liquid = trainable.fit(X, y_old)
            self.assertIsInstance(liquid, TrainedIndividualOp)
            self.assertFalse(liquid.is_frozen_trainable())
            self.assertIn("algorithm", liquid.free_hyperparams())
            frozen = liquid.freeze_trainable()
            self.assertIsInstance(frozen, TrainedIndividualOp)
            self.assertTrue(frozen.is_frozen_trainable())
            self.assertFalse(frozen.is_frozen_trained())
            self.assertEqual(len(frozen.free_hyperparams()), 0)