학습 결과는 다음과 같은 의미를 갖습니다.
ⓐ center_shift: 유클리드 거리 계산을 이용하여 반복적으로 클러스터 중심을 변경합니다. 이 과정은 더 이상 클러스터 중심을 옮길 필요가 없을 때까지 반복되며 ‘iteration’ 파라미터에 의해 최종 반복 횟수가 출력됩니다.
ⓑ iteration: 중지할 기준(tol)을 만족하면 학습을 멈추고 반복 횟수를 출력합니다.
ⓒ tol: tolerance의 약자로 학습을 중지할 기준이 되는 값입니다.
훈련 결과를 통해 얻은 클러스터 ID와 클러스터 중심에 대한 값을 알아보겠습니다. K-평균 군집화와는 관계가 없지만 정보 확인을 위한 코드입니다.
코드 11-10 클러스터 ID와 클러스터 중심에 대한 값 확인
print(cluster_ids_x)
print(cluster_centers)
다음은 클러스터 ID와 클러스터 중심에 대한 값을 출력한 결과입니다.
tensor([2, 2, 1, 1, 0, 0, 2, 1, 1, 0, 0, 1, 2, 2, 2, 2, 2, 0, 1, 1, 2, 1, 1, 0, 0, 0, 0, 2, 0, 2, 1, 2, 0, 1, 1, 2, 0, 2, 2, 1, 0, 0, 2, 1, 2, 0, 0, 1, 2, 2, 1, 1, 0, 0, 2, 1, 1, 0, 1, 0, 2, 1, 2, 1, 1, 0, 1, 1, 0, 2, 0, 0, 0, 1, 1, 0, 2, 1, 1, 0, 0, 0, 2, 0, 0, 0, 2, 1, 1, 0, 2, 2, 2, 2, 1, 0, 1, 0, 0, 1, 0, 2, 0, 2, 2, 1, 0, 1, 2, 2, 0, 0, 2, 2, 0, 1, 0, 0, 2, 2]) tensor([[-0.0063, 0.1292, -0.6246, 0.2742, 0.1631, -0.7071, 1.4142, -0.7071], [-1.1850, -1.0022, 0.8757, -1.3028, -1.2384, 1.4142, -0.7071, -0.7071], [ 1.1509, 0.9013, -0.2199, 1.0354, 1.0906, -0.7071, -0.7071, 1.4142]])