-
Notifications
You must be signed in to change notification settings - Fork 719
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Keith Battocchi <kebatt@microsoft.com>
- Loading branch information
1 parent
a09ca51
commit 9f517fd
Showing
9 changed files
with
384 additions
and
707 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
.. _model_selection: | ||
|
||
================= | ||
Model Selection | ||
================= | ||
|
||
Estimators that derive from :class:`._OrthoLearner` fit first stage nuisance models on different folds of the data and then fit a final model. | ||
In many cases it will make sense to perform model selection over a number of first-stage models, and the library facilitates this by allowing | ||
a flexible specification of the first-stage models, as any of the following: | ||
|
||
* An sklearn-compatible estimator | ||
|
||
* If the estimator is a known class that performs its own hyperparameter selection via cross-validation (such as :class:`~sklearn.linear_model.LassoCV`), | ||
then this will be done once and then the selected hyperparameters will be used when cross-fitting on each fold | ||
|
||
* If a custom class is used, then it should support a `fit` method and either a `predict` method if the target is continuous or `predict_proba` if the target is discrete. | ||
|
||
* One of the following strings; the exact set of models supported by each of these keywords may vary depending on the version of our package: | ||
|
||
``"linear"`` | ||
Selects over linear models regularized by L1 or L2 norm | ||
|
||
``"poly"`` | ||
Selects over regularized linear models with polynomial features of different degrees | ||
|
||
``"forest"`` | ||
Selects over random forest models | ||
|
||
``"gbf"`` | ||
Selects over gradient boosting models | ||
|
||
``"nnet"`` | ||
Selects over neural network models | ||
|
||
``"automl"`` | ||
Selects over all of the above (note that this will be potentially time consuming) | ||
|
||
* A list of any of the above | ||
|
||
* An implementation of :class:`.ModelSelector`, which is a class that supports a two-stage model selection and fitting process | ||
(this is used internally by our library and is not generally intended to be used directly by end users). | ||
|
||
Most subclasses also use the string `"auto"`` as a special default value to automatically select a model from an appropriate smaller subset of models than would be generated by "automl". |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.