(WIP) Sparse models: S-LASSO and TV-l1

- Supports TV-l1 and S-LASSO priors
- Supports logistic and squared losses
- Has cross validation
- Can automatically select alpha by CV (+ automatic computation of useful alpha ranges for the CV)
- Warning: User must supply l1_ratio
On Wed, Oct 8, 2014 at 1:47 PM, Gael Varoquaux <notifications@github.com>
wrote:

> In nilearn/decoding/fista.py:
>
> > +        # ISTA is provably monotonous
> > +        if i > 0 and check_monotonous:
> > +            assert energy <= 1.1 * old_energy, (
> > +                "Oops! old_energy = %g < energy = %g. This is "
> > +                "unacceptable since ISTA and mFISTA are provably monotonous."
> > +                " The must be a bug in the code. For example, maybe "
> > +                "you are assuming a wrong lipschitz constant or you "
> > +                "have bugs in the way you compute the gradient of"
> > +                " the smooth part of the energy.") % (old_energy, energy)
> > +
> > +        # energy house-keeping
> > +        energy_delta = old_energy - energy
> > +        old_energy = energy
> > +
> > +        # z update
> > +        if energy_delta < 0.:
>
>  @GaelVaroquaux <https://github.com/GaelVaroquaux> it is unclear where
> the priority is: this particular portion of the PR looks like a new feature
> and may actually slow down the process. Should it be kept for a future PR ?
> It's a couple of hours of work not more.
>
Well, it's probably much less than a couple of hours of work. The point is
this adaptive restart stuff is at the bottom of my priority list. It's yet
another experiment, and can only only slow down the PR. Thence, I don't
think it's blocking the PR in any way.

> —
> Reply to this email directly or view it on GitHub
> <https://github.com/nilearn/nilearn/pull/219/files#r18576623>.
>



-- 
DED