-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
bugSomething isn't workingSomething isn't workingenhancementNew feature or requestNew feature or request
Milestone
Description
Honestly this is a bit of a weird one resulting from very inconsistent design in scikit-learn's user interface. Some modules, like many of the linear regression (and regularized variants thereof) allow for multi-target fitting. This means that the y array can be of shape (N_samples, N_targets).
However not all of them support this, and notably the PoissonRegressor class does not. Add to the mix that none of the NVIDIA RAPIDS cuML package regressors, which have GPU acceleration of many common models, support multi-target regression, and it's a huge headache.
Currently the LinearGLM class assumes multi-target support, while the PoissonGLM object outright forces use of the scikit-learn poisson object.
Goals here:
- Completely offload the generation of a sklearn-like fitting object to the user. No more
PoissonGLMuse of a internally-generated regression object. - Develop strict internal checks to make sure that the base methods of an sklearn regressor are implemented by the passed fitting object.
.fit(),.coef_,.intercept_are necessities, and it would be nice to have.predict()if point 3 is going to be implemented, as the link function will be unknown and is necessary for issue Synthetic data generation #2 to be correctly resolved. - Maybe consolidate the
LinearGLMandPoissonGLMclasses into a single class, possibly calledSpikeGLMor something similar. This would simplify the interface, and also make it easier to delineate down the line whether to use that or possibly a imaging-specific class that does a different set of preprocessing on the data.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingenhancementNew feature or requestNew feature or request