保存Vectorizer之前和之后元素的形状都会发生变化

时间:2019-07-19 23:01:23

标签: python-3.x pandas numpy vectorization pickle

我在下面的伪数据上使用tf_idf矢量化器:

file_list=["Google headquarters is in California", "Steve Jobs was a great 
man", "Steve Jobs has done great technology innovations"]

如果我打印矢量化元素的形状,则会得到输出(14,)

当我保存矢量化器并随后使用该矢量化器进行转换时,形状为(1,14) 我可以知道是否做错了什么吗?

如果我们有与此类似的大数据,并且在矢量化之后将数据传递给机器学习模型,那么该模型对两者的预测是否相同?

transformer = TfidfVectorizer().fit(file_list)
file_data = transformer.transform(file_list)
with open('transformer.pickle', 'wb') as handle:
    pickle.dump(transformer, handle, protocol=pickle.HIGHEST_PROTOCOL)    
file_data = file_data.toarray()

with open('transformer.pickle', 'rb') as handle:
    transformer = pickle.load(handle) 


transformed_file = transformer.transform([file_list[0]]).toarray()

运行下面两行中的两条给出不同的输出     打印(file_data [0] .shape) 输出:     (14,)

print(transformed_file.shape)

输出:     (1,14)

我可以知道为什么吗?

0 个答案:

没有答案