是否可以在sklearn中进行小批量梯度下降以进行逻辑回归?我知道有LogisticRegression
模型和SGDClassifier
(可以使用log
损失函数)。但是,LogisticRegression
适用于整个数据集,SGDClassifier
适用于逐样本(可以更正该陈述,但这是我理解随机梯度下降的方式)。
也有partial_fit
方法,但这仅适用于SGD。我相信,如果我将partial_fit
用于SGD,它将在每次移到下一个数据集样本时更新权重(就像普通的fit
方法一样)。因此,如果我向partial_fit
提供10个样本块,它将进行10个更新-但这不是我想要的。
我需要获得的是在每个第n个样本后更新权重,就像在小批量梯度下降中一样。根据我对LogisticRegression
的了解,它可以使用称为warm_start
的东西,这意味着将先前fit
方法的权重设置为当前fit
的初始权重。
如果关于warm_start
的理论是正确的,我是否可以多次使用fit
方法,而每次只在一个小批量生产中使用?还是有其他方法可以在sklearn中进行小批量梯度下降?
我发现this question非常相似,只是它没有讨论warm_start
的想法,所以这就是我再次询问的原因。