def test_aposteriori(): pool_classifiers, X_dsel, y_dsel, X_test, y_test = setup_classifiers() rng = np.random.RandomState(123456) a_posteriori = APosteriori(pool_classifiers, rng=rng, DFP=True) a_posteriori.fit(X_dsel, y_dsel) assert np.isclose(a_posteriori.score(X_test, y_test), 0.90000000000000002)
def test_aposteriori(knn_methods): pool_classifiers, X_dsel, y_dsel, X_test, y_test = setup_classifiers() rng = np.random.RandomState(123456) a_posteriori = APosteriori(pool_classifiers, random_state=rng, knn_classifier=knn_methods) a_posteriori.fit(X_dsel, y_dsel) assert np.isclose(a_posteriori.score(X_test, y_test), 0.96276595744680848)
def test_aposteriori(): pool_classifiers, X_dsel, y_dsel, X_test, y_test = setup_classifiers() rng = np.random.RandomState(123456) a_posteriori = APosteriori(pool_classifiers, random_state=rng, DFP=True, with_IH=True, IH_rate=0.1) a_posteriori.fit(X_dsel, y_dsel) assert np.isclose(a_posteriori.score(X_test, y_test), 0.8303030303030303)
model_svc = SVC(probability=True).fit(X_train, y_train) model_bayes = GaussianNB().fit(X_train, y_train) model_tree = DecisionTreeClassifier().fit(X_train, y_train) model_knn = KNeighborsClassifier(n_neighbors=5).fit(X_train, y_train) pool_classifiers = [ model_perceptron, model_linear_svm, model_svc, model_bayes, model_tree, model_knn ] # Initializing the DS techniques knop = KNOP(pool_classifiers) rrc = RRC(pool_classifiers) lca = LCA(pool_classifiers) mcb = MCB(pool_classifiers) aposteriori = APosteriori(pool_classifiers) # Fitting the techniques knop.fit(X_dsel, y_dsel) rrc.fit(X_dsel, y_dsel) lca.fit(X_dsel, y_dsel) mcb.fit(X_dsel, y_dsel) aposteriori.fit(X_dsel, y_dsel) # Calculate classification accuracy of each technique print('Evaluating DS techniques:') print('Classification accuracy KNOP: ', knop.score(X_test, y_test)) print('Classification accuracy RRC: ', rrc.score(X_test, y_test)) print('Classification accuracy LCA: ', lca.score(X_test, y_test)) print('Classification accuracy A posteriori: ', aposteriori.score(X_test, y_test))