k-means相关内容

k-means:每次执行相同的集群

是否有可能为特定数据集的每次执行获得相同的 kmeans 集群.就像对于随机值一样,我们可以使用固定种子.是否可以停止聚类的随机性? 解决方案 是的.在进行聚类之前,使用 set.seed 为随机值设置种子. 使用kmeans中的例子: set.seed(1)x 测试相等性: 相同(XX, YY)[1] 真 ..
发布时间:2022-01-07 23:40:09 其他开发

计算 k 均值的方差度量百分比?

在维基百科页面上,描述了一种肘部方法,用于确定在k-均值.构建-in scipy 方法 提供了一个实现,但我不确定我是否理解他们所说的失真是如何计算的. 更准确地说,如果你用图表来解释方差的百分比集群与集群数量的对比,第一个集群将添加很多信息(解释很多差异),但在某些时候边际增益会下降,在图中给出一个角度. 假设我有以下点及其关联的质心,计算此度量的好方法是什么? points = ..
发布时间:2022-01-07 23:11:16 Python

pytorch 如何通过 argmax 反向传播?

我正在 pytorch 中使用质心位置的梯度下降而不是期望最大化来构建 Kmeans.损失是每个点到其最近质心的平方距离之和.为了确定哪个质心离每个点最近,我使用 argmin,它在任何地方都不可微.然而,pytorch 仍然能够反向传播和更新权重(质心位置),在数据上提供与 sklearn kmeans 相似的性能. 任何想法这是如何工作的,或者我如何在pytorch中解决这个问题?pyt ..

scikit-learn 如何知道集群中的文档?

我是 python 和 scikit-learn 的新手,所以请耐心等待. 我从 k 表示聚类算法中获取了 k 表示聚类算法的源代码. 然后我使用 load_file 函数修改为在我的本地集上运行. 虽然算法终止了,但它并没有产生任何输出,比如哪些文档聚集在一起. 我发现km对象有“km.label"列出每个文档的质心 id 的数组. 它还具有带有“km.cluste ..
发布时间:2021-12-25 14:55:11 Python

sklearn:在测试数据集上计算 k-means 的准确度分数

我正在对具有 2 个集群的 30 个样本集进行 k 均值聚类(我已经知道有两个类).我将我的数据分成训练集和测试集,并尝试计算我的测试集的准确度分数.但是有两个问题:首先我不知道我是否真的可以为 k-means 聚类做到这一点(测试集的准确度分数).第二:如果允许我这样做,无论我的实现是对还是错.这是我尝试过的: df_hist = pd.read_csv('video_data.csv')y ..
发布时间:2021-12-25 14:44:04 Python

Python scikit-learn 每次运行后聚类结果的变化

我有一堆句子,我想使用 scikit-learn 谱聚类对它们进行聚类.我已经运行了代码并得到了没有问题的结果.但是,每次运行它我都会得到不同的结果.我知道这是启动的问题,但我不知道如何解决它.这是我在句子上运行的代码的一部分: vectorizer = TfidfVectorizer(norm='l2',sublinear_tf=True,tokenizer=tokenize,stop_wor ..
发布时间:2021-12-25 14:42:05 Python

Scikit-learn:如何在一维数组上运行 KMeans?

我有一个介于 0 和 1 之间的 13.876(13,876) 个值的数组.我想仅将 sklearn.cluster.KMeans 应用于此向量,以查找对值进行分组的不同集群.但是,KMeans 似乎适用于多维数组而不是一维数组.我想有一个技巧可以让它工作,但我不知道如何.我看到了 KMeans.fit() 接受 “X : 类数组或稀疏矩阵,shape=(n_samples, n_features ..
发布时间:2021-12-25 14:37:06 AI人工智能

具有选定初始中心的 k 均值

我正在尝试使用选定的初始质心进行 k 均值聚类.它说这里指定您的初始中心: init : {‘k-means++’, ‘random’ or an ndarray} 如果一个 ndarray 被传递,它应该是形状 (n_clusters, n_features) 并给出初始中心. 我的 Python 代码: X = np.array([[-19.07480000, -8.536],[2 ..
发布时间:2021-12-25 14:31:41 Python

如何获取每个集群中的样本?

我正在使用 sklearn.cluster KMeans 包.完成聚类后,如果我需要知道将哪些值组合在一起,我该怎么做? 假设我有 100 个数据点,而 KMeans 给了我 5 个集群.现在我想知道集群 5 中有哪些数据点.我该怎么做. 是否有一个函数可以给出集群 id 并列出该集群中的所有数据点? 解决方案 我有一个类似的需求,我正在使用 Pandas 创建一个新的数据框, ..
发布时间:2021-12-25 14:28:57 Python

绘制文档 tfidf 二维图

我想为我的句子列表绘制一个二维图形,其中 x 轴作为术语,y 轴作为 TFIDF 分数(或文档 ID).我使用 scikit learn 的 fit_transform() 来获取 scipy 矩阵,但我不知道如何使用该矩阵来绘制图形.我正在尝试绘制一个图,以了解使用 kmeans 对我的句子进行分类的效果如何. 这是fit_transform(sentence_list)的输出: ( ..
发布时间:2021-12-25 14:27:56 Python

在 MATLAB 中查询 k-means 聚类

我有大量矩阵形式的数据.我已经在 MATLAB R2013a 中使用 k 均值聚类对其进行了聚类.我想要形成的每个簇的质心的确切坐标..是否可以使用任何公式或其他任何东西? 我想找出每个簇的质心,这样每当有新数据到达矩阵时,我就可以计算它与每个质心的距离,从而找出新数据所属的簇 我的数据本质上是异构的.所以,很难找出每个集群的数据的平均值.所以,我正在尝试编写一些代码来自动打印质心位置 ..

将新数据点分配给内核 k-means 中的集群(R 中的 kernlab 包)?

我有一个关于 R 的 kernlab 包中的 kkmeans 函数的问题.我是这个包的新手,如果我在这里遗漏了一些明显的东西,请原谅我. 我想将一个新数据点分配给一组集群中的一个集群,这些集群是使用内核 k-means 和函数“kkmeans"创建的.对于常规聚类,可以通过计算新数据点和聚类质心之间的欧几里德距离来实现这一点,并选择质心最近的聚类.在内核 k-means 中,必须在特征空间中 ..
发布时间:2021-12-14 09:56:47 AI人工智能

ValueError: Number of labels is 1. 有效值为 2 到 n_samples - 1 (inclusive) 当使用剪影_score

我正在尝试计算 silhouette score,因为我找到了要创建的最佳聚类数,但收到错误消息: ValueError: Number of labels is 1. 有效值为 2 to n_samples - 1 (inclusive) 我无法理解这样做的原因.这是我用来聚类和计算 silhouette score 的代码. 我读取了包含要聚类的文本的 csv,并对 n 聚类值运行 ..
发布时间:2021-12-14 09:56:38 AI人工智能

KMeans 的不平衡因子?

编辑:这个问题的答案在:Spark 中的总和变坏 在计算 Kmeans 的成本中,我们看到了如何计算他的 KMeans 的成本模型.我想知道我们是否能够计算出不平衡因子? 如果Spark没有提供这样的功能,有什么简单的方法可以实现吗? 我找不到不平衡因子的参考,但它应该类似于 Yael 的 unbalanced_factor(我的评论): //@hist:分配给一个簇的点数// ..
发布时间:2021-12-14 09:46:39 AI人工智能

Matlab:K-means 聚类

我有一个 A(369x10) 矩阵,我想将它分成 19 个簇.我用这个方法 [idx ctrs]=kmeans(A,19) 产生idx(369x1) 和 ctrs(19x10) 我明白了这一点.我在 A 中的所有行都聚集在 19 个集群中. 现在我有一个数组 B(49x10).我想知道这个 B 的行在给定的 19 个簇中对应的位置. 在 MATLAB 中怎么可能? 提前 ..
发布时间:2021-12-14 09:42:40 AI人工智能

如何实现 K-Means++ 算法?

我无法完全理解 K-Means++ 算法.我对第一个 k 质心是如何选择的很感兴趣,即初始化,其余的就像原始 K 均值算法. 使用的概率函数是基于距离还是基于高斯? 同时选择距离最远的点(来自其他质心)作为新质心. 我将欣赏一步一步的解释和一个例子.维基百科中的那个不够清楚.此外,一个非常好的注释源代码也会有所帮助.如果您使用的是 6 个数组,请告诉我们哪个是用于什么的. 解决 ..

是否可以使用 scikit-learn K-Means Clustering 指定您自己的距离函数?

是否可以使用 scikit-learn K-Means Clustering 指定您自己的距离函数? 解决方案 这里有一个小的 kmeans,它使用 20 多个距离中的任何一个scipy.spatial.distance 或用户函数. 欢迎评论(到目前为止只有一个用户,还不够);特别是,您的 N、dim、k、度量是多少? #!/usr/bin/env python# kmeans.py ..

在 Python 中使用 scikit-learn kmeans 聚类文本文档

我需要实现 scikit-learn 的 kMeans 用于聚类文本文档.示例代码 工作正常,但是将大约 20 个新闻组数据作为输入.我想使用相同的代码来聚类文档列表,如下所示: documents = [“实验室 abc 计算机应用的人机界面",《用户对计算机系统响应时间意见的调查》,《EPS用户界面管理系统》,《EPS的系统与人体系统工程测试》,“用户感知响应时间与错误测量的关系",《随机二 ..
发布时间:2021-12-08 12:33:57 Python