def test_should_get_intent_after_deserialization(self): # Given dataset = validate_and_format_dataset(BEVERAGE_DATASET) classifier = LogRegIntentClassifier().fit(dataset) classifier_dict = classifier.to_dict() # When loaded_classifier = LogRegIntentClassifier.from_dict(classifier_dict) result = loaded_classifier.get_intent("Make me two cups of tea") # Then expected_intent = "MakeTea" self.assertEqual(expected_intent, result[RES_INTENT_NAME])
def test_should_get_intent_after_deserialization(self): # Given dataset = validate_and_format_dataset(BEVERAGE_DATASET) classifier = LogRegIntentClassifier().fit(dataset) classifier_dict = classifier.to_dict() # When loaded_classifier = LogRegIntentClassifier.from_dict(classifier_dict) result = loaded_classifier.get_intent("Make me two cups of tea") # Then expected_intent = "MakeTea" self.assertEqual(expected_intent, result[RES_INTENT_NAME])
def test_should_be_deserializable(self, mock_from_dict): # Given mocked_featurizer = Featurizer(LANGUAGE_EN, None) mock_from_dict.return_value = mocked_featurizer intent_list = ["MakeCoffee", "MakeTea", None] coeffs = [ [1.23, 4.5], [6.7, 8.90], [1.01, 2.345], ] intercept = [ 0.34, 0.41, -0.98 ] t_ = 701. config = LogRegIntentClassifierConfig().to_dict() classifier_dict = { "coeffs": coeffs, "intercept": intercept, "t_": t_, "intent_list": intent_list, "config": config, "featurizer": mocked_featurizer.to_dict(), } # When classifier = LogRegIntentClassifier.from_dict(classifier_dict) # Then self.assertEqual(classifier.intent_list, intent_list) self.assertIsNotNone(classifier.featurizer) self.assertListEqual(classifier.classifier.coef_.tolist(), coeffs) self.assertListEqual(classifier.classifier.intercept_.tolist(), intercept) self.assertDictEqual(classifier.config.to_dict(), config)
def test_should_be_deserializable(self, mock_from_dict): # Given mocked_featurizer = Featurizer(LANGUAGE_EN, None) mock_from_dict.return_value = mocked_featurizer intent_list = ["MakeCoffee", "MakeTea", None] coeffs = [ [1.23, 4.5], [6.7, 8.90], [1.01, 2.345], ] intercept = [0.34, 0.41, -0.98] t_ = 701. config = LogRegIntentClassifierConfig().to_dict() classifier_dict = { "coeffs": coeffs, "intercept": intercept, "t_": t_, "intent_list": intent_list, "config": config, "featurizer": mocked_featurizer.to_dict(), } # When classifier = LogRegIntentClassifier.from_dict(classifier_dict) # Then self.assertEqual(classifier.intent_list, intent_list) self.assertIsNotNone(classifier.featurizer) self.assertListEqual(classifier.classifier.coef_.tolist(), coeffs) self.assertListEqual(classifier.classifier.intercept_.tolist(), intercept) self.assertDictEqual(classifier.config.to_dict(), config)