假设我有两个基于文本的功能;例如,假设我正在尝试预测体育比赛,我有:
1)摘自体育评论(正文) 2)摘自互联网粉丝预测(也是一组文本)。
如果我在feature 1上使用文本向量化程序(比如说HashingVectorizer),使用fit_transform(),在feature 2上再次使用它(fit_transform())会不好,或者我应该为它创建一个新的vectorizer那?我只是想知道是否在具有相同矢量化器的多个特征上重用fit_transform()可能会产生不良副作用。
答案 0 :(得分:0)
我想说这取决于你是否想要文本到矢量转换步骤的再现性。例如,如果要使用与第一个数据集相同的分类器(或其他),则需要重用矢量化器。如果你在一个不同的数据集上使用一个新的,它将构建一个不同的词汇表,即拉出不同的标记,并使矢量不同。这可能是你想要的一个非常不同的数据集(如果你要重新训练)。可能是第二个数据集包含对预测至关重要的新单词。如果你重复使用矢量化器,那些就会被遗漏。
顺便说一下,如果要保存到磁盘,可以对矢量化器进行pickle。有关示例,请参阅:how to pickle customized vectorizer?。