DocumentationClassesHalvingRandomSearchCV

Class: HalvingRandomSearchCV

Randomized search on hyper parameters.

The search strategy starts evaluating all the candidates with a small amount of resources and iteratively selects the best candidates, using more and more resources.

The candidates are sampled at random from the parameter space and the number of sampled candidates is determined by n_candidates.

Read more in the User guide.

Python Reference

Constructors

new HalvingRandomSearchCV()

new HalvingRandomSearchCV(opts?): HalvingRandomSearchCV

Parameters

ParameterTypeDescription
opts?object-
opts.aggressive_elimination?booleanThis is only relevant in cases where there isn’t enough resources to reduce the remaining candidates to at most factor after the last iteration. If true, then the search process will ‘replay’ the first iteration for as long as needed until the number of candidates is small enough. This is false by default, which means that the last iteration may evaluate more than factor candidates. See Aggressive elimination of candidates for more details.
opts.cv?numberDetermines the cross-validation splitting strategy. Possible inputs for cv are:
opts.error_score?"raise"Value to assign to the score if an error occurs in estimator fitting. If set to ‘raise’, the error is raised. If a numeric value is given, FitFailedWarning is raised. This parameter does not affect the refit step, which will always raise the error. Default is np.nan.
opts.estimator?anyThis is assumed to implement the scikit-learn estimator interface. Either estimator needs to provide a score function, or scoring must be passed.
opts.factor?numberThe ‘halving’ parameter, which determines the proportion of candidates that are selected for each subsequent iteration. For example, factor=3 means that only one third of the candidates are selected.
opts.max_resources?numberThe maximum number of resources that any candidate is allowed to use for a given iteration. By default, this is set n_samples when resource='n_samples' (default), else an error is raised.
opts.min_resources?number | "exhaust" | "smallest"The minimum amount of resource that any candidate is allowed to use for a given iteration. Equivalently, this defines the amount of resources r0 that are allocated for each candidate at the first iteration.
opts.n_candidates?number | "exhaust"The number of candidate parameters to sample, at the first iteration. Using ‘exhaust’ will sample enough candidates so that the last iteration uses as many resources as possible, based on min_resources, max_resources and factor. In this case, min_resources cannot be ‘exhaust’.
opts.n_jobs?numberNumber of jobs to run in parallel. undefined means 1 unless in a joblib.parallel_backend context. \-1 means using all processors. See Glossary for more details.
opts.param_distributions?anyDictionary with parameters names (str) as keys and distributions or lists of parameters to try. Distributions must provide a rvs method for sampling (such as those from scipy.stats.distributions). If a list is given, it is sampled uniformly. If a list of dicts is given, first a dict is sampled uniformly, and then a parameter is sampled using that dict as above.
opts.random_state?numberPseudo random number generator state used for subsampling the dataset when resources != 'n_samples'. Also used for random uniform sampling from lists of possible values instead of scipy.stats distributions. Pass an int for reproducible output across multiple function calls. See Glossary.
opts.refit?booleanIf true, refit an estimator using the best found parameters on the whole dataset. The refitted estimator is made available at the best_estimator_ attribute and permits using predict directly on this HalvingRandomSearchCV instance.
opts.resource?stringDefines the resource that increases with each iteration. By default, the resource is the number of samples. It can also be set to any parameter of the base estimator that accepts positive integer values, e.g. ‘n_iterations’ or ‘n_estimators’ for a gradient boosting estimator. In this case max_resources cannot be ‘auto’ and must be set explicitly.
opts.return_train_score?booleanIf false, the cv_results_ attribute will not include training scores. Computing training scores is used to get insights on how different parameter settings impact the overfitting/underfitting trade-off. However computing the scores on the training set can be computationally expensive and is not strictly required to select the parameters that yield the best generalization performance.
opts.scoring?stringA single string (see The scoring parameter: defining model evaluation rules) or a callable (see Defining your scoring strategy from metric functions) to evaluate the predictions on the test set. If undefined, the estimator’s score method is used.
opts.verbose?numberControls the verbosity: the higher, the more messages.

Returns HalvingRandomSearchCV

Defined in generated/model_selection/HalvingRandomSearchCV.ts:27

Properties

