def test_estimate_competence_batch(example_estimate_competence): _, y, neighbors, distances, dsel_processed, _ = example_estimate_competence expected = np.array([[0.75000000, 0.66666667, 0.75000000], [0.80000000, 1.00000000, 0.80000000], [1.00000000, 0.60000000, 0.50000000]]) lca_test = LCA() lca_test.DSEL_processed_ = dsel_processed lca_test.DSEL_target_ = y query = np.ones((3, 2)) predictions = np.array([[0, 1, 0]]) competences = lca_test.estimate_competence(neighbors, distances=distances, predictions=np.array( predictions)) assert np.isclose(competences, expected).all()
def test_estimate_competence_diff_target(index): lca_test = LCA(create_pool_classifiers()) lca_test.DSEL_processed_ = dsel_processed_ex1 lca_test.DSEL_target_ = np.ones(15, dtype=int) * 3 neighbors = neighbors_ex1[index, :].reshape(1, -1) distances = distances_ex1[index, :].reshape(1, -1) query = np.atleast_2d([1, 1]) expected = [0.0, 0.0, 0.0] predictions = [] for clf in lca_test.pool_classifiers: predictions.append(clf.predict(query)[0]) competences = lca_test.estimate_competence( query, neighbors, distances=distances, predictions=np.array(predictions)) assert np.isclose(competences, expected).all()
def test_estimate_competence_diff_target(index, example_estimate_competence, create_pool_classifiers): _, y, neighbors, distances, dsel_processed, _ = example_estimate_competence lca_test = LCA(create_pool_classifiers) lca_test.DSEL_processed_ = dsel_processed lca_test.DSEL_target_ = np.ones(15, dtype=int) * 3 neighbors = neighbors[index, :].reshape(1, -1) distances = distances[index, :].reshape(1, -1) query = np.atleast_2d([1, 1]) expected = [0.0, 0.0, 0.0] predictions = np.array([[0, 1, 0]]) competences = lca_test.estimate_competence( query, neighbors, distances=distances, predictions=np.array(predictions)) assert np.isclose(competences, expected).all()
def test_estimate_competence_batch(): expected = np.array([[0.75000000, 0.66666667, 0.75000000], [0.80000000, 1.00000000, 0.80000000], [1.00000000, 0.60000000, 0.50000000]]) lca_test = LCA(create_pool_classifiers()) lca_test.DSEL_processed_ = dsel_processed_ex1 neighbors = neighbors_ex1 distances = distances_ex1 lca_test.DFP_mask = np.ones((3, 3)) lca_test.DSEL_target_ = y_dsel_ex1 query = np.ones((3, 2)) predictions = [] for clf in lca_test.pool_classifiers: predictions.append(clf.predict(query)[0]) competences = lca_test.estimate_competence( query, neighbors, distances=distances, predictions=np.array(predictions)) assert np.isclose(competences, expected).all()