如何在Spark MLLIb的HashingTF()函数中设置目标要素维度?

时间:2017-04-06 11:06:51

标签: hash hashtable apache-spark-mllib tf-idf

Apache Spark MLLIB具有HashingTF()函数,该函数将标记化的单词作为输入并转换这些集合 到固定长度的特征向量。

如文档链接中所述 spark mlib documentation

建议使用2的幂作为特征维度。

问题是指数值是否是输入中的术语数

如果是,假设如果我将超过1000个文本文档视为具有超过5000个术语的输入,那么特征维度将变为2 ^ 5000

我的假设是否正确或是否有其他方法可以找到指数值

1 个答案:

答案 0 :(得分:1)

在文档HashingTF中,它说:“建议使用2的幂作为特征维”->我认为这意味着numFeatures = 2 ^ n

例如,您的词汇量为900,则numFeatures值应大于900,并且2的幂(即2 ^ 10(= 1024))可能是一个不错的估计。