24小时热门版块排行榜    

CyRhmU.jpeg
查看: 2070  |  回复: 9

xmcrobbie

银虫 (小有名气)

[求助] kmeans聚类的问题请教!已有2人参与

每类训练样本约200多不等,如果只选用其中的两类进行kmeans自动聚类,准确率会相对的高。但是如果把所有的18类样本进行自动聚类。正确率不到3%。 难道样本类型越多,每类所需要的样本个数越多码?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

youth0826

至尊木虫 (著名写手)

weibo.com/138147022

【答案】应助回帖

感谢参与,应助指数 +1
kmeans只是无监督聚类,没有正确率的说法。。。

[ 发自手机版 http://muchong.com/3g ]
QQ群:202610705,关注计算机视觉,模式识别,模式分析,机器学习,人工智能,统计学习,图像处理等,欢迎加入!
2楼2014-01-09 07:08:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xmcrobbie

银虫 (小有名气)

引用回帖:
2楼: Originally posted by youth0826 at 2014-01-09 07:08:41
kmeans只是无监督聚类,没有正确率的说法。。。

kmeans是无监督聚类,但是把聚类结果和它的label对照一下不就可以知道正确率了吗?
3楼2014-01-09 08:02:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fhjianke

金虫 (初入文坛)

什么是无监督什么是监督你分清楚了么。。。
4楼2014-01-09 10:23:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xmcrobbie

银虫 (小有名气)

引用回帖:
4楼: Originally posted by fhjianke at 2014-01-09 10:23:29
什么是无监督什么是监督你分清楚了么。。。

没有参照,你怎么知道自动聚类算法的好坏,纯粹靠测试样本吗?我觉得没必要被名词套住!

[ 发自小木虫客户端 ]
5楼2014-01-09 11:10:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

摘星者

铁杆木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
xmcrobbie: 金币+5, ★★★★★最佳答案 2014-01-09 16:57:13
首先,k-means(KM)确实有准确率的说法,这是一种外部指标。所谓的无监督不过是指在聚类过程中没用使用到标签之类的信息而已。

然后是楼主的问题。我没有看过你使用的是什么样子的数据集。但是把所有的18类样本进行自动聚类正确率下降并不奇怪。你说的自动聚类是指不指定聚类数吗?要算法自己找到合适的聚类数并不容易。即便指定聚类数,类别多了正确率也容易下降。

KM只适用于每类样本在空间中分布呈超球体且超球中心间的距离明显大于超球半径的情况。当这些条件不满足的时候,很容易出现错分。楼主仅仅选择两类样本,这些样本在空间中的分布比较容易满足KM的要求,故准确率较高。18类样本放在一起,相互影响之下准确率自然就低了。

Liu Y, Li Z, Xiong H, et al. Understanding of internal clustering validation measures[C]//Data Mining (ICDM), 2010 IEEE 10th International Conference on. IEEE, 2010: 911-916.
还有一篇类似的论文在IEEE trans. 上,楼主不妨看看,也许对你了解这个问题有帮助。
6楼2014-01-09 14:39:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xmcrobbie

银虫 (小有名气)

引用回帖:
6楼: Originally posted by 摘星者 at 2014-01-09 14:39:09
首先,k-means(KM)确实有准确率的说法,这是一种外部指标。所谓的无监督不过是指在聚类过程中没用使用到标签之类的信息而已。

然后是楼主的问题。我没有看过你使用的是什么样子的数据集。但是把所有的18类样本进 ...

太感谢了,这是最有价值的回复,我只是想用这种办法看看聚类的结果和期待的结果差别大不大!

[ 发自小木虫客户端 ]
7楼2014-01-09 16:56:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fhjianke

金虫 (初入文坛)

引用回帖:
5楼: Originally posted by xmcrobbie at 2014-01-09 11:10:34
没有参照,你怎么知道自动聚类算法的好坏,纯粹靠测试样本吗?我觉得没必要被名词套住!
...

我只是觉得,直接拿样本丢到k-means里面做,不同类样本之间的区分程度随着种类增多直觉上就会下降,样本在这个场景里面根本没起到监督学习里面样本的作用,扩大样本个数也应该不会有啥用。。。
楼下说的k-means的适应场景特点之类的,倒是确实没有考虑到,学习了~
8楼2014-01-10 13:45:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

丁云

铁虫 (小有名气)

引用回帖:
6楼: Originally posted by 摘星者 at 2014-01-09 14:39:09
首先,k-means(KM)确实有准确率的说法,这是一种外部指标。所谓的无监督不过是指在聚类过程中没用使用到标签之类的信息而已。

然后是楼主的问题。我没有看过你使用的是什么样子的数据集。但是把所有的18类样本进 ...

你好,摘星者,我想问一下,在做k-means聚类的时候,是直接对原始数据直接聚类呢,还是说在需要进行第一步:归一化 第二步:主成分分析  之类的操作,取得的效果会更佳呢?还是说要进行聚类的原始矩阵有什么符合的要求才能进行k-means呢??
做难事必有所得!
9楼2016-03-15 10:54:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

摘星者

铁杆木虫 (正式写手)

引用回帖:
9楼: Originally posted by 丁云 at 2016-03-15 10:54:11
你好,摘星者,我想问一下,在做k-means聚类的时候,是直接对原始数据直接聚类呢,还是说在需要进行第一步:归一化 第二步:主成分分析  之类的操作,取得的效果会更佳呢?还是说要进行聚类的原始矩阵有什么符合的 ...

首先是归一化的问题。归一化是因为各个属性的取值区间大小不一致,而km算法是基于距离的聚类方法。因此,在不为属性添加权值的情况下,如果有个别属性的区间跨度明显大于其它属性,那么这些属性将成为距离的主要因素,导致其它属性被忽略。归一化使所有属性能公平地比较,所以聚类前进行归一化是有理由的。归一化有可能能使得聚类算法得到更好的效果,但不是绝对的。结合km的适用情况,如果在归一化前样本的分布呈超球体,归一化后可能就会变成一个椭球体,聚类效果就可能变差。反过来,归一化前呈椭球体分布,归一化后有可能变成超球体,聚类效果就可能变好。因此,不能一概而论。

主成分分析的问题。这是一种降维方法,被提取的主成分是样本分布差异大的方向。主成分分析法不是必须的,一般会在需要降维的时候使用。虽然主成分分析法的降维效果相当出色,但也有很明显的不足。通过主成分分析获取的新属性会失去原有的现实意义,也就是说,属性的可解释性会降低。如果在你的应用中属性的可解释性是重要的,为属性添加权值,即子空间聚类,是一个可以考虑的选择。无论选择哪一种方法,都能一定程度上去除冗余、不相关属性对聚类的影响,有可能提高聚类效果。但是,这是从排除干扰的角度上得到的结论,虽然这两种方法都有提高聚类效果的研究成果,并没有严格证明这种提升是绝对的,至少我没有看到这样的推导。

只要数据集是通过数据矩阵的方式给出,即给出各样本在各个属性上的值,就可以使用km算法。然而,要取得好的聚类效果,最理想的状态是各类样本分布呈超球体,且两个超球体相互远离(球心距离大于两个超球体中半径较大一个的半径的两倍)。这是因为,km算法对样本进行划分时实际上是对样本空间进行分割,分割面通过聚类中心连心线中点且与连心线垂直。显然,对于两个聚类中心间的样本空间而言,这种分割是均匀的。在上述的分布下,各类样本不会跨越分割面导致误分。当然,这不是不导致误分的必要条件。只要各类样本相隔足够远,分布不是超球体也是可以的。
10楼2016-03-16 22:32:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 xmcrobbie 的主题更新
信息提示
请填处理意见