[MRG+2] Adding Implementation of SAG - next episode#4738
[MRG+2] Adding Implementation of SAG - next episode#4738TomDLT wants to merge 11 commits intoscikit-learn:masterfrom
Conversation
|
Awesome @TomDLT! There was talk of having this implemented as a solver for LogisticRegression and RidgeRegression, have you looked into that at all? |
|
travis is still unhappy ;) Thanks for picking this up! |
|
I rerun the classifier benchmark on two large datasets: Result on Alpha (500.000 x 500, Dense): |
|
as discussed I vote for adding 'sag' solver to LogisticRegression and RidgeRegression that would call plain sag_logistic and sag_ridge functions. |
|
newtoncg is faster than liblinear? I'm surprised! Anyhow SAG seems to kick ass. I'd be +1 on adding a solver to the classifiers as this seems like a good default. |
|
(though i dream of the day where the default LogisticRegression is multinomial, not OvR ;) |
|
Thanks for the explanation. |
|
I implemented Currently, in order to match
|
|
why do we lose warm_start? |
|
there is no reason not to support warm_start I would put all sag related code in 1 file called sag.py (ie no sag_class.py) |
|
travis is not happy |
|
For |
|
Ah... I thought there was a warm_start param in LR already. Keep it
for later then.
|
38af560 to
2e9618b
Compare
|
ping us when ready to merge. thx |
|
I also thought there was a warm_start for LogisticRegressionCV... hum |
|
needs a rebase (probably for whatsnew) |
|
I implemented sag_ridge as a solver in Currently, in order to match
|
b37cfcc to
a1adf82
Compare
|
loosing random_state is probably a bad idea. Any thought? Justify API
extension?
|
|
yeah |
|
shouldn't LogisticRegression have a random_state for liblinear? Or is that only for hinge-loss? |
|
Indeed it should
|
|
No, |
|
Thanks again for the review! FYI I am working on a multinomial version of SAG, but it will be in another PR. |
|
LGTM too
|
doc/whats_new.rst
Outdated
|
@ogrisel we want this in the release, right? |
|
Great work everybody :) |
I am not opposed to have it in :) |
Would be great to consider adding support for |
|
This PR needs a rebase on top of the current master. |
ENH add new parameter random_state in Ridge class ENH add new parameter warm_start in LogisticRegression
|
I'll rebase, squash and merge in a bit unless anyone complains. |
|
Pushed as 94eb619. Thanks for the great work! |
|
🍻 !
|
|
🍻! |
|
Awesome!! |
|
Nice ! |
|
Yeah! @TomDLT deserves extra kudos for patience and perseverance :-) |
|
Thanks :) |



I took over the great work of @dsullivan7 in #3814.
I removed the merges with master, squashed all the commits and rebased on master.