文章目录1 概述1.1 无监督学习与算法1.2 sklearn中的算法2 KMeans2.1 KMeans是如何工作的2.2 簇内误差平方和2.3 KMeans算法的时间复杂度3 sklearn.cluster.KMeans3.1 重要参数n_clusters3.1.1 算法的模型评估指标3.1.1.1 当真实标签已知的时候3.1.1.2 当真实标签未知的时候:轮廓系数3.1.1.3
""" 是在没有给定划分类别的情况下,根据数据相似度进行样本分组的一种方法,模型可以将 无标记的数据为多个簇,分别视为一,是一种非监督的学习算法。在商业上,可以帮助 市场分析人员从消费者库中区分出不同的消费群体,并概括出每一消费者的消费模式或消费习惯。 同时,也可以作为其它机器学习算法的一个预处理步骤,如异常值识别、连续型特征离散化等的输入是一组未被标记的样本,
转载 3月前
65阅读
scikit-learn简称sklearn,支持包括分类,回归,降维和四大机器学习算法。还包括了特征提取,数据处理和模型评估者三大模块。一,sklearn官方文档的内容和结构1.1 sklearn官方文档的内容 库的算法主要有四:监督学习的:分类,回归,无监督学习的:,降维。常用的回归:线性、决策树、SVM、KNN 集成回归:随机森林、Adaboost、GradientBoosting、
引言最近在读西瓜书,查阅了多方资料,恶补了数值代数、统计概率和线代,总算是勉强看懂了西瓜书中的公式推导。但是知道了公式以后还是要学会应用的,几经摸索发现python下的sklearn包把机器学习中经典的算法都封装好了,因此,打算写几篇博客记录一下sklearn包下的常用学习算法的使用,防止自己以后忘了,嘿嘿。1.西瓜书中197页对“”做了详细的解释,以下为摘录:在无监督学习中,训练样本的标
MeanShift 算法旨在于发现一个样本密度平滑的 blobs 。均值漂移(Mean Shift)算法是基于质心的算法,通过更新质心的候选位置,这些侯选位置通常是所选定区域内点的均值。然后,这些候选位置在后处理阶段被过滤以消除近似重复,从而形成最终质心集合。...
原创 2022-11-02 09:42:16
38阅读
SpectralClustering(谱) 是在样本之间进行关联矩阵的低维度嵌入,然后在低维空间中使用 KMeans 算法。 如果关联矩阵稀疏并且 pyamg 模块已经被安装,则这是非常有效的。 谱 需要指定簇的数量。这个算法适用于簇数量少时,在簇数量多时是不建议使用。对于两个簇,它解决了相似图形上的 归一化切割(normalised cuts)的凸松弛问题:
原创 2022-11-02 09:42:23
160阅读
The DBSCAN 算法将簇视为被低密度区域分隔的高密度区域。由于这个相当普遍的观点, DBSCAN发现的簇可以是任
原创 2022-11-02 09:45:25
290阅读
内平方和(within-cluster sum-of-squares)的标准(criterion)。该算法需要指定簇的数量。它可以很好地扩展到大量样本处在同一个空间。..
原创 2022-11-02 09:45:57
75阅读
AffinityPropagation AP是通过在样本对之间发送消息直到收敛的方式来创建。然后使用少量模范样本作为
原创 2022-11-02 09:46:00
91阅读
OPTICS算法与DBSCAN算法有许多相似之处,可以认为是DBSCAN算法将eps要求从一个值放宽到一个值范围的推广。OPTICS与DBSCAN的关键区别在于OPTICS算法建立了一个可达性图,它为每个样本分配了一个reachability_(可达性距离)和一个簇ordering_属性内的点(spot);这两个属性是在模型拟合时分配的,用于确定簇的成员关系。如果运行OPT
原创 2022-11-02 09:42:28
72阅读
前言:度量算法的性能不是简单的统计错误的数量或计算监督分类算法中的 precision (准确率)和 recall (召回率)。算法的评价指标有很多,本文主要是基于sklearn机器学习库,里面提供了一系列的度量函数,在这些度量函数里面,有的需要知道真实的样本类别,然后有的本来就没有真实的样本类别,甚至像DBSCAN这样的方法,连到底有几个类别都不确定,那怎么去评价的好坏呢,本
The Birch 为给定数据构建一棵 Characteristic Feature Tree (CFT,特征树)。 数据实质上是被有损压缩成一组 Cha
原创 2022-11-02 09:42:31
59阅读
层次(Hierarchical clustering)代表着一算法,这种类别的算法通过不断的合并或者分割内置来构建最终的层次可以被表示成树(或
原创 2022-11-02 09:45:19
213阅读
文章目录KMeans算法前言※ 与分类的区别※ sklearn.cluster: Clustering --- 模块一、KMeans工作原理1.定义2.算法过程3.结果分
原创 2022-08-12 11:56:57
1303阅读
(Clustering)简单来说就是一种分组方法,将一事物中具有相似性的个体分为一用的算法。具体步骤如下:从n...
原创 2022-12-18 01:06:50
1112阅读
''' 凝聚层次算法:首先假定每个样本都是一个独立的,如果统计出来的数大于期望的数,则从每个样本出发寻找离自己最近的另一个样本, 与之聚集,形成更大的,同时令总数减少,不断重复以上过程,直到统计出来的数达到期望值为止。 凝聚层次算法的特点: 1.数k必须事先已知。借助某些评
在工程应用中,用python手写代码来从头实现一个算法的可能性非常低,这样不仅耗时耗力,还不一定能够写出构架清晰,稳定性强的模型。更多情况下,是分析采集到的数据,根据数据特征选择适合的算法,在工具包中调用算法,调整算法的参数,获取需要的信息,从而实现算法效率和效果之间的平衡。而sklearn,正是这样一个可以帮助我们高效实现算法应用的工具包。Scikit learn 也简称 sklearn,
1.K-Means 算法: KMeans(n_clusters, init, n_init, max_iter, tol, precompute_distances, verbose, random_state, copy_x, n_jobs, algorithm)KMeans的主要参数有:    1) n_clusters: 即我们的k值,一般需要多试一些值以获得较好的
Classes1各种方法特性汇总:sklearn.cluster.KMeansfrom 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=No
  • 1
  • 2
  • 3
  • 4
  • 5