我正在寻找比scikit-learn CountVectorizer
更有效的n-gram计数矢量化的实现。我已经将CountVectorizer.transform()
调用确定为一些软件的巨大瓶颈,并且如果我们能够使这部分管道更高效,则可以大大提高模型吞吐量。适合时间并不重要,我们只关心转换时间。结束输出必须是scipy.sparse
向量。如果任何人有潜在的替代品的任何线索,将非常感激。
答案 0 :(得分:4)
你试过HashingVectorizer
吗?它的速度稍快(如果我没记错的话,最多可达2倍)。下一步是分析代码,删除您不使用的CountVectorizer
或HashingVectorizer
的功能,并在优化的Cython代码中重写其余部分(再次进行分析后)。
默认情况下,Vowpal Wabbit的裸骨功能处理使用散列技巧可能会给你一些可以实现的功能。