TFIDFVectorizer占用大量内存,向量化100k个文档的470 MB数据需要超过6 GB的内存,如果处理2100万个文档,60 GB的RAM将无法满足需求。
因此我们转而使用HashingVectorizer,但仍然需要了解如何分配哈希向量化。Fit和partial fit不起作用,那么如何处理大型语料库呢?
回答:
我强烈建议你在处理大型数据集时使用HashingVectorizer来拟合模型。
HashingVectorizer
是数据无关的,仅vectorizer.get_params()
中的参数是重要的。因此,(un)pickling `HashingVectorizer`实例应该非常快。
基于词汇表的向量化器更适合用于小数据集的探索性分析。