def test_majority_voting_single_sample(): query = np.array([1, -1]) ensemble_classifiers = create_pool_all_agree(return_value=0, size=10) ensemble_classifiers += create_pool_all_agree(return_value=2, size=9) ensemble_classifiers += create_pool_all_agree(return_value=1, size=20) predicted = majority_voting(ensemble_classifiers, query) assert predicted.all() == 1 and predicted.size == 1
def test_weighted_majority_voting(): query = np.array([[1, -1], [0, 0], [3, -1]]) ensemble_classifiers = create_pool_all_agree(return_value=0, size=10) ensemble_classifiers += create_pool_all_agree(return_value=2, size=9) weights = np.array([([0.5] * 10) + ([0.8] * 9), ([0.5] * 10) + ([0.8] * 9), ([0.5] * 10) + ([0.8] * 9)]) predicted = weighted_majority_voting(ensemble_classifiers, weights, query) assert predicted.all() == 1 and predicted.size == 3
def test_predict_all_same(): X = X_dsel_ex1 y = np.copy(y_dsel_ex1) expected = y oracle_test = Oracle(create_pool_all_agree(return_value=0, size=10)) expected[expected == 1] = -1 predicted_labels = oracle_test.predict(X, y) assert np.equal(predicted_labels, expected).all()
def create_pool_classifiers_score(prediction, size, score): pool = create_pool_all_agree(return_value=prediction, size=size) for clf in pool: clf.score = MagicMock(return_value=score) return pool
def test_majority_voting(): query = np.array([[1, -1], [0, 0], [3, -1]]) ensemble_classifiers = create_pool_all_agree(return_value=0, size=10) ensemble_classifiers += create_pool_all_agree(return_value=2, size=9) predicted = majority_voting(ensemble_classifiers, query) assert predicted.all() == 0 and predicted.size == 3