> On second though, -0 for SGDFactorizer. I'm not an expert on matrix factorization, but I prefer class names that describe the model being built (i.e. the problem being solved) rather than the algorithm. That makes it easier to switch to a smarter algorithm later on.

The nice thing about SGD is that it is flexible w.r.t the loss function (i.e., the model). I would like this class to support the same regression loss functions as in the SGD module. I also plan to add a special variant of the hinge loss which uses the 0/1 encoding instead of -1/1 (this way, we can use it for imputation of binary data).