K-means 방법은 이방성 포인트를 처리 할 수 없습니다. DBSCAN과 Gaussian Mixture 모델은 scikit-learn에 따라 작업 할 수 있습니다. 두 가지 방법을 모두 사용하려고했지만 내 dataset에 대해 작동하지 않습니다.Anistropic points clustering
db = DBSCAN(eps=0.1,min_samples=5).fit(X_train,Y_train)
labels_train=db.labels_
# Number of clusters in labels, ignoring noise if present.
n_clusters_ = len(set(labels_train)) - (1 if -1 in labels_train else 0)
print('Estimated number of clusters: %d' % n_clusters_)
이며 1 클러스터 (클러스터 추정 번호 : 1) here 나타낸 바와 같이 검출 된
DBSCAN
는 다음 코드를 사용했다.
다음과 같이 코드를했다
가우시안 혼합 모델 : here을 같이
gmm = mixture.GaussianMixture(n_components=2, covariance_type='full')
gmm.fit(X_train,Y_train)
labels_train=gmm.predict(X_train)
print(gmm.bic(X_train))
두 클러스터는 구별 할 수 없습니다.
어떻게 두 개의 클러스터를 감지 할 수 있습니까?