sklearn中cross_val_predict训练过程中对模型拟合了吗?

sklearn中cross_val_predict训练过程中对模型拟合了吗?多分类问题中,已经明确有分类输出了。但是原模型若不fit的话,又无法用于下一步对测试集进行预测。请问cross_val_predict在生成predict时,是否已经训练了一次模型,如果是,这个在cross_val_predict过程中训练出的模型如何用于下一步预测?谢谢!


#train data:X0
#label : y
#test data: v

sgd = SGDClassifier()
scores = cross_val_score(sgd, X0, y,cv=5, scoring = 'accuracy')
y0 = cross_val_predict(sgd,X0,y,cv=5)
print('scores = {}'.format(scores))
print('AVG : {}'.format(np.mean(scores)))
print('SGD : {}'.format(sgd))

此处y0是有输出的。但是这个sgd不进行fit的话,无法调用predict。拟合的话:(假设拟合全部train):

sgd.fit(X0,y)
y_pred= sgd.predict(X0)

根据全体train得出的预测值y_pred又与原标签y不同。

1个回答

使用fit函数的话是完成了对数据的拟合的,可以理解为进行了训练,你上述的那个cross_val_predict函数只是可以得出预测值并没有对模型的参数进行优化。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