使用Python的sklearn包做kmeans
标签:#kmeans##python##编程#
时间:2018/10/31 14:42:14
作者:小木
首先要安装numpy和sklearn包,然后运行sklearn的kmeans方法即可。
这里我们使用了三种评价方法,一种是
##### 1、Silhouette Coefficient
Silhouette Coefficient是对聚类方法进行解释和验证一致性的方法。该技术提供了一个简洁的图形表示,表明每个对象在其集群中的位置。
Silhouette Coefficient是对象与其自身簇(内聚力)相比与其他簇(分离)相似程度的度量。 值从-1到+1,其中高值表示对象与其自己的簇很好地匹配并且与相邻簇不匹配。 如果大多数对象具有高值,则聚类结果是合适的。 如果许多点具有低值或负值,则聚类效果不好,可能具有太多或太少的簇。
可以使用任何距离度量来计算Silhouette Coefficient结果,例如欧几里德距离或曼哈顿距离。
##### 2.Rand Index
Rand索引计算集群(由聚类算法返回)与基准分类的相似程度。 人们还可以将Rand指数视为算法所做出的正确决策百分比的度量。 它可以使用以下公式计算:
```math
RI = \frac{TP+TN}{TP+FP+FN+TN}
```
这里的TP是真实的正值数量,TN是真实的负值数量,FP是错误正值的数量,FN是错误负值的数量。
##### 3. between_ss / total_ss
这