全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2877 2
2014-11-04
请假各位大侠:

1. 如何确定聚类结果是否恰当,有些情况下ccc psf表现良好,但是做一些特征分析时,发现它们分的并不是很开;

2. 我用了k-means和系统聚类时,做过两个数据集。总是有一类的样本数量特别多(几万个,占80%+),而其它类别可能只有零星十几个,一千多个,请问该如何处理呢? 若认为那几十个属于极端值,剔除再聚。 但是我剔除之后,又会出现新的“几十个”极端值。我纳入的变量比较多,可能有20几个,是不是太多了?


困扰好久了,网上也没有搜到合适的资料,只能拜托坛友了。非常感谢!感谢!感谢!   


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2014-11-5 05:19:08
(1)聚类结果评价
有很多指标,你自己上网搜具体的做法。
RMSSTD:这个指标是测量各群内对象的相似性程度,越高越好。
R-Square:量测聚类群体间的差异,相异越高越好。
还有一些描述聚类群体形状的参数不记得了,但前面两个已经够了。

如果某些特征你发现聚类效果不好,不就说明这个特征无用呗,无法作为聚类的依据。例如出生的月份无法作为报纸阅读群体划分的依据。

(2)参与聚类的变量不能够太多,太多会增加计算量,同时变量之间的相关性会严重损害聚类的效果,此外太多的变量也会让你最后的聚类描述变得很复杂。
我建议
1,紧紧围绕着你的聚类目的和需求去选择一些有意义的变量,可以凭直觉或者征求前辈的意见。聚类虽说是非监督的,但也要讲究最终的可解释性。
2,做一个变量相关性分析,挑选几个最优的,又不相关的变量进入。
3,主成分分析,主成分之后的变量是相互独立的,有助于聚类分析。
4,你也可以在变量的维度做聚类分析,在每一个变量组里,选一个代表性的变量。

(3)总是有一类的样本数量特别多(几万个,占80%+),而其它类别可能只有零星十几个,一千多个?
原因可能如下
1,这个可能跟分布有关,也许有一个类的分布很紧凑,另外一个类分布很稀疏。
2,kmeans是基于距离的分类,分类以距离为主,而不是数据本身的分布,你可以考虑在我说的(2)降维之后再使用一些基于密度的算法或者EM算法。
3,为毛是两类呢?我一般都会尝试K从5到10。

(4)异常点异常点对中心值的计算影响很大,所以会导致中心的偏移,从而影响聚类的效果。你可以
1,删除它,但是删除他的时候必须注意,必须要做多次K取不同值以及多次聚类结果之后,确定他是异常点再删,不然无济于事。
2,随机抽样吧,随机抽样的理论可以避免小概率事件发生(噪声是小概率事件)。
抽样后可以有两种方式:一,就以抽样的子样本的中心为中心,对全样本进行聚类。二,子样本聚类的结果,当成一个具体的已知的类,对全样本做监督分类来进行聚类。

BTW,聚类的变量要事先做标准化的,你做了木有捏?若你的变量之间的范围的广度都不一致,一个范围是[0,1000],一个范围是[0,1],又因为kemans是基于距离的聚类,计算距离的时候,那个范围广的变量显然权重高,导致你的聚类结果基本上在他上面作划分,完全无视第二个变量的结果。

求奖励!求经验!求顶级互联网公司内推!

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-11-5 18:06:36
对,楼上说的很全面了。一般是推荐,先做变量聚集,每个变量类群中,挑选出1-r2最小的那个变量就可以,最终作为聚类分析的输入变量就不会太多。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群