首页 > 教育学习 > 为什么 > 机器学习中,有没有给定的阈值返回聚类结果的算法?

机器学习中,有没有给定的阈值返回聚类结果的算法?
2012-01-19 17:30:49   来源:   点击:

    机器学习中,有没有给定的阈值返回聚类结果的算法?聚类算法中,多级聚类和k-means聚类都不能满足我的需求。想寻找一种聚类方法,根据参数返回不同聚类结果的算法。有没有一种算法,可以提供一个相似度参数作为聚类阈值,阈值越大(越接近1),返回的聚类类别数越多,越接近输入数据的数量,反之,阈值越小(越接近0),返回的类别数量越少

    4 个答案

    • 答案 1:

      这里竟然也开始问专业问题了,内牛满面。赶紧抢答一下。。。你说的相似度问题,绝大多数算法是从Rate Distortion Theory入手(Elements of Information Theory 2nd Ed. Chapter 13)。在这一框架下,相似度是Distortion rate,其核心思想是在给定一定失真度的前提下,如何最优对信号编码。这样,相似度误差就可以在信息论框架下有一个很好的解释了。能想到的最直接Paper是Bialek@Princeton组前几年的一篇PNASpnas.org/content...应该算是直接解决了你的问题。但是,对于Rate Distortion Theory我目前看到的最好的在Machine Learning上的演绎,是马毅@UIUC他们组的这篇,虽然这个文章本身并不是直接探讨clustering的:perception.csl.uiuc.edu/coding...
    • 答案 2:

      这个问题,我没太看明白。感觉上楼主期望得到一种能根据参数调整输出类别数目的方法。我觉得有一种方法也许可以满足楼主的要求,它就是on-line kmean算法:具体步骤如下:输入:相似度参数阈值,所有样本输出:类别数目和类别参数(中心,如果需要可以有协方差阵)1,初始化类别集合为空;2,对于输入的一个样本,计算其与所有已有类别中心的相似度(为距离大小的反向函数),找到最大相似度和对应的已有类别(如果已有类别集合为空,则认为该相似度为无穷大),如果相似度大于输入的相似度参数阈值,则认为该样本属于该类,更新该类别的中心(以及协方差),如果相似度小于阈值,则认为该样本不属于任何类,则用其初始化一个新类别(该样本即为类别中心);3,对所有样本进行2的处理,最终得到N个类别;4,对上述类别进行去噪处理,将属于该类别的样本数目小于设定阈值的类别删除,剩下的结果即为最终聚类结果;如果相似度阈值大,则要求严格,每类的覆盖范围就小,最终得到的类别数目会多;繁之,相似度阈值小,要求宽松,每类的覆盖范围大,最终得到的类别数目会少。希望这个回答会对你有所启发。
    • 答案 3:

      可能是我没看懂LZ的意思,我理解的是包括k-means在内的很多经典的clustering算法都可以加入参数啊。本身带参数的也有,基于密度的聚类。拿k-means来说,你首先要解决的问题是k的选取,这里就可以加入参数了啊;而在迭代的过程中,每次分配样本的时候,也可以加入参数啊。不一定要选一个现成的算法啊,那些经典的算法都是通用解,但往往不是具体场景下的最优解。你在理解思想过后,应该根据自己的应用加入一些特化的东西。
    • 答案 4:

      基于图的聚类有大量满足你需求的算法,最简单的做法是:1、计算出点与点之间的相似度(为减少存储空间,低于某个阈值的可以忽略),以相似值为权把点链接成图。2、设定一个阈值alpha,把低于阈值的边砍掉,有边连接的子图作为一个聚类一般来说,alpha越大,子图越多,分出来的类就越多

相关热词搜索:

上一篇:翻译英文英语翻译
下一篇:目前国内的 SEO 为什么没有一个行业认证的完整体系?