코드 11-16 라이브러리 호출 및 데이터셋 내려받기
import numpy as np
from sklearn.datasets import load_digits
from minisom import MiniSom
from pylab import plot, axis, show, pcolor, colorbar, bone
digits = load_digits() ------ 숫자 필기 이미지 데이터셋 내려받기
data = digits.data ------ 훈련 데이터셋
labels = digits.target ------ 정답(레이블)
이제 클러스터링을 위해 MiniSom 알고리즘을 사용합니다. MiniSom 알고리즘을 생성하면서 지도에 대한 차원과 입력 데이터의 차원을 함께 정의합니다.
코드 11-17 훈련 데이터셋을 MiniSom 알고리즘에 적용
som = MiniSom(16, 16, 64, sigma=1.0, learning_rate=0.5) ------ ①
som.random_weights_init(data)
print("SOM 초기화.")
som.train_random(data,10000)
print("\n. SOM 진행 종료")
bone()
pcolor(som.distance_map().T)
colorbar()