def test_scores(self): labels_by_vote1 = clusterer_ensemble_scores(self.original_labels, self.n_estimators, self.n_clusters) assert_equal(labels_by_vote1.shape[0], self.X.shape[0]) # return aligned_labels as well labels_by_vote2, aligned_labels = clusterer_ensemble_scores( self.original_labels, self.n_estimators, self.n_clusters, return_results=True) assert_equal(labels_by_vote2.shape[0], self.X.shape[0]) assert_equal(aligned_labels.shape, self.original_labels.shape) # select a different reference base estimator (default is 0) labels_by_vote3 = clusterer_ensemble_scores(self.original_labels, self.n_estimators, self.n_clusters, reference_idx=1) assert_equal(labels_by_vote3.shape[0], self.X.shape[0])
# Initialize a set of estimators estimators = [ KMeans(n_clusters=n_clusters), MiniBatchKMeans(n_clusters=n_clusters), AgglomerativeClustering(n_clusters=n_clusters) ] clf = ClustererEnsemble(estimators, n_clusters=n_clusters) clf.fit(X) predicted_labels = clf.labels_ aligned_labels = clf.aligned_labels_ # Clusterer Ensemble without ininializing a new Class original_labels = np.zeros([X.shape[0], n_estimators]) for i, estimator in enumerate(estimators): estimator.fit(X) original_labels[:, i] = estimator.labels_ # Invoke method directly without initialiing a new Class labels_by_vote1 = clusterer_ensemble_scores(original_labels, n_estimators, n_clusters) labels_by_vote2, aligned_labels = clusterer_ensemble_scores( original_labels, n_estimators, n_clusters, return_results=True) labels_by_vote3 = clusterer_ensemble_scores(original_labels, n_estimators, n_clusters, reference_idx=1)