Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Add L1 penalty and coordinate descent solver to TweedieRegression #16637

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
rth opened this issue Mar 4, 2020 · 3 comments
Open

Add L1 penalty and coordinate descent solver to TweedieRegression #16637

rth opened this issue Mar 4, 2020 · 3 comments

Comments

@rth
Copy link
Member

rth commented Mar 4, 2020

The L1 penalty with coordinate descent solver for GLM was proposed in #9405 and was not included in the minimal implementation merged in #14300.

It would be be good to add it, however care must to taken to avoid redundancy with the existing coordinate descent solver in ElasticNet.

Preliminary benchmarks were done in #9405 (comment)

Also see: #16634 #16635

@lorentzenchr
Copy link
Member

IIRC, one reason not to use the current enet_coordinate_descent solver for #9405 was that it does not naturally support sample weights nor an intercept term. The implementation in #9405 seems to use more memory than necessary. On the other side, given the pure python implementation, I'd say it was computationally acceptable.

@Reksbril
Copy link
Contributor

Reksbril commented Apr 28, 2020

@rth can I work on this?

@mathurinm
Copy link
Contributor

For users interested, in the meantime we have implement a Poisson datafit in the sklearn compatible skglm package, which can be used with a ProxNewton solver for example.

Such datafit can be combined with a wealth of penalties (L1, but also WeightedL1, Elastic net - L1 + L2 -, and non convex penalties such as MCP, SCAD, Lq penalties with q < 1).

We also have the Gamma datafit; feedback is welcome!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Discussion
Development

No branches or pull requests

4 participants