def test_feature_fingerprints_take_into_account_full_array(): """Tests that fingerprint isn't using summary/abbreviated array info.""" big_array = np.random.random((128, 128)) f1 = Features(big_array, FEATURE_TYPE_SENTENCE, TEXT, "RegexFeaturizer") big_array_with_zero = np.copy(big_array) big_array_with_zero[64, 64] = 0.0 f2 = Features(big_array_with_zero, FEATURE_TYPE_SENTENCE, TEXT, "RegexFeaturizer") assert f1.fingerprint() != f2.fingerprint() f1_sparse = Features( scipy.sparse.coo_matrix(big_array), FEATURE_TYPE_SENTENCE, TEXT, "RegexFeaturizer", ) f2_sparse = Features( scipy.sparse.coo_matrix(big_array_with_zero), FEATURE_TYPE_SENTENCE, TEXT, "RegexFeaturizer", ) assert f1_sparse.fingerprint() != f2_sparse.fingerprint()
def test_deep_container_fingerprint_can_use_instance_fingerprint(): m1 = np.asarray([[0.5, 3.1, 3.0], [1.1, 1.2, 1.3], [4.7, 0.3, 2.7]]) f = Features(m1, "sentence", "text", "CountVectorsFeaturizer") assert rasa.shared.utils.io.deep_container_fingerprint( f) == f.fingerprint()