You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: slep006/proposal.rst
+31-12Lines changed: 31 additions & 12 deletions
Original file line number
Diff line number
Diff line change
@@ -429,30 +429,49 @@ Proposal
429
429
430
430
Having considered the above solutions, we propose:
431
431
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.
433
436
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?
438
441
439
442
Backward compatibility
440
443
----------------------
441
444
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.
443
451
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.
445
456
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.
447
461
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.
449
466
450
467
Discussion
451
468
----------
452
469
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
0 commit comments