SGDClassifier里有个partial_fit的方法,这个和普通的fit方法有什么区别?
3个回答
在第一次训练时,fit和partial_fit训练模型的原理其实本质上是一样的。
但是对于partial_fit的模型来说,当我们有了新数据,我们可以用新的数据在旧的模型基础上训练、更新模型,而不必重新训练。也就是另一位答友提到的,线上算法的特点。
以SGDClassifer为例,partial_fit的具体用法如下
from sklearn.linear_model import SGDClassifier
clf = SGDClassifier(loss='log')
#用数据集训练
clf.partial_fit(X, y)
#当我们有了新数据之后,可以在原基础上更新模型
clf.partial_fit(X_new, y_new)
#partial_fit的模型使用方法也是和正常模型一样的,直接用predict或者predict_proba
y_pred = clf.predict_proba(X_test)
fit就是一次性把模型训练完毕
partial_fit可以在原来的基础继续训练模型,所以partial_fit只针对对onlin的算法。这里SGD就是online的。
那除了sgd以外,还有什么可以使用`partial_fit`这个方法吗
SofaSofa数据科学社区DS面试题库 DS面经
我也好奇,所以单独提问了(http://sofasofa.io/forum_main_post.php?postid=1004603)
-
zzzz
2019-05-27 10:40