@GaelVaroquaux , thanks. Before training starts, `fit` calls `self._validate_params()`, which checks that each parameter is within accepted values. So, if one is to write `lbfgs`, the code would raise a `ValueError`.

```
 +        if self.algorithm not in ["sgd", "l-bfgs"]:
 +            raise ValueError("The algorithm %s"
 +                             " is not supported. " % self.algorithm)
```