algorithm - 高维聚类 + 一些基本的东西

标签 algorithm cluster-analysis bigdata dimension

关闭。这个问题需要更多focused .它目前不接受答案。












想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post .

7年前关闭。




Improve this question




我一直在研究支持向量机(SVM),最近开始阅读关于聚类的文章。在使用 SVM 时,我们不需要担心数据的维度大小,但是,我了解到在聚类中,由于“维度诅咒”,维度大小是一个大问题。此外,稀疏性和数据大小也会极大地影响您选择的聚类算法。所以我有点理解聚类没有“最佳算法”,这完全取决于数据的性质。

话虽如此,我想问一些关于聚类的非常基本的问题。

  • 当人们说“高维”时,他们具体是什么意思?? 100d是高维吗??还是这取决于您拥有的数据类型?
  • 我在这个网站上看到过类似的答案,“在 100 维的数据上使用 k-means 是非常常见的”,如果这是真的,这是否适用于使用与 k 相同的距离度量的其他聚类算法-方法??
  • Rui Xu等人在论文“Survey of Clustering Algorithms”(http://goo.gl/WQyuxo)的pp.649中,表格显示CURE具有“处理高维数据的能力”,不知道有没有人有关于他们谈论的维度有多高的想法。
  • 如果我想对从初始大数据中随机抽取的足够大小的高维数据进行聚类,应该使用什么样的算法?我知道基于密度的算法(例如 DBSCAN)在随机采样下表现不佳。
  • 谁能告诉我 CURE 在高维数据上的表现如何?直觉上,我猜考虑到“维数的治愈”,我猜CURE的表现不是很好,但是,如果有一些详细的结果就太好了。
  • 是否有任何网站/论文/教科书解释聚类算法的优缺点?我看过一些关于基本算法优缺点的论文,即 k-means、层次聚类、DBSCAN 等,但想了解更多其他算法,如 CURE、CLIQUE、CHAMELEON 等。

  • 抱歉一下子问这么多问题!!
    如果有人能回答我的任何一个问题,那就太棒了。另外,如果我的问题陈述不当或问了一个完全没有意义的问题,请不要犹豫告诉我。
    如果有人知道详细介绍这些主题的关于聚类的优秀教科书/调查论文,请告诉我!!
    先感谢您。

    最佳答案

    您可能对本次调查感兴趣:

    Kriegel, H. P., Kröger, P., & Zimek, A. (2009).
    Clustering high-dimensional data: A survey on subspace clustering, pattern-based clustering, and correlation clustering.
    ACM Transactions on Knowledge Discovery from Data (TKDD), 3(1), 1.



    其中一位作者编写了 DBSCAN,因此它可能会帮助您阐明 DBSCAN 问题。

    100维数据可以是高维数据。如果不是稀疏的话。对于 NLP 人来说,100d 小得可笑,但他们的数据很特别。它本质上源自二进制性质(单词存在或不存在),因此它实际上每个维度的信息不到 1 位……如果您有密集的 100 维数据,通常会遇到麻烦。

    同一作者的相关/后续调查中有一些不错的数字:

    Zimek, A., Schubert, E., & Kriegel, H. P. (2012).
    A survey on unsupervised outlier detection in high‐dimensional numerical data.
    Statistical Analysis and Data Mining, 5(5), 363-387.



    他们已经很好地分析了这些数据的距离函数的行为。本质是:
    高维数据可能很难——也可能很容易;这一切都取决于信噪比。如果你只有携带信号的维度,额外的维度可以让你的问题变得更容易。如果额外的维度让人分心,事情就会崩溃。

    这也可以解释为什么 SVM 的“内核技巧”有效——它并没有真正添加信息内容;增加的维度只是虚拟的,而不是内在的。您有更大的搜索和解决方案空间;但是你的数据仍然在这个空间内的低维流形上。

    k-means 结果在高维数据中往往变得毫无意义。在许多情况下,它们仍然“足够好”;因为通常质量并不重要,任何凸分区都可以(例如,图像相似性的词袋方法似乎并没有通过“更好的”k 均值聚类得到显着改善)

    CURE,它似乎也使用平方和(如 k 均值)应该遇到同样的问题。对于大数据,所有平方和值变得越来越相似(即任何分区都和其他分区一样好)。

    是的,有很多教科书、调查和研究试图比较聚类算法。但最终涉及的因素太多了:你的数据是什么样子的,你是如何预处理的,你有没有精心选择和适当的距离度量,你的实现有多好,你有没有索引加速一些算法等 - 没有经验法则;你将不得不尝试一些事情。

    关于algorithm - 高维聚类 + 一些基本的东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23391589/

    相关文章:

    c - 使用Floyd-Warshall算法确定 "odd"矩阵

    java - 对于这种特殊情况,我应该使用什么数据结构?

    algorithm - Matlab 聚类 : not working properly over large set of data

    hadoop - HIVE 或 PIG 作为 NETEZZA 的替代品

    使过亮(HDR)颜色变为白色的算法?

    c - C 中用于将多个正则表达式与单个目标字符串进行匹配的库/算法是什么?

    python - 使用 sklearn.AgglomerativeClustering 绘制树状图

    java - 从网页簇中提取最佳图像

    java - 在 Java 中处理超过 20 亿个元素的大数组

    hadoop - Hive 中是否有字符串数据类型的最大大小?