nAG Library for Pythonを使用してK-meansによるランダムデータのクラスタリングを行う

nAG Library for Python Example集

このページは、nAGライブラリのJupyterノートブックExampleの日本語翻訳版です。オリジナルのノートブックはインタラクティブに操作することができます。

nAG Library for Pythonを使用してK-meansによるランダムデータのクラスタリングを行う

import numpy as np
import matplotlib.pyplot as plt
import matplotlib
from naginterfaces.library import mv
# Jupyter の表示バックエンドを選択:
%matplotlib inline
number_of_points = 100

# ランダムな配列を生成してクラスタリングを試み、プロットできるように2つの変数を用意する
np.random.seed(42) # For reproducibility

# デモンストレーションを容易にするために、明示的に2つのきれいに分離されたクラスターを構築します
mean1 = [-2, -2]
cov1 = [[1, 0], [0, 1]]  
X1 = np.random.multivariate_normal(mean1, cov1, number_of_points)

mean2 = [2, 2]
cov2 = [[1, 0], [0, 1]]  
X2 = np.random.multivariate_normal(mean2, cov2, number_of_points)

# 2つを結合して単一の点の集合を作成する
X = np.concatenate((X1, X2))

# 組み合わせたデータセットをプロットする
_ = plt.plot(X[:,0], X[:,1], 'x')
png
nvar = 2 # Number of clusters
cmeans = np.random.rand(2, nvar) # Initial starting guesses for the centres
isx = np.full(2, 1.0, dtype=int) # We want to include both x and y features in the clustering
kmeans = mv.cluster_kmeans(X, isx, cmeans) # Find the cluster centres
colours = ['orange', 'blue']
plt.scatter(X[:,0], X[:,1], marker='x', c=kmeans.inc, cmap=matplotlib.colors.ListedColormap(colours))
_ = plt.scatter(kmeans.cmeans[:,0], kmeans.cmeans[:,1], color='red', s=200)
png
関連情報
MENU
© 日本ニューメリカルアルゴリズムズグループ株式会社 2024
Privacy Policy  /  Trademarks