Luke
Luke

Reputation: 7099

Evaluating convergence of SGD classifier in scikit learn

Is there any automated way to evaluate convergence of the SGDClassifier?

I'm trying to run an elastic net logit in python and am using scikit learn's SGDClassifier with log loss and elastic net penalty. When I fit the model in python, I get all zeros for my coefficients. When I run glmnet in R, I get significant non-zero coefficients.

After some twiddling I found that the scikit learn coefficients approach the R coefficients after around 1000 iterations.

Is there any method that I'm missing in scikit learn to iterate until the change in coefficients is relatively small (or a max amount of iterations has been performed), or do I need to do this myself via cross-validation.

Upvotes: 1

Views: 1003

Answers (1)

ogrisel
ogrisel

Reputation: 40169

This a known limitation of the current implementation of scikit-learn's SGD classifier, there is currently no automated convergence check on that model. You can set verbose=1 to get some feedback when running though.

Upvotes: 3

Related Questions