聚类算法的特征缩放(归一化)(如Kmeans& EM)

时间:2014-10-31 00:00:41

标签: machine-learning cluster-analysis normalization feature-extraction

我想使用KMeans聚类算法来分析配置文件数据。样本数据的格式为:

Features: name   ISBN     Date             ID      price ....
          'A'   '31NDB'  '05/18/2014'    'CBDDN'   12.00
          'B'   '3241B'  '08/19/2012/    'ABCDE'   33.08

这些只是示例,真实数据不一定是这种格式。但是如果需要在这组数据上应用聚类算法,那么如何进行特征缩放,归一化部分呢?我该如何处理字符串值和日期值以及价格(双倍)值?这些价值观之间是否存在关系?我很困惑......

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

K-means和EM仅适用于数字数据。

将它们应用于名称/日期/价格类型数据没有多大意义。

如名称所示,算法需要计算均值。你如何计算你的名字"柱?你可以为日期破解某些东西,但不能破坏名称。

错误的工具。

答案 1 :(得分:0)

您必须将非数字要素编码为数字。这是分类或序数特征的情况。

另外,如果某些功能对您的分析不重要,请考虑将它们丢弃。例如,如果您正在尝试群集书籍,那么购买日期可能不重要(或者可能是,取决于您所关注的内容),因此添加日期不会很重要有道理。

作为编码具有3个类别的变量的示例,您可以例如将其编码为3个变量[1,0,0],[0,1,0],[0,0,1]或as 2个变量[0,0],[1,0],[0,1]。 关于这个here还有一些讨论。

请注意,由于您的KMeans / GMM(因为您避开了EM)将计算点之间的距离,因此正确的编码尤其重要。了解它们的含义,特别是与不同的特征规范化方案一起使用时,尝试不同的方法来查看结果。