def test_poly_features( clf_dataset, degree, # noqa: F811 interaction_only, include_bias, order): X_np, X = clf_dataset polyfeatures = cuPolynomialFeatures(degree=degree, order=order, interaction_only=interaction_only, include_bias=include_bias) t_X = polyfeatures.fit_transform(X) assert type(X) == type(t_X) if isinstance(t_X, np.ndarray): if order == 'C': assert t_X.flags['C_CONTIGUOUS'] elif order == 'F': assert t_X.flags['F_CONTIGUOUS'] polyfeatures = skPolynomialFeatures(degree=degree, order=order, interaction_only=interaction_only, include_bias=include_bias) sk_t_X = polyfeatures.fit_transform(X_np) assert_allclose(t_X, sk_t_X, rtol=0.1, atol=0.1)
def test_column_transformer_named_transformers_(clf_dataset): # noqa: F811 X_np, X = clf_dataset cu_transformers = [("PolynomialFeatures", cuPolynomialFeatures(), [0, 2])] transformer = cuColumnTransformer(cu_transformers) transformer.fit_transform(X) cu_named_transformers = transformer.named_transformers_ sk_transformers = [("PolynomialFeatures", skPolynomialFeatures(), [0, 2])] transformer = skColumnTransformer(sk_transformers) transformer.fit_transform(X_np) sk_named_transformers = transformer.named_transformers_ assert cu_named_transformers.keys() == sk_named_transformers.keys()
def test_column_transformer_get_feature_names(clf_dataset): # noqa: F811 X_np, X = clf_dataset cu_transformers = [("PolynomialFeatures", cuPolynomialFeatures(), [0, 2])] transformer = cuColumnTransformer(cu_transformers) transformer.fit_transform(X) cu_feature_names = transformer.get_feature_names() sk_transformers = [("PolynomialFeatures", skPolynomialFeatures(), [0, 2])] transformer = skColumnTransformer(sk_transformers) transformer.fit_transform(X_np) sk_feature_names = transformer.get_feature_names() assert cu_feature_names == sk_feature_names
def test_poly_features_sparse(sparse_clf_dataset, degree, # noqa: F811 interaction_only, include_bias): X_np, X = sparse_clf_dataset polyfeatures = cuPolynomialFeatures(degree=degree, interaction_only=interaction_only, include_bias=include_bias) t_X = polyfeatures.fit_transform(X) assert type(t_X) == type(X) polyfeatures = skPolynomialFeatures(degree=degree, interaction_only=interaction_only, include_bias=include_bias) sk_t_X = polyfeatures.fit_transform(X_np) assert_allclose(t_X, sk_t_X, rtol=0.1, atol=0.1)
def test_poly_features_sparse(failure_logger, sparse_clf_dataset, # noqa: F811 degree, interaction_only, include_bias): X_np, X = sparse_clf_dataset polyfeatures = cuPolynomialFeatures(degree=degree, interaction_only=interaction_only, include_bias=include_bias) t_X = polyfeatures.fit_transform(X) # assert type(t_X) == type(X) if cpx.scipy.sparse.issparse(X): assert cpx.scipy.sparse.issparse(t_X) if scipy.sparse.issparse(X): assert scipy.sparse.issparse(t_X) polyfeatures = skPolynomialFeatures(degree=degree, interaction_only=interaction_only, include_bias=include_bias) sk_t_X = polyfeatures.fit_transform(X_np) assert_allclose(t_X, sk_t_X, rtol=0.1, atol=0.1)