将序列文件转换为矢量

时间:2013-03-18 05:52:56

标签: mahout

我正在尝试实施朴素贝叶斯算法,对mahout中的推文和facebook数据进行情感分析。我在文本文件中有这些推文和facebook数据。我正在使用命令

将这些文件转换为序列文件

bin / mahout seqdirectory -i / user / hadoopUser / sample / input -o / user / hadoopUser / sample / seqoutput

然后我尝试将序列文件转换为vector,以便使用命令为mahout提供输入

bin / mahout seq2sparse -i / user / hadoopUser / sample / seqoutput -o / user / hadoopUser / vectoroutput -ow -a org.apache.lucene.analysis.WhitespaceAnalyzer -chunk 200 -wt tfidf -s 5 -md 3 -x 90 -ng 2 -ml 50 -seq

这是将整个文档转换为向量,但我想将每个句子转换为向量而不是整体,因为我不想对文档进行分类。我想对文档中的注释进行分类。任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:0)

你应该拥有一个包含推文数据的CSV文件吗?我正在处理这个完全相同的问题。我做了什么(我不确定它是否有效,因为我甚至不知道如何解释聚类输出,它只是一堆数字和单词)我使用Mahout的SequenceWriter将我的CSV文件的每一列写入序列文件类。然后在该序列文件上使用seq2sparse和normal一样。

答案 1 :(得分:0)

我不是百分百肯定,但主要问题是mahout将此文件视为一个键/值。 您需要添加其他ID,例如,每行的md5哈希。 因此CSV格式为:

positive    bf9373d6d85959ec755eb8ac5ba0ae77    This movie is a real masterpiece