3

TFIDFVectorizer 占用大量内存,对 470 MB 的 100k 文档进行矢量化需要超过 6 GB,如果我们处理 2100 万个文档,它将无法容纳 60 GB 的 RAM。

所以我们选择 HashingVectorizer 但仍然需要知道如何分发散列向量器。Fit 和部分拟合什么都不做,那么如何使用 Huge Corpus?

4

2 回答 2

10

我强烈建议您在大型数据集上拟合模型时使用HashingVectorizer 。

HashingVectorizer是数据独立的,只有参数来自是vectorizer.get_params()重要的。因此 (un)pickling `HashingVectorizer 实例应该非常快。

基于词汇的矢量化器更适合对小型数据集进行探索性分析。

于 2013-07-08T21:57:29.950 回答
1

克服 HashingVectorizer 无法解释 IDF 的一种方法是将您的数据索引到 elasticsearch 或 lucene 并从那里检索术语向量,您可以使用它们来计算 Tf-IDF。

于 2015-02-10T04:49:37.837 回答