KMeans聚类、肘部法则求最佳分类数
来源:互联网 发布:mac 访问windows共享 编辑:程序博客网 时间:2024/04/19 19:40
K-Means算法是一个重复移动类中心点的过程,把类的中心点,也称重心(centroids),移动到其包含成员的平
均位置,然后重新划分其内部成员。 是算法计算出的超参数,表示类的数量;K-Means可以自动分
配样本到不同的类,但是不能决定究竟要分几个类。
K-Means的参数是类的重心位置和其内部观测值的位置。与广义线性模型和决策树类似,K-Means参
均位置,然后重新划分其内部成员。 是算法计算出的超参数,表示类的数量;K-Means可以自动分
配样本到不同的类,但是不能决定究竟要分几个类。
K-Means的参数是类的重心位置和其内部观测值的位置。与广义线性模型和决策树类似,K-Means参
数的最优解也是以成本函数最小化为目标。K-Means成本函数公式如下:
uk是第k 个类的重心位置。成本函数是各个类畸变程度(distortions)之和。每个类的畸变程度等于
该类重心与其内部成员位置距离的平方和。若类内部的成员彼此间越紧凑则类的畸变程度越小,反
之,若类内部的成员彼此间越分散则类的畸变程度越大。求解成本函数最小化的参数就是一个重复配
置每个类包含的观测值,并不断移动类重心的过程。
#-*- coding:utf-8 -*-import numpy as npimport matplotlib.pyplot as pltfrom sklearn.cluster import KMeansfrom scipy.spatial.distance import cdistimport sysreload(sys)sys.setdefaultencoding('utf-8')x = np.array([1, 2, 3, 1, 5, 6, 5, 5, 6, 7, 8, 9, 7, 9])y = np.array([1, 3, 2, 2, 8, 6, 7, 6, 7, 1, 2, 1, 1, 3])data = np.array(list(zip(x, y)))# 肘部法则 求解最佳分类数# K-Means参数的最优解也是以成本函数最小化为目标# 成本函数是各个类畸变程度(distortions)之和。每个类的畸变程度等于该类重心与其内部成员位置距离的平方和'''aa=[]K = range(1, 10)for k in range(1,10): kmeans=KMeans(n_clusters=k) kmeans.fit(data) aa.append(sum(np.min(cdist(data, kmeans.cluster_centers_, 'euclidean'),axis=1))/data.shape[0])plt.figure()plt.plot(np.array(K), aa, 'bx-')plt.show()'''#绘制散点图及聚类结果中心点plt.figure()plt.axis([0, 10, 0, 10])plt.grid(True)plt.plot(x,y,'k.')kmeans=KMeans(n_clusters=3)kmeans.fit(data)plt.plot(kmeans.cluster_centers_[:,0],kmeans.cluster_centers_[:,1],'r.')plt.show()
阅读全文
0 0
- KMeans聚类、肘部法则求最佳分类数
- python肘部法则 最优分类
- 海量数据的KNN分类、Kmeans聚类
- 上班族最佳“发财”法则
- 上班族最佳“发财”法则
- python-opencv3 kmeans图像分类
- python-opencv3 kmeans图像分类
- K均值(kmeans)分类
- KMeans聚类
- kmeans聚类
- Kmeans聚类
- Kmeans聚类
- kMeans聚类
- kmeans聚类
- kmeans聚类
- (OTHER)JavaScript编程最佳法则
- 根据股票涨跌用KMeans进行分类
- Mahout kmeans聚类
- 2017.08.19总结
- HDU Friend-Graph【暴力】【卡内存】【水题】
- ListView控件
- caffe in python ---Classification
- Unity摁键生成,旋转方法
- KMeans聚类、肘部法则求最佳分类数
- AndroidStudio安装模拟器(install Haxm)出现VT not working问题(Window10)
- @AutoWired自动装配注释去掉下面的红线
- FZUOJ 2273 Triangles
- Java中的transient关键字
- 【LeetCode】 best-time-to-buy-and-sell-stock-i ii iii iv
- HeightMap reader c++
- HDU 5979 && 2016ICPC大连 I: Convex
- FZU 1901 Period II (KMP+技巧)