无监督学习
文章平均质量分 81
ASS-ASH
人工智能,机器学习,深度学习,自然语言处理,情感分析
展开
-
关于DBSCAN聚类算法
基本概念DBSCAN(Density-Based Spatial Clustering of Application with Noiso):具有噪声的基于密度的聚类方法。从名字中就可以看出来,簇划分是根据样本密度来决定的。在了解算法具体过程之前,需要先了解一下相关的基本概念:ϵ-邻域:样本x以ϵ为半径的范围内包含的所有样本的集合核心对象:样本x的ϵ-领域内样本数大于阈值MinPts,则x为核心对象直接密度可达:若某点p在点q的ϵ-邻域内,且q是核心点,则p由q直接密度可达。密度原创 2022-01-29 22:28:28 · 4898 阅读 · 0 评论 -
机器学习聚类算法谱聚类拉普拉斯降维
谱聚类的主要思想就是一个拉普拉斯降维,将思维转化为图的方式求解而已,没有那么高深莫测,希望我的理解能对大家有所帮助概念Spectral Clustering(谱聚类)是一种基于图论的聚类方法,它能够识别任意形状的样本空间且收敛于全局最有解,其基本思想是利用样本数据的相似矩阵进行特征分解后得到的特征向量进行聚类。谱聚类的目的便是要找到一种合理的分割图的方法,使得分割后形成若干个子图,连接不同子图的边的权重(相似度)尽可能低,同子图内的边的权重(相似度)尽可能高。通过上面的图就很容易理解,我.转载 2021-11-04 16:31:13 · 2636 阅读 · 0 评论 -
scikit-learn库中聚类算法自定义距离度量方式
scikit-learn是非常漂亮的一个机器学习库,在某些时候,使用这些库能够大量的节省你的时间,至少,我们用Python,应该是很难写出速度快如斯的代码的.scikit-learn官方出了一些文档,但是个人觉得,它的文档很多东西都没有讲清楚,它说算法原理的时候,只是描述一下,除非你对这种算法已经烂熟于心,才会对它的描述会心一笑,它描述API的时候,很多时候只是讲了一些常见用法,一些比较高级的用法就语焉不详,虽然有很多人说,这玩意的文档写得不错,但是我觉得特坑.所以这篇博文,会记录一些我使用这个库的时候转载 2021-10-24 21:28:56 · 4468 阅读 · 8 评论 -
三种常用聚类距离度量公式详解
由上述公式可知,明考斯基距离是欧氏距离的拓展,即当h =2时,明考斯基距离就成为了欧氏距离。以上的三种相似度计算方法都常用于文本之间的距离计算中。其中,欧氏距离应用更为广泛,因为其算法原理更为简单,它计算的是多维空间中两点之间的直线距离,而余弦夹角相似度则是计算多维向量空间中两个向量之间的夹角大小,表达相似性的方法要更为直观简洁、易懂易操作,故而在文本挖掘研究中更为常用。...原创 2021-10-24 21:23:43 · 1534 阅读 · 0 评论 -
K-means聚类及距离度量方法小结
基本概念不再介绍,直接进行关键点的总结叙述。kmeans算法又名k均值算法,K-means算法中的k表示的是聚类为k个簇,means代表取每一个聚类中数据值的均值作为该簇的中心,或者称为质心,即用每一个的类的质心对该簇进行描述。其算法思想大致为:先从样本集中随机选取 k个样本作为簇中心,并计算所有样本与这 k个“簇中心”的距离,对于每一个样本,将其划分到与其距离最近的“簇中心”所在的簇中,对于新的簇计算各个簇的新的“簇中心”。根据以上描述,我们大致可以猜测到实现kmeans算法的主要四点:原创 2021-10-24 21:19:33 · 23176 阅读 · 1 评论 -
用scikit-learn学习主成分分析(PCA)
1. scikit-learn PCA类介绍 在scikit-learn中,与PCA相关的类都在sklearn.decomposition包中。最常用的PCA类就是sklearn.decomposition.PCA,我们下面主要也会讲解基于这个类的使用的方法。 除了PCA类以外,最常用的PCA相关类还有KernelPCA类,在原理篇我们也讲到了,它主要用于非线性数据的降维,需要用到核技巧。因此在使用的时候需要选择合适的核函数并对核函数的参数进行调参。 另外一个常用的PCA相关类转载 2021-10-11 17:06:36 · 329 阅读 · 0 评论 -
python 聚类_10种Python聚类算法完整操作示例(建议收藏)
聚类或聚类分析是无监督学习问题。它通常被用作数据分析技术,用于发现数据中的有趣模式,例如基于其行为的客户群。有许多聚类算法可供选择,对于所有情况,没有单一的最佳聚类算法。相反,最好探索一系列聚类算法以及每种算法的不同配置。在本教程中,你将发现如何在 python 中安装和使用顶级聚类算法。完成本教程后,你将知道:聚类是在输入数据的特征空间中查找自然组的无监督问题。 对于所有数据集,有许多不同的聚类算法和单一的最佳方法。 在 scikit-learn 机器学习库的 Python 中如何实现、适配和转载 2021-10-13 22:02:02 · 15160 阅读 · 2 评论 -
用scikit-learn学习谱聚类
在谱聚类(spectral clustering)原理总结中,我们对谱聚类的原理做了总结。这里我们就对scikit-learn中谱聚类的使用做一个总结。1. scikit-learn谱聚类概述 在scikit-learn的类库中,sklearn.cluster.SpectralClustering实现了基于Ncut的谱聚类,没有实现基于RatioCut的切图聚类。同时,对于相似矩阵的建立,也只是实现了基于K邻近法和全连接法的方式,没有基于ϵϵ-邻近法的相似矩阵。最后一步的聚类方法则提供了两种,转载 2021-10-11 16:34:35 · 469 阅读 · 0 评论 -
用scikit-learn学习BIRCH聚类
1. scikit-learn之BIRCH类 在scikit-learn中,BIRCH类实现了原理篇里讲到的基于特征树CF Tree的聚类。因此要使用BIRCH来聚类,关键是对CF Tree结构参数的处理。 在CF Tree中,几个关键的参数为内部节点的最大CF数B,叶子节点的最大CF数L,叶节点每个CF的最大样本半径阈值T。这三个参数定了,CF Tree的结构也基本确定了,最后的聚类效果也基本确定。可以说BIRCH的调参就是调试B,L和T。 至于类别数K,此时反而是可选的..转载 2021-10-11 10:55:31 · 286 阅读 · 0 评论 -
BIRCH聚类算法原理
在K-Means聚类算法原理中,我们讲到了K-Means和Mini Batch K-Means的聚类原理。这里我们再来看看另外一种常见的聚类算法BIRCH。BIRCH算法比较适合于数据量大,类别数K也比较多的情况。它运行速度很快,只需要单遍扫描数据集就能进行聚类,当然需要用到一些技巧,下面我们就对BIRCH算法做一个总结。1. BIRCH概述 BIRCH的全称是利用层次方法的平衡迭代规约和聚类(Balanced Iterative Reducing and Clustering Using H转载 2021-10-11 16:13:50 · 509 阅读 · 0 评论 -
谱聚类(spectral clustering)原理总结
谱聚类(spectral clustering)是广泛使用的聚类算法,比起传统的K-Means算法,谱聚类对数据分布的适应性更强,聚类效果也很优秀,同时聚类的计算量也小很多,更加难能可贵的是实现起来也不复杂。在处理实际的聚类问题时,个人认为谱聚类是应该首先考虑的几种算法之一。下面我们就对谱聚类的算法原理做一个总结。1. 谱聚类概述 谱聚类是从图论中演化出来的算法,后来在聚类中得到了广泛的应用。它的主要思想是把所有的数据看做空间中的点,这些点之间可以用边连接起来。距离较远的两个点之间的边权重值较原创 2021-10-11 16:38:39 · 370 阅读 · 0 评论 -
主成分分析(PCA)原理总结
主成分分析(Principal components analysis,以下简称PCA)是最重要的降维方法之一。在数据压缩消除冗余和数据噪音消除等领域都有广泛的应用。一般我们提到降维最容易想到的算法就是PCA,下面我们就对PCA的原理做一个总结。1. PCA的思想 PCA顾名思义,就是找出数据里最主要的方面,用数据里最主要的方面来代替原始数据。具体的,假如我们的数据集是n维的,共有m个数据(x(1),x(2),...,x(m))(x(1),x(2),...,x(m))。我们希望将这m个数据的维原创 2021-10-11 17:19:08 · 2898 阅读 · 0 评论 -
K-Means聚类算法原理
K-Means算法是无监督的聚类算法,它实现起来比较简单,聚类效果也不错,因此应用很广泛。K-Means算法有大量的变体,本文就从最传统的K-Means算法讲起,在其基础上讲述K-Means的优化变体方法。包括初始化优化K-Means++, 距离计算优化elkan K-Means算法和大数据情况下的优化Mini Batch K-Means算法。1. K-Means原理初探 K-Means算法的思想很简单,对于给定的样本集,按照样本之间的距离大小,将样本集划分为K个簇。让簇内的点尽量紧密的连在一转载 2021-10-11 16:12:01 · 2346 阅读 · 0 评论 -
SKlearn里面的K-means使用详解
在K-Means聚类算法原理中,我们对K-Means的原理做了总结,本文我们就来讨论用scikit-learn来学习K-Means聚类。重点讲述如何选择合适的k值。1. K-Means类概述 在scikit-learn中,包括两个K-Means的算法,一个是传统的K-Means算法,对应的类是KMeans。另一个是基于采样的Mini Batch K-Means算法,对应的类是MiniBatchKMeans。一般来说,使用K-Means的算法调参是比较简单的。 用KMeans类的话,转载 2021-09-23 15:34:34 · 35871 阅读 · 1 评论 -
无监督学习 - 聚类度量指标
来源:简书(FesonX)简介首先必须明确,分类和聚类是两个不同的东西。分类的目的是确认数据属于哪个类别。分类必须有明确的边界,或者说分类是有标准答案的。通过对已知分类数据进行训练和学习,找出已知分类特征,再对未知分类的数据进行分类。因此分类通常是有监督学习。聚类的目的是找出数据间的相似之处。聚类对边界的要求不是很高,是开放性命题。聚类只使用无标签数据,通过聚类分析将数据聚合成几个,因此采用无监督学习算法。现在的做法是先用无监督聚类对数据进行聚类,把聚类效果结合实际进行评估,然后小部分数据进行原创 2021-09-12 19:28:12 · 1160 阅读 · 0 评论