Questions tagged «clustering»

聚类分析是根据数据的相互“相似性”将数据划分为对象子集的任务,而无需使用诸如类标签之类的现有知识。[群集标准错误和/或群集样本应被标记为此类;不要为它们使用“集群”标签。]

2
时间序列和异常检测
我想建立一种算法来检测时间序列中的异常,并且我打算为此使用聚类。 为什么我应该使用距离矩阵而不是原始时间序列数据进行聚类?, 为了检测异常,我将使用基于密度的聚类(一种作为DBscan的算法),在这种情况下行得通吗?是否有在线版本的流数据? 我想在异常发生之前就对其进行检测,因此,使用趋势检测算法(ARIMA)是一个不错的选择吗?

3
将曼哈顿距离与Ward的集群间链接一起使用可以进行分层集群吗?
我正在使用层次聚类分析时间序列数据。我的代码是使用Mathematica实现的函数DirectAgglomerate[...],该函数根据以下输入生成层次聚类: 距离矩阵D 用于确定集群间链接的方法的名称。 我已经使用曼哈顿距离计算了距离矩阵D: d(x,y)=∑i|xi−yi|d(x,y)=∑i|xi−yi|d(x,y) = \sum_i|x_i - y_i| 其中和Ñ ≈ 150是数据点在我的时间序列数。i=1,⋯,ni=1,⋯,ni = 1,\cdots, nn≈150n≈150n \approx 150 我的问题是,可以将Ward的集群间链接与曼哈顿距离矩阵一起使用吗?一些资料表明,沃德的连接只能与欧几里得距离一起使用。 请注意,DirectAgglomerate[...]仅使用距离矩阵而不是原始观测值来计算Ward的链接。不幸的是,我不确定Mathematica是如何修改Ward的原始算法的(根据我的理解),该算法通过最小化相对于聚类均值计算的观测值平方误差之和而起作用。例如,对于由单变量观测值向量组成的聚类,Ward将平方的误差平方和表示为:ccc (∑j||cj−mean(c)||2)2(∑j||cj−mean(c)||2)2(\sum_j||c_j - mean(c)||_2)^2 (其他软件工具(例如Matlab和R)也仅使用距离矩阵来实现Ward的聚类,因此问题并非特定于Mathematica。)


1
如何计算纯度?
在聚类分析中,我们如何计算纯度?等式是什么? 我不是在寻找为我做的代码。 让ωkωk\omega_k是集群k和cjcjc_j BE等级j。 那么纯度实际上是准确的吗?看起来好像是在样本量上对每个聚类的真正分类类别的数量求和。 方程源 问题是输出和输入之间的关系是什么? 如果有真实正值(TP),真实负数(TN),错误正数(FP),错误负数(FN)。是?Purity=TPK(TP+TN+FP+FN)Purity=TPK(TP+TN+FP+FN)Purity = \frac{TP_K}{(TP+TN+FP+FN)}
15 clustering 

3
如何绘制聚类的数据输出?
我尝试对一组数据(一组标记)进行聚类,并得到2个聚类。我想用图形表示它。由于我没有(x,y)坐标,因此对表示有点困惑。 还要寻找这样做的MATLAB / Python函数。 编辑 我认为发布数据使问题更清晰。我有两个使用Python中的kmeans集群(不使用scipy)创建的集群。他们是 class 1: a=[3222403552.0, 3222493472.0, 3222491808.0, 3222489152.0, 3222413632.0, 3222394528.0, 3222414976.0, 3222522768.0, 3222403552.0, 3222498896.0, 3222541408.0, 3222403552.0, 3222402816.0, 3222588192.0, 3222403552.0, 3222410272.0, 3222394560.0, 3222402704.0, 3222298192.0, 3222409264.0, 3222414688.0, 3222522512.0, 3222404096.0, 3222486720.0, 3222403968.0, 3222486368.0, 3222376320.0, 3222522896.0, 3222403552.0, 3222374480.0, 3222491648.0, 3222543024.0, 3222376848.0, 3222403552.0, 3222591616.0, 3222376944.0, 3222325568.0, 3222488864.0, 3222548416.0, 3222424176.0, 3222415024.0, 3222403552.0, …

2
Dirichlet聚类流程:如何处理标签?
问:使用Dirichlet流程对数据进行聚类的标准方法是什么? 使用吉布斯采样时,采样簇会出现并消失。此外,由于后验分布对于聚类重标记是不变的,因此我们存在可识别性问题。因此,我们不能说哪个是用户集群,而是两个用户在同一个集群中(即)。p(ci=cj)p(ci=cj)p(c_i=c_j) 我们可以总结一下类的分配,以便如果是点的集群分配,那么现在不仅是而且是?cicic_iiiici=cjci=cjc_i=c_jci=cj=cj=...=czci=cj=cj=...=czc_i=c_j=c_j=...=c_z 这些是我找到的替代方案,也是为什么我认为它们不完整或被误导的原因。 (1)DP-GMM + Gibbs采样+基于对的混淆矩阵 为了将Dirichlet过程高斯混合模型(DP-GMM)用于聚类,我实现了本文,其中作者提出了使用Gibbs采样进行密度估计的DP-GMM 。 为了探讨集群性能,他们说: 由于在[MCMC]链上组件的数量发生了变化,因此需要形成一个混淆矩阵,显示每个数据对在整个链中分配给同一组件的频率,见图6。 缺点:这不是真正的“完整”群集,而是成对群集。该图看起来不错,因为我们知道了真实的簇,并据此安排了矩阵。 (2)DP-GMM + Gibbs采样+采样直到没有任何变化 我一直在搜索,发现有些人声称使用Gibbs采样器基于Dirichlet Process进行聚类。例如,这篇文章认为当聚类数量或均值没有更多变化时,链收敛,因此可以从那里获得汇总。 缺点:我不确定这是否允许,因为如果我没有记错的话: (a)在MCMC期间可能会有标签切换。 (b)即使在固定分布中,采样器也可以不时创建一些簇。 (3)DP-GMM + Gibbs采样+选择最可能划分的采样 在本文中,作者说: 在“老化”阶段之后,可以从Gibbs采样器中提取来自IGMM后分布的无偏样本。可以通过绘制许多此类样本并使用类别指标变量的联合可能性最高的样本来找到硬聚类。我们使用M. Mandel编写的经过修改的IGMM实现。 缺点:除非这是一个折叠的吉布斯采样器,我们仅对分配进行采样,否则我们可以计算而不是边际。(取而代之的是获得具有最高的状态,这是一个好习惯吗?)p (c)p (c,θ )p(c|θ)p(c|θ)p(\mathbf{c} | \theta)p(c)p(c)p(\mathbf{c})p(c,θ)p(c,θ)p(\mathbf{c}, \theta) (4)具有可变推论的DP-GMM: 我已经看到一些库使用变分推理。我不太了解变分推理,但我想您那里没有可识别性问题。但是,我想坚持使用MCMC方法(如果可能)。 任何参考将有所帮助。

2
k-均值vs k-中位数?
我知道有k均值聚类算法和k均值。一个使用均值作为聚类的中心,另一个使用中位数。我的问题是:什么时候/在哪里使用?

2
如何将数值数据分组为自然形成的“括号”?(例如收入)
以下内容描述了我要完成的工作,但是有可能使用其他问题说明来描述我的目标: 我想要 将以下数字分为几组,其中每组中数字的方差不会太大,并且各组平均值之间的差异也不会太小 将最终获得的分布与“完美”分布进行比较,并观察其与完美度有何“不同”。 莱曼对目标的解释 我正在尝试计算收入分配,并确定每个人口所在的“收入等级”。收入等级应该根据输入数据进行自我调整。 我的目标是最终衡量或计算收入等级之间的差异。我假设会有很多括号,并希望了解每个层之间的“距离”。 这是一个人口总数为20,总收入为3587的样本集的每小时收入样本: Population= 10 pop=2 population=5 population =3 10, 11,13,14,14,14,14,14,15,20, 40,50 ,90,91,92,93,94 999,999,900 我如何使用数学概念对数据进行分组,分类和分析,这些数据的作用类似于给定人口的收入分配? 在计算的最后,我要确定收入的分层分配,在这种情况下,理想的分配看起来像这样 (each person makes $10 more per hour than the previous; total is 3587) 89, 99, 109, 119, 129, 139, 149, 159, 169, 179, 189, 199, 209, 219, 229, 239, …

3
为什么我们使用k-means代替其他算法?
我研究了k均值,这就是我得到的:k均值是最简单的算法之一,它使用无监督学习方法来解决已知的聚类问题。它对于大型数据集非常有效。 但是,K均值也存在以下缺点: 对异常值和噪声具有很强的敏感性 不适用于非圆形的簇形状-簇的数量和初始种子值需要事先指定 通过局部最优的能力低。 k均值有什么好处,因为缺点似乎超出了k均值的好处。 请教我。

4
如何测量团簇的形状?
我知道这个问题的定义不明确,但是有些群集往往是椭圆形或位于较低维空间中,而其他群集则具有非线性形状(在2D或3D示例中)。 是否有任何衡量团簇非线性(或“形状”)的方法? 请注意,在2D和3D空间中,查看任何群集的形状都不是问题,但是在高维空间中,要说些有关形状的问题。特别是,是否有任何度量凸簇的方法? 许多其他集群问题启发了我这个问题,在这些问题中人们谈论集群,但没人能看到它们(在高维空间中)。此外,我知道2D曲线存在一些非线性度量。

3
有人可以解释动态时间扭曲以确定时间序列相似性吗?
我正在尝试掌握动态时间扭曲量度以将时间序列一起比较。我有三个时间序列数据集,如下所示: T1 <- structure(c(0.000213652387565, 0.000535045478866, 0, 0, 0.000219346347883, 0.000359669104424, 0.000269469145783, 0.00016051364366, 0.000181950509461, 0.000385579332948, 0.00078170803205, 0.000747244535774, 0, 0.000622858922454, 0.000689084895259, 0.000487983408564, 0.000224744353298, 0.000416449765747, 0.000308388157895, 0.000198906016907, 0.000179549331179, 9.06289650172e-05, 0.000253506844685, 0.000582896161212, 0.000386473429952, 0.000179839942451, 0, 0.000275608635737, 0.000622665006227, 0.00036075036075, 0.00029057097196, 0.000353232073472, 0.000394710874285, 0.000207555002076, 0.000402738622634, 0, 0.000309693403531, 0.000506521463847, 0.000226988991034, 0.000414164423276, 9.6590360282e-05, 0.000476689865573, 0.000377572210685, 0.000378967314069, 9.25240562546e-05, 0.000172309813044, 0.000447627573859, …

8
机器学习的“热门算法”是什么?
对于开始学习机器学习的人来说,这是一个幼稚的问题。这些天,我正在阅读Marsland的著作《机器学习:算法的观点》。我觉得它作为入门书籍很有用,但是现在我想进入高级算法,那些算法目前效果最好。我最感兴趣的是生物信息学:生物网络的聚类和生物序列中的模式发现,尤其是应用于单核苷酸多态性(SNP)分析。您能为我推荐一些评论或书籍吗?

3
是否有人使用或L .5度量进行聚类,而不是使用L 2? Aggarwal等人, 关于距离度量在高维空间中的令人惊讶的行为, 他说(2001年)大号1个大号1个L_1大号.5大号.5L_.5大号2大号2L_2 对于高维数据挖掘应用, L 1始终比欧几里德距离度量 L 2更可取 大号1个大号1个L_1大号2大号2L_2 并声称或L .1会更好。大号.5大号.5L_.5大号.1大号.1L_.1 使用或L .5的原因可能是理论上的或实验上的,例如对异常值/Kabán论文的敏感性,或基于真实或合成数据运行的程序(请复制)。一个例子或一张照片会帮助我的外行直觉。大号1个大号1个L_1大号.5大号.5L_.5 这个问题是鲍勃·杜兰特(Bob Durrant)对“ 当下就是最近的邻居今天有意义”的回答的后续行动 。正如他所说,的选择既取决于数据又取决于应用程序。尽管如此,真实经验的报告还是有用的。ppp 6月7日(星期二)添加的注释: 我偶然发现了“基于L1范数和相关方法的统计数据分析”,道奇(Dodge)编辑,2002年,454p,isbn 3764369205 —数十篇会议论文。 谁能分析iid指数特征的距离集中?指数的原因之一是 ; 另一个(非专家)是最大熵分布≥0;第三,某些真实数据集,尤其是SIFT,看起来大致呈指数形式。| exp−exp | 〜ëXp|ËXp-ËXp|〜ËXp|exp - exp| \sim exp≥≥\ge

9
用于集群的可视化软件
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 我想聚集〜22000点。许多聚类算法可以在较高质量的初始猜测下更好地工作。有哪些工具可以使我对数据的大致形状有所了解? 我确实希望能够选择自己的距离度量标准,因此我可以输入成对距离列表的程序就可以了。我希望能够做一些事情,例如在显示器上突出显示一个区域或群集,并获得该区域中哪些数据点的列表。 首选自由软件,但我已经拥有SAS和MATLAB。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.