Hi,
I think the main problem you encounter is that the “lasso” problem can be optimized much better than using adam or adagrad.
And sklearn in particular, use a lot of fine tuned algorithm that will solve these problems very very well.
You can try and monitor the loss of your network, make sure your learning rate is high and you only return after you have converged. But that might take some time. Also the values will never be 0. but they should go down to something small…