Tensorflow实现k-means
tensorflow实现k-means聚类算法,主要参考是的buliding Maninery Learning on Tensorflow的程序,我稍微简化了一下,并对结构做了调整,看起来更加整洁紧凑。tf构建这样的算法要比直接使用numpy复杂一些,而且不是很直观,但是关于tf的一些小的函数和技巧可以从中学习到。
首先生成一个人工的数据集,这样比较好观察结果。
import tensorflow as tf
import matplotlib.pyplot as plt
import numpy as np
from sklearn.datasets.samples_generator import make_blobs
from sklearn.datasets.samples_generator import make_circles
K = 4 # 类别数目
MAX_ITERS = 1000 # 最大迭代次数
N = 200 # 样本点数目
centers = [[-2, -2], [-2,