项目作者: p208p2002

项目描述 :
Unsupervised clustering for the UCI-WINE dataset using Kohonen Network
高级语言: Python
项目地址: git://github.com/p208p2002/kohonen-network-with-wine-dataset.git


Kohonen Network with Wine Dataset

Dataset

Kohonen Network

Kohnen Network使用@alexarnimueller所撰寫的Source Code

Source Code Ref: Kohonen, T. Self-Organized Formation of Topologically Correct Feature Maps. Biol. Cybern. 1982, 43 (1), 59–69.

Feature Normalization

進行資料特徵歸一化,為了更佳的分群效果

  1. def feature_normalization(X):
  2. count_featrue = X.shape[-1]
  3. f_maxs = []
  4. f_mins = []
  5. for i in range(count_featrue):
  6. f_max = np.max(X[:,[i]])
  7. f_min = np.min(X[:,[i]])
  8. f_maxs.append(f_max)
  9. f_mins.append(f_min)
  10. for i in range(len(X)):
  11. x_normalizatoion = np.array([0.0]*13)
  12. for j in range(len(X[i])):
  13. f_max = f_maxs[j]
  14. f_min = f_mins[j]
  15. x_normalizatoion[j] = (X[i][j] - f_min)/(f_max - f_min)
  16. X[i] = x_normalizatoion
  17. return X

Kohonen Network Training

  • network size : 8*8
  • epoch : 10000
  • learning rate : lr = 1 / (1 + (epoch / 0.5) **4)

Results

網路權重熱力圖

各別類別權重熱力圖







分群結果視覺化