2013/5/16 Joel Nothman <[email protected]>:
> I notice that there are some remnants of a former scikit-learn that allowed
> parameters to fit(...) other than X and y, but these have been removed in
> favour of object-level parameters.

That's right. The old convention was that fit would call _set_params,
then do actual training. The problem with this was that the method
could fail halfway through, without signaling to the caller what
exactly had failed, so we made set_params public and deprecated
passing estimator parameters to fit.

> Should the same be the case with transform? In particular, Pipeline and
> FeatureUnion only support 1-ary transform, and any parameter that can only
> be set as an additional argument to transform can't be varied in a [grid]
> search. That is, >1-ary transform seems misfit to the API.

Yes, preferably the same should be the case for transform.

> So what non-X arguments to transform methods take?
>
> copy=True in various, such as feature_extraction.text.TfidfTransformer
> y=None in various
> ridge_alpha=None in decomposition.sparse_pca.SparsePCA
> threshold=None in feature_selection.selector_mixin.SelectorMixin
> pooling_func=np.mean in
> cluster._feature_agglomeration.AgglomerationTransform
> Y=None in pls._PLS, pls.PLSSVD
>
> copy is not really a problem. It's not something you want to vary in
> parameter search, and although perhaps the pipeline could take advantage of
> it, it's no problem.

[Aside: a consistent way of telling transformers that they own
whatever is passed to them could benefit pipeline performance, though
I never took the time to design an API for that. Putting fake copy=
arguments on all constructors or transform methods is ugly, this
should be handled in TransformerMixin.]

-- 
Lars Buitinck
Scientific programmer, ILPS
University of Amsterdam

------------------------------------------------------------------------------
AlienVault Unified Security Management (USM) platform delivers complete
security visibility with the essential security capabilities. Easily and
efficiently configure, manage, and operate all of your security controls
from a single console and one unified framework. Download a free trial.
http://p.sf.net/sfu/alienvault_d2d
_______________________________________________
Scikit-learn-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/scikit-learn-general

Reply via email to