将关键值数据集表示为Mahout向量

时间:2013-01-09 06:42:05

标签: hadoop mahout

我有一个CSV数据集,它是一组键值对,数据集很大,值是整数和短字符串的混合(即不是冗长的文本,而是关键词)我希望使用Mahout的聚类算法处理它。

问题在于将此CSV转换为可由Mahout使用的向量。我一直在阅读“Mahout In Action”,并且似乎有两个矢量化选项,使用带有Mahout的DenseVector,RandomAccessSparseVector和SequentialAccessSparseVector实现的数值或使用向量空间模型来矢量化文本文档。

我想要对它进行矢量化的数据并不是真正的文本文档,但由于它是一个包含许多不同键和值的巨大数据集,因此很难将其映射到数值。在Mahout中使用这种数据进行矢量化的最佳方法是什么?

任何指针都会受到赞赏。

由于

1 个答案:

答案 0 :(得分:0)

您最有可能需要RandomAccessSparseVector。

  • 不是DenseVector,因为大多数可能的键都不会被表示。你有 将整数和字符串混合为键,因此它是一个很大的键空间。
  • 不是SequentialAccessSparseVector,因为似乎没有 您的密钥空间中的自然排序将产生特定的顺序 在Mahout中运行算法时访问更有效。

您可以轻松尝试不同的矢量表示,以查看哪种表现最佳。