Skip to content

Commit ad7cfb6

Browse files
committed
Complete some TODOs
1 parent 1eb2642 commit ad7cfb6

File tree

1 file changed

+31
-12
lines changed

1 file changed

+31
-12
lines changed

slep006/proposal.rst

Lines changed: 31 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -429,30 +429,49 @@ Proposal
429429

430430
Having considered the above solutions, we propose:
431431

432-
TODO
432+
* Solution 4 per :pr:`16079` which will be used to resolve further, specific
433+
details of the solution.
434+
* Props will be known simply as Metadata.
435+
* `**kw` syntax will be used to pass props by key.
433436

434-
* which solution?
435-
* if an estimator requests a prop, must it be not-null? Must it be provided or explicitly passed as None?
436-
* props param or kwargs?
437-
* naming?
437+
TODO:
438+
439+
* if an estimator requests a prop, must it be not-null? Must it be provided or
440+
explicitly passed as None?
438441

439442
Backward compatibility
440443
----------------------
441444

442-
TODO
445+
Under this proposal, consumer behaviour will be backwards compatible, but
446+
meta-estimators will change their routing behaviour.
447+
448+
By default, `sample_weight` will not be requested by estimators that support
449+
it. This ensures that addition of `sample_weight` support to an estimator will
450+
not change its behaviour.
443451

444-
TODO: Do we continue to handle sample_weight such that it only gets provided of requested explicitly? Or do we make it requested by default in the future (possibly with a deprecation period)?
452+
During a deprecation period, fit_params will be handled dually: Keys that are
453+
requested will be passed through the new request mechanism, while keys that are
454+
not known will be routed using legacy mechanisms. At completion of the
455+
deprecation period, the legacy handling will cease.
445456

446-
During a deprecation period, fit_params will be handled dually: Keys that are requested will be passed through the new request mechanism, while keys that are not known will be routed using legacy mechanisms. At completion of the deprecation period, the legacy handling will cease.
457+
Similarly, during a deprecation period, `fit_params` in GridSearchCV and
458+
related utilities will be routed to the estimator's `fit` by default, per
459+
incumbent behaviour. After the deprecation period, an error will be raised for
460+
any params not explicitly requested.
447461

448-
Grouped cross validation splitters will request `groups` since they were previously unusable in a nested cross validation context, so this should not often create backwards incompatibilities, except perhaps where a fit param named `groups` served another purpose.
462+
Grouped cross validation splitters will request `groups` since they were
463+
previously unusable in a nested cross validation context, so this should not
464+
often create backwards incompatibilities, except perhaps where a fit param
465+
named `groups` served another purpose.
449466

450467
Discussion
451468
----------
452469

453-
One benefit of the explicitness in Solution 4 is that even if it makes use of **kw arguments, it does not preclude keywords arguments serving other purposes in addition. That is, in addition to requesting sample props, a future proposal could allow estimators to request feature metadata or other keys.
454-
455-
TODO
470+
One benefit of the explicitness in Solution 4 is that even if it makes use of
471+
`**kw` arguments, it does not preclude keywords arguments serving other
472+
purposes in addition. That is, in addition to requesting sample props, a
473+
future proposal could allow estimators to request feature metadata or other
474+
keys.
456475

457476
References and Footnotes
458477
------------------------

0 commit comments

Comments
 (0)