【发布时间】:2020-03-16 04:22:27
【问题描述】:
我是 ML 的新手。我训练了我的数据集,然后用 pickle 保存它。我训练有素的数据集具有文本和价值。我正在尝试从我的新数据集中获得一个估计值,该数据集只有文本。
但是,当我尝试使用经过训练的数据来预测新值时,我遇到了一个错误,上面写着
ValueError:模型的特征数量必须与输入匹配。模型 n_features 为 17804,输入 n_features 为 24635
您可以在下面查看我的代码。此时我必须做什么?
with open('trained.pickle', 'rb') as read_pickle:
loaded=pickle.load(read_pickle)
dataset2 = pandas.read_csv('/root/Desktop/predict.csv' , encoding='cp1252')
X2_train=dataset2['text']
train_tfIdf = vectorizer_tfidf.fit_transform(X2_train.values.astype('U'))
x = loaded.predict(train_tfIdf)
print(x)
【问题讨论】:
-
您使用
17084输入特征训练了您的模型,现在您尝试使用24635features 预测某些内容,这不起作用。 Imagen 你正在用 11 对 11 训练足球,然后游戏说你必须玩 14 对 14,你也会很困惑 -
@PV8 非常感谢您的评论,但这实际上很奇怪,因为我知道有很多工具正在查看您的文本,然后给出的结果就像是火腿或垃圾邮件。但是,我们知道他们正在使用大量数据来教机器。
标签: python-3.x machine-learning