带有单个样本的Sklearn列车模型会引发弃用警告



下面是我的代码:

我有一个features阵列和一个用于训练model.pkllabels阵列

但当我想在模型中添加single sample时,我会得到下面的warning

from sklearn import tree
from sklearn.externals import joblib
features = [[140, 1], [130, 1], [150, 0], [170, 0]]
labels = [0, 0, 1, 1] 
# Here I train the model with the above arrays
clf = tree.DecisionTreeClassifier()
clf = clf.fit(features, labels)
joblib.dump(clf, 'model.pkl') 
# Now I want to train the model with a new single sample
clf = joblib.load('model.pkl')
clf = clf.fit([130, 1], 0) # WARNING MESSAGE HERE!!

这是warning:

        /usr/local/lib/python2.7/dist-packages/sklearn/utils/validation.py:386:
 DeprecationWarning: 
    Passing 1d arrays as data is deprecated in 0.17 and willraise ValueError in 0.19. 
    Reshape your data either using X.reshape(-1, 1) 
if your data has a single feature or X.reshape(1, -1) 
if it contains a single sample.  DeprecationWarning)

我已经读过了。但我的例子似乎不同。

如何每次使用单个样本训练模型

感谢

如果您阅读错误消息,您可以看到传递的一维数组很快将不受支持。相反,你必须确保你的单个样本看起来像一个样本列表,其中只有一个。当处理NumPy数组(推荐使用)时,您可以使用reshape(-1, 1),但当您使用列表时,将执行以下操作:

clf = clf.fit([[130, 1]], [0])

相关内容

  • 没有找到相关文章

最新更新