使用K-Means聚类一维或多维数据?

时间:2016-09-18 05:26:06

标签: machine-learning cluster-analysis k-means bigdata

我正在研究BigData Challenge的数据集。

https://dandelion.eu/datamine/open-big-data/ 数据集:电信 - 短信,电话,互联网 - MI

样本数据集(一天)

Square id   Time interval   Country code    SMS-in activity SMS-out activity    Call-in activity    Call-out activity   Internet traffic activity

1   1.39E+12    39  0.11098917  0.166214369 0.10920186  0.164427059 13.64843792

1   1.39E+12    46                  0.026137424

1   1.39E+12    39  0.165136827 0.176399458 0.030875085 0.027300465 13.33085819

1   1.39E+12    0   0.029087775 0.027300465         

1   1.39E+12    39  0.186451092 0.136587823 0.05460093      11.32955226

.

.

10000 1.39E+12  39  0.165136827 0.176399458 0.030875085 0.027300465 13.33085819 

在这个数据集中,米兰城市地理区域被划分为10,000个方格ID,并且他们已经为每个方形ID提供了用户活动(SMS,CALL,INTERNET),就像这样我有一个月(30天)持续时间的数据集。 / p>

有了这个,我试图根据最小,平均和最大用户活动等用户活动将这些数据聚类成三个集群。

我厌倦了使用K-Means聚类算法,但由于我的数据是一维K-Means不适合这个。

我可以使用days和square-id作为维度并运行K-Means ??

关于进近或聚类算法的任何建议?

1 个答案:

答案 0 :(得分:1)

从不在群集时使用ID列。

此外,k-means仅在所有列具有相同比例时有效。 Please see the answers to this post

如果您想将地理邻近度集成到群集中,我建议您仔细自定义方法。看看广义DBSCAN,它是专为定制而设计的。永远不要认为聚类“只是有效”,因为大多数情况下,它不起作用。

此外,您需要预先定义您的目标。您想要实现什么,如何衡量成功?仅仅因为您想要进行群集或者因为您不知道该做什么而进行群集并不会取得成功。

至于数据集,它实际上没有目标。获胜的条目似乎可以归结为观察到当时更多人的能量消耗更高(惊喜)。开放式挑战真的很难。