对名义数据进行聚类

时间:2016-01-17 14:14:51

标签: algorithm cluster-analysis data-science

我正在尝试将聚类算法应用于我的数据集。 我的数据集是电影,有些属性是名义上的。 例如:

movie 1:
[
IMDB popularity: 1.02
Genre: Drama
Sub-genre: Horror
Rating: 1.23%
]

movie 2:
[
IMDB popularity: 2.08
Genre: Comedy
Sub-genre: Animation
Rating: 0.72%
]

etc. etc.

我可以申请类似K-means的东西吗? K-means适用于距离,如果我只是标记,例如,“戏剧”为0,“恐怖”为1“喜剧”为2,“动画”为3 - 那么我实际上说的是例如“戏剧”与“恐怖”更接近于“喜剧”(对于这个例子,它可能在某种程度上接近现实,但对于一般情况,很难将单词标记为数字并保持实际比率。 任何解决此问题的已知算法?

1 个答案:

答案 0 :(得分:0)

根据您的具体问题进行统计的传统解决方案是将值编码为不同的变量:

  • IsHoror
  • IsComedy 。 。

然后你可以在结果上运行k-means。

我会发两条评论。首先,请确保以某种方式规范化值(标准化或标准化主成分是两种典型方法)。

我更喜欢期望最大化聚类,这是k-means的连续变体,因为它通常会产生更好的结果。