RapidMiner:我如何有效地生成n-gram?

时间:2014-08-17 08:42:18

标签: text-mining rapidminer

对于我的论文,我正在尝试使用带有Text Mining扩展的RapidMiner Community Edition对较大(最多2GB)的文本文档(产品评论)文件进行情绪分析。

我想为此制作双胞胎。但是对于一个甚至没有100.000文件的小型70MB csv文件,在8核32GB RAM机器上生成双字节组合已经需要12个小时(RapidMiner配置为使用28GB和所有核心)。

我已经能够使用具有bigrams缺点的过滤器将其减少到3个小时,这在原始文档中是不存在的。我不确定,如果这是我能得到的。

我目前的流程如下:

Read CSV - &gt; Process documentsTokenize - &gt; Stem - &gt; Filter stop words - &gt; Filter length < 2 - &gt; Generate n-grams) - &gt; Split Validation

删除n-gram运算符会降低精度并回忆到~60%,这远远不能被接受。感谢任何想法,如何加快速度。

1 个答案:

答案 0 :(得分:2)

有时,使用运算符Materialize Data会产生影响。在文档处理之后和分割操作符之前放置它。

您还可以查看修剪以减少属性数量。您必须通过实验找到最佳参数。

另一种选择是将单词列表实现为Process Documents运算符的输入。当然,这需要一个已知的单词列表,这可能不适合您的问题。

还可以在处理文档时按内容进行过滤。您可以只包含那些包含下划线的令牌。这样可以保持2克以上并删除unigrams,从而减少属性数量。