我有一个数据集,我需要以一种方式对其进行聚类和显示,其中同一聚类中的元素应该看起来更接近。该数据集基于研究研究,具有大约16行(条目)和大约50个特征。我确实同意这不是一个理想的数据集,但不幸的是,这就是目前的情况。
以下是我采取的方法:
在对数据集进行规范化之后,我首先对其应用了KMeans。
同时,我还尝试使用TSNE将数据映射到2个维度,并将它们绘制在散点图上。根据我对TSNE的理解,该技术应该已经将相同集群中的项目放得更近了。然而,当我看散点图时,集群实际上到处都是。
散点图的结果可以在这里找到:https://imgur.com/ZPhPjHB
这是因为TSNE和KMeans本质上的工作方式不同吗?我是否应该只做TSNE并尝试标记集群(如果是,如何标记?)或者我应该使用TSNE输出以某种方式馈送到KMeans?
我真的是这个领域的新手,非常感谢你的建议!
再次提前感谢
编辑:如果我首先使用TSNE将维度减少到2,然后使用这些减少的维度使用KMeans进行聚类,则会发生相同的重叠
发布于 2018-02-04 16:38:34
TSNE和KMeans是有区别的。TSNE主要用于可视化,它试图在2D/3D空间(从更大的空间)上投影点,以保持距离(如果在更大的空间中,2个点很远,TSNE将尝试显示它)。
因此,TSNE不是一个真正的集群。这就是为什么你会得到奇怪的散点图。
对于TSNE,有时你需要之前应用PCA,但如果你的特征数量很大,就需要使用PCA。只是为了加快计算速度。
如前所述,尝试使用分层聚类或简单地生成更多行。
发布于 2018-12-16 21:14:35
应用tSNE和拟合k-means是您可以开始的基本内容之一。我会说考虑使用不同的f散度。
F-发散https://arxiv.org/pdf/1811.01247.pdf下的随机邻域嵌入
本文尝试了五种不同的f散度函数: KL,RKL,JS,CH (卡方),HL (Hellinger)。
这篇论文从精确度和召回率的角度讨论了哪种分歧强调了什么。
https://stackoverflow.com/questions/48550697
复制相似问题