如何扩展由sklearn TfIdfVectorizer返回的Scipy稀疏矩阵以容纳更多的特征



我正在研究一个文本分类问题,使用scikit-learn分类器和文本特征提取器,特别是TfidfVectorizer类。

问题是我有两种特征,第一种是由TfidfVectorizer获得的n-gram捕获的,另一种是我从每个文档中提取的域特定特征。我需要在每个文档的单个特征向量中组合这两个特征;为此,我需要更新由TfidfVectorizer返回的scipy稀疏矩阵,方法是在包含本文档域特征的每行中添加一个新维度。然而,我找不到一个整洁的方法来做到这一点,整洁的意思是不把稀疏矩阵转换成密集矩阵,因为它根本不适合内存。

可能我错过了scikit-learn的一个功能,因为我是scipy和scikit-learn的新手。

我认为最简单的是用您的自定义特征创建一个新的稀疏矩阵,然后使用scipy.sparse.hstack堆叠特征。你可能还会发现管道模块中的"FeatureUnion"很有帮助。

相关内容

  • 没有找到相关文章

最新更新