ACEsuit / IPFitting.jl

Fitting of NBodyIPs
Other
5 stars 10 forks source link

elastic_net_lsqr solver #34

Closed davkovacs closed 2 years ago

davkovacs commented 2 years ago

I just realized that I was using the elastic net followed by an lsqr solver in one of my projects. Perhaps it would be good to keep that option if someone wants to sparsify but without the Bayesian ARD.

@casv2 what do you think?

casv2 commented 2 years ago

Yeah so if you look at the old solvers there are several different elastic net solvers, but I don't know which one we particularly liked. We just go to a simple: alpha L_1 + (1-alpha) L2 elastic net solve? Which we can then use the preconditioning on or not.

davkovacs commented 2 years ago

Yes, there was an elastic net followed by an lsqr, so I think it would be great to have that, and we can use the preconditioner before. It has alpha parameter of the GLMNet, and lsqr_damp, lsqr_atol for the LSQR solver.

cortner commented 2 years ago

It would be good to keep that

cortner commented 2 years ago

But should the LSQR post pork easing be done by the user or done internally?

davkovacs commented 2 years ago

I think this should be a single solver that sparsifies using elastic net (basis selection step) and solves the smaller system using LSQR. It is how it was previously and it worked well.

wcwitt commented 2 years ago

I'm seeing this issue for the first time. If it's still important to anyone, would you mind opening an issue at ACEfit?

davkovacs commented 2 years ago

I think I'll do that if I need this option. But I don't think it is particularly important now.