Mahout聚类和离散值

时间:2013-01-14 14:20:51

标签: mahout

我的数据包含一些离散字段,或者以其他方式表示枚举值。例如,在我的数据中,我有一个类似'deviceType'的字段,可以使用“Handheld”和“Desktop”之类的值。其他字符串属性可能是网址。然而,它们本身缺乏距离的概念,因此不能“矢量化”。此外,其中一些非常重要和有意义。如何将它们合并到群集过程中?

我想到的一个解决方案是将它们拆分为新的布尔字段(维度)。有没有办法在Mahout中表现出来?

我还有其他选择吗?

1 个答案:

答案 0 :(得分:0)

其他选项可能是让您自己的程序生成稀疏向量,可以将其作为输入提供给mahout进行聚类。 例如,输入:

www.domain1.com/page1
www.domain1.com/page2
www.domain2.com/page1

我们可以将上面的网址拆分为主机,路径,这样的参数

www.domain1.com page1
www.domain1.com page2
www.domain2.com page1

我们可以使用字符串,整数键值对,如下所示

(www.domain1.com,  1)
(page1, 2)
(page2, 3)
(www.domain2.com, 4)

和稀疏的矢量如下

{1:1.0, 2:1.0}
{1:1.0, 3:1.0}
{4:1.0, 2:1.0}

上面的内容可以作为mahout的输入给出。