sklearn学习笔记之Kmeans聚类
来源:互联网 发布:高铭的书真实的吗 知乎 编辑:程序博客网 时间:2024/06/05 09:22
先讲KMeans的构造函数:
使用前需要导入
import sklearn.cluster import KMeans
KMeans(n_clusters=8, init='k-means++', n_init=10, max_iter=300, tol=0.0001, precompute_distances='auto', verbose=0, random_state=None, copy_x=True, n_jobs=1, algorithm='auto' )各个参数的意义:
参数的意义:
n_clusters
:簇的个数,即你想聚成几类init
: 初始簇中心的获取方法n_init
: 获取初始簇中心的更迭次数max_iter
: 最大迭代次数(因为kmeans算法的实现需要迭代)tol
: 容忍度,即kmeans运行准则收敛的条件precompute_distances
:是否需要提前计算距离verbose
: 冗长模式(不太懂是啥意思,反正一般不去改默认值)random_state
: 随机生成簇中心的状态条件。copy_x
: 对是否修改数据的一个标记,如果True,即复制了就不会修改数据。n_jobs
: 并行设置algorithm
: kmeans的实现算法,有:'auto'
,'full'
,'elkan'
, 其中'full'
表示用EM方式实现
import osimport scipy as spimport numpy as npfrom scipy.stats import normfrom matplotlib import pylabfrom sklearn.cluster import KMeansxw1 = norm(loc=0.3, scale=.15).rvs(20)yw1 = norm(loc=0.3, scale=.15).rvs(20)xw2 = norm(loc=0.7, scale=.15).rvs(20)yw2 = norm(loc=0.7, scale=.15).rvs(20)xw3 = norm(loc=0.2, scale=.15).rvs(20)yw3 = norm(loc=0.8, scale=.15).rvs(20)x = sp.append(sp.append(xw1, xw2), xw3)y = sp.append(sp.append(yw1, yw2), yw3)km = KMeans(init='random', n_clusters=3, verbose=1, n_init=1, max_iter=6)colors=['red','green','blue']marker=['o','p','^']for i in km.labels_: pylab.scatter(x[km.labels_==i],y[km.labels_==i],marker=marker[i],c=colors[i])pylab.show()
关于KMeans对象的属性:
labels_:每个点的分类;
cluster_centers_:向量,[n_clusters, n_features]
inertia_:float,每个点到其簇的质心的距离之和。
KMeans对象的方法:
fit(X[,y]):计算k-means聚类。
fi_predictt(X[,y]):计算簇质心并给每个样本预测类别。
fit_transform(X[,y]):计算簇并 transform X to cluster-distance space。
get_params([deep]):取得估计器的参数。
predict(X):给每个样本估计最接近的簇。
score(X[,y]):Opposite of the value of X on the K-means objective (?)
set_params(**params):为这个估计器手动设定参数。
transform(X[,y]):将X转换入cluster-distance 空间。
阅读全文
0 0
- sklearn学习笔记之Kmeans聚类
- sklearn中KMeans学习
- sklearn之Kmeans算法
- 聚类算法学习----之----sklearn.cluster.KMeans
- sklearn 文档翻译之 sklearn.cluster.KMeans
- sklearn 文档翻译之 sklearn.cluster.KMeans
- python之sklearn学习笔记
- Mahout 之kmeans算法学习笔记
- 机器学习笔记之Kmeans算法
- Machine Learning 学习 之 Kmeans 笔记
- python 学习笔记二之sklearn 库
- OpenCV学习笔记(1):Kmeans聚类
- 机器学习之Kmeans
- sklearn 学习笔记一:开始学习sklearn
- sklearn学习笔记_1
- sklearn学习笔记 lesson1_Preprocessing
- SkLearn学习笔记
- sklearn学习笔记
- angular中使用multiselect实现二级下拉联动
- Linux常用指令—grep(搜索过滤)
- JaxWs基于消息编程
- byte[]和结构互转
- 关于C++输入的一些总结
- sklearn学习笔记之Kmeans聚类
- VS2013 查看程序各个函数的CPU利用率
- 4分钟_教你使用phpStudy在一个服务器上挂载多个网站
- 指针(Pointer)
- Windows环境配置SBT并创建Scala项目
- HW6UL-LITE 开发板简介
- Basler|CImageEventHandler类
- Barcode-EAN 13码生成校验位
- 版本更新相关,CFBundleVersion和CFBundleShortVersionString的比较,获取版本号