PropertyTypeDefault valueDefined in
_isDisposedbooleanfalsegenerated/model_selection/HalvingRandomSearchCV.ts:25
_isInitializedbooleanfalsegenerated/model_selection/HalvingRandomSearchCV.ts:24
_pyPythonBridgeundefinedgenerated/model_selection/HalvingRandomSearchCV.ts:23
idstringundefinedgenerated/model_selection/HalvingRandomSearchCV.ts:20
optsanyundefinedgenerated/model_selection/HalvingRandomSearchCV.ts:21

Accessors

best_estimator_

Get Signature

get best_estimator_(): Promise<any>

Estimator that was chosen by the search, i.e. estimator which gave highest score (or smallest loss if specified) on the left out data. Not available if refit=False.

Returns Promise<any>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:845


best_index_

Get Signature

get best_index_(): Promise<number>

The index (of the cv_results_ arrays) which corresponds to the best candidate parameter setting.

The dict at search.cv_results_\['params'\]\[search.best_index_\] gives the parameter setting for the best model, that gives the highest mean score (search.best_score_).

Returns Promise<number>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:928


best_params_

Get Signature

get best_params_(): Promise<any>

Parameter setting that gave the best results on the hold out data.

Returns Promise<any>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:899


best_score_

Get Signature

get best_score_(): Promise<number>

Mean cross-validated score of the best_estimator.

Returns Promise<number>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:872


cv_results_

Get Signature

get cv_results_(): Promise<any>

A dict with keys as column headers and values as columns, that can be imported into a pandas DataFrame. It contains lots of information for analysing the results of a search. Please refer to the User guide for details.

Returns Promise<any>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:818


feature_names_in_

Get Signature

get feature_names_in_(): Promise<ArrayLike>

Names of features seen during fit. Only defined if best_estimator_ is defined (see the documentation for the refit parameter for more details) and that best_estimator_ exposes feature_names_in_ when fit.

Returns Promise<ArrayLike>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:1065


max_resources_

Get Signature

get max_resources_(): Promise<number>

The maximum number of resources that any candidate is allowed to use for a given iteration. Note that since the number of resources used at each iteration must be a multiple of min_resources_, the actual number of resources used at the last iteration may be smaller than max_resources_.

Returns Promise<number>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:683


min_resources_

Get Signature

get min_resources_(): Promise<number>

The amount of resources that are allocated for each candidate at the first iteration.

Returns Promise<number>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:710


multimetric_

Get Signature

get multimetric_(): Promise<boolean>

Whether or not the scorers compute several metrics.

Returns Promise<boolean>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:1038


n_candidates_

Get Signature

get n_candidates_(): Promise<any>

The number of candidate parameters that were evaluated at each iteration.

Returns Promise<any>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:629


n_iterations_

Get Signature

get n_iterations_(): Promise<number>

The actual number of iterations that were run. This is equal to n_required_iterations_ if aggressive_elimination is true. Else, this is equal to min(n_possible_iterations_, n_required_iterations_).

Returns Promise<number>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:737


n_possible_iterations_

Get Signature

get n_possible_iterations_(): Promise<number>

The number of iterations that are possible starting with min_resources_ resources and without exceeding max_resources_.

Returns Promise<number>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:764


n_remaining_candidates_

Get Signature

get n_remaining_candidates_(): Promise<number>

The number of candidate parameters that are left after the last iteration. It corresponds to ceil(n_candidates\[-1\] / factor)

Returns Promise<number>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:656


n_required_iterations_

Get Signature

get n_required_iterations_(): Promise<number>

The number of iterations that are required to end up with less than factor candidates at the last iteration, starting with min_resources_ resources. This will be smaller than n_possible_iterations_ when there isn’t enough resources.

Returns Promise<number>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:791


n_resources_

Get Signature

get n_resources_(): Promise<any>

The amount of resources used at each iteration.

Returns Promise<any>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:602


n_splits_

Get Signature

get n_splits_(): Promise<number>

The number of cross-validation splits (folds/iterations).

Returns Promise<number>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:982


py

Get Signature

get py(): PythonBridge

Returns PythonBridge

Set Signature

set py(pythonBridge): void

Parameters

ParameterType
pythonBridgePythonBridge

Returns void

Defined in generated/model_selection/HalvingRandomSearchCV.ts:132


refit_time_

Get Signature

get refit_time_(): Promise<number>

Seconds used for refitting the best model on the whole dataset.

This is present only if refit is not false.

Returns Promise<number>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:1011


scorer_

Get Signature

get scorer_(): Promise<any>

Scorer function used on the held out data to choose the best parameters for the model.

Returns Promise<any>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:955

Methods

decision_function()

decision_function(opts): Promise<ArrayLike>

Call decision_function on the estimator with the best found parameters.

Only available if refit=True and the underlying estimator supports decision_function.

Parameters

ParameterTypeDescription
optsobject-
opts.X?anyMust fulfill the input assumptions of the underlying estimator.

Returns Promise<ArrayLike>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:207


dispose()

dispose(): Promise<void>

Disposes of the underlying Python resources.

Once dispose() is called, the instance is no longer usable.

Returns Promise<void>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:188


fit()

fit(opts): Promise<any>

Run fit with all sets of parameters.

Parameters

ParameterTypeDescription
optsobject-
opts.params?anyParameters passed to the fit method of the estimator.
opts.X?ArrayLikeTraining vector, where n_samples is the number of samples and n_features is the number of features.
opts.y?ArrayLikeTarget relative to X for classification or regression; undefined for unsupervised learning.

Returns Promise<any>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:243


get_metadata_routing()

get_metadata_routing(opts): Promise<any>

Get metadata routing of this object.

Please check User Guide on how the routing mechanism works.

Parameters

ParameterTypeDescription
optsobject-
opts.routing?anyA MetadataRouter encapsulating routing information.

Returns Promise<any>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:289


init()

init(py): Promise<void>

Initializes the underlying Python resources.

This instance is not usable until the Promise returned by init() resolves.

Parameters

ParameterType
pyPythonBridge

Returns Promise<void>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:145


inverse_transform()

inverse_transform(opts): Promise<ArrayLike>

Call inverse_transform on the estimator with the best found params.

Only available if the underlying estimator implements inverse_transform and refit=True.

Parameters

ParameterTypeDescription
optsobject-
opts.X?anyMust fulfill the input assumptions of the underlying estimator.
opts.Xt?anyMust fulfill the input assumptions of the underlying estimator.

Returns Promise<ArrayLike>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:327


predict()

predict(opts): Promise<ArrayLike>

Call predict on the estimator with the best found parameters.

Only available if refit=True and the underlying estimator supports predict.

Parameters

ParameterTypeDescription
optsobject-
opts.X?anyMust fulfill the input assumptions of the underlying estimator.

Returns Promise<ArrayLike>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:370


predict_log_proba()

predict_log_proba(opts): Promise<ArrayLike>

Call predict_log_proba on the estimator with the best found parameters.

Only available if refit=True and the underlying estimator supports predict_log_proba.

Parameters

ParameterTypeDescription
optsobject-
opts.X?anyMust fulfill the input assumptions of the underlying estimator.

Returns Promise<ArrayLike>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:406


predict_proba()

predict_proba(opts): Promise<ArrayLike>

Call predict_proba on the estimator with the best found parameters.

Only available if refit=True and the underlying estimator supports predict_proba.

Parameters

ParameterTypeDescription
optsobject-
opts.X?anyMust fulfill the input assumptions of the underlying estimator.

Returns Promise<ArrayLike>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:444


score()

score(opts): Promise<number>

Return the score on the given data, if the estimator has been refit.

This uses the score defined by scoring where provided, and the best_estimator_.score method otherwise.

Parameters

ParameterTypeDescription
optsobject-
opts.params?anyParameters to be passed to the underlying scorer(s).
opts.X?ArrayLike[]Input data, where n_samples is the number of samples and n_features is the number of features.
opts.y?ArrayLike[]Target relative to X for classification or regression; undefined for unsupervised learning.

Returns Promise<number>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:482


score_samples()

score_samples(opts): Promise<ArrayLike>

Call score_samples on the estimator with the best found parameters.

Only available if refit=True and the underlying estimator supports score_samples.

Parameters

ParameterTypeDescription
optsobject-
opts.X?anyData to predict on. Must fulfill input requirements of the underlying estimator.

Returns Promise<ArrayLike>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:528


transform()

transform(opts): Promise<ArrayLike>

Call transform on the estimator with the best found parameters.

Only available if the underlying estimator supports transform and refit=True.

Parameters

ParameterTypeDescription
optsobject-
opts.X?anyMust fulfill the input assumptions of the underlying estimator.

Returns Promise<ArrayLike>

Defined in generated/model_selection/HalvingRandomSearchCV.ts:566