부족 클러스터링 알고리즘 처리 비정상적인 라벨은 K-수단

, 군중 장면에서 클러스터링 알고리즘을 k는-의미는 매우 유용한 도구입니다. (알고리즘의 원리는 참조 할 수 있습니다 파이썬 K-수단 알고리즘 구현 )

일반적인 호출

알고리즘의 루틴에 의해 호출된다 :

# 从sklearn引包
from sklearn import cluster
# 初始化并设定聚类数
k_means = cluster.KMeans(n_clusters=9)
# 指定聚类特征
df_pct = stat_score['feature_1', 'feture_2', 'feature_3']
k_means.fit(df_input.fillna(0))

# 计算聚类标签
labels = k_means.labels_
# 获得聚类的质心
C = k_means.cluster_centers_

이상 현상

통상적으로, 상기 처리는 dataframe의 열 순서에 기초하여, 인덱스 label(0 내지 8의 수).
코드의 구현의 과정에서이 있었다 그러나, 우리가 raise ValueError('Length of values does not match length of ' 'index')에러, 오류가 등장 레이블 값을 변환하는 시간 때문이다 label팔가지 경우보다 적은 수입니다. 즉, K-수단 알고리즘은 8 개 미만의 클러스터 라벨이 부여됩니다.

중간 인쇄 정보는 세 개의 클러스터 라벨 확인되었다.

>>>>>>>>>>>>>>>>>>>>labels<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[4 4 4 4 4 2 4 4 4 0 4 4 4 0]
14
{0, 2, 4}

이상

회사 전체 주문과 같은 차원에서 클러스터 드릴 원본 데이터의 저장소, 특정 시간의 존재는 순서가 너무 작합니다. 단지 비정상적인 기능은 3 라벨 행수 dataframe 일치하지 않는 경우의 마지막 발생을 얻었다 K-수단 초래 드릴 사이즈 28을 기록하기 때문에 위이다.

치료

숫자가 특정 임계 값이 생각보다 작은 경우 드릴 차원의 클러스터링하기 전에,이 차원은 기능 통계의 수는이다 :

  1. 패킷 클러스터링 기능 태그를 사용하여 다음 패킷을 결합하는 단계;
  2. 이러한 스펙트럼 클러스터링과 같은 다른 클러스터링 알고리즘을 생각해 보자.

추천

출처www.cnblogs.com/shenfeng/p/kmean_label_lacking.html