Documentation
Classes
HalvingRandomSearchCV

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 (opens in a new tab)

Constructors

constructor()

Signature

new HalvingRandomSearchCV(opts?: object): HalvingRandomSearchCV;

Parameters

NameTypeDescription
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. Default Value false
opts.cv?numberDetermines the cross-validation splitting strategy. Possible inputs for cv are: Default Value 5
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. Default Value 3
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. Default Value 'auto'
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. Default Value 'smallest'
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’. Default Value 'exhaust'
opts.n_jobs?numberNumber of jobs to run in parallel. undefined means 1 unless in a joblib.parallel\_backend (opens in a new tab) 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. Default Value true
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. Default Value 'n_samples'
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. Default Value false
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 (opens in a new tab)

Methods

decision_function()

Call decision_function on the estimator with the best found parameters.

Only available if refit=True and the underlying estimator supports decision\_function.

Signature

decision_function(opts: object): Promise<ArrayLike>;

Parameters

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

Returns

Promise<ArrayLike>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:226 (opens in a new tab)

dispose()

Disposes of the underlying Python resources.

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

Signature

dispose(): Promise<void>;

Returns

Promise<void>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:207 (opens in a new tab)

fit()

Run fit with all sets of parameters.

Signature

fit(opts: object): Promise<any>;

Parameters

NameTypeDescription
optsobject-
opts.X?ArrayLikeTraining vector, where n\_samples is the number of samples and n\_features is the number of features.
opts.fit_params?anyParameters passed to the fit method of the estimator.
opts.groups?ArrayLikeGroup labels for the samples used while splitting the dataset into train/test set. Only used in conjunction with a “Group” cv instance (e.g., GroupKFold).
opts.y?ArrayLikeTarget relative to X for classification or regression; undefined for unsupervised learning.

Returns

Promise<any>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:263 (opens in a new tab)

get_metadata_routing()

Get metadata routing of this object.

Please check User Guide on how the routing mechanism works.

Signature

get_metadata_routing(opts: object): Promise<any>;

Parameters

NameTypeDescription
optsobject-
opts.routing?anyA MetadataRequest encapsulating routing information.

Returns

Promise<any>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:319 (opens in a new tab)

init()

Initializes the underlying Python resources.

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

Signature

init(py: PythonBridge): Promise<void>;

Parameters

NameType
pyPythonBridge

Returns

Promise<void>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:145 (opens in a new tab)

inverse_transform()

Call inverse_transform on the estimator with the best found params.

Only available if the underlying estimator implements inverse\_transform and refit=True.

Signature

inverse_transform(opts: object): Promise<ArrayLike>;

Parameters

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

Returns

Promise<ArrayLike>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:359 (opens in a new tab)

predict()

Call predict on the estimator with the best found parameters.

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

Signature

predict(opts: object): Promise<ArrayLike>;

Parameters

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

Returns

Promise<ArrayLike>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:398 (opens in a new tab)

predict_log_proba()

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.

Signature

predict_log_proba(opts: object): Promise<ArrayLike>;

Parameters

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

Returns

Promise<ArrayLike>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:435 (opens in a new tab)

predict_proba()

Call predict_proba on the estimator with the best found parameters.

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

Signature

predict_proba(opts: object): Promise<ArrayLike>;

Parameters

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

Returns

Promise<ArrayLike>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:474 (opens in a new tab)

score()

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.

Signature

score(opts: object): Promise<number>;

Parameters

NameTypeDescription
optsobject-
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:513 (opens in a new tab)

score_samples()

Call score_samples on the estimator with the best found parameters.

Only available if refit=True and the underlying estimator supports score\_samples.

Signature

score_samples(opts: object): Promise<ArrayLike>;

Parameters

NameTypeDescription
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:557 (opens in a new tab)

set_fit_request()

Request metadata passed to the fit method.

Note that this method is only relevant if enable\_metadata\_routing=True (see sklearn.set\_config). Please see User Guide on how the routing mechanism works.

The options for each parameter are:

Signature

set_fit_request(opts: object): Promise<any>;

Parameters

NameTypeDescription
optsobject-
opts.groups?string | booleanMetadata routing for groups parameter in fit.

Returns

Promise<any>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:598 (opens in a new tab)

transform()

Call transform on the estimator with the best found parameters.

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

Signature

transform(opts: object): Promise<ArrayLike>;

Parameters

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

Returns

Promise<ArrayLike>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:637 (opens in a new tab)

Properties

_isDisposed

boolean = false

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:25 (opens in a new tab)

_isInitialized

boolean = false

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:24 (opens in a new tab)

_py

PythonBridge

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:23 (opens in a new tab)

id

string

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:20 (opens in a new tab)

opts

any

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:21 (opens in a new tab)

Accessors

best_estimator_

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.

Signature

best_estimator_(): Promise<any>;

Returns

Promise<any>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:917 (opens in a new tab)

best_index_

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\_).

Signature

best_index_(): Promise<number>;

Returns

Promise<number>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:1000 (opens in a new tab)

best_params_

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

Signature

best_params_(): Promise<any>;

Returns

Promise<any>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:971 (opens in a new tab)

best_score_

Mean cross-validated score of the best_estimator.

Signature

best_score_(): Promise<number>;

Returns

Promise<number>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:944 (opens in a new tab)

cv_results_

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.

Signature

cv_results_(): Promise<any>;

Returns

Promise<any>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:890 (opens in a new tab)

feature_names_in_

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.

Signature

feature_names_in_(): Promise<ArrayLike>;

Returns

Promise<ArrayLike>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:1137 (opens in a new tab)

max_resources_

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\_.

Signature

max_resources_(): Promise<number>;

Returns

Promise<number>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:755 (opens in a new tab)

min_resources_

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

Signature

min_resources_(): Promise<number>;

Returns

Promise<number>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:782 (opens in a new tab)

multimetric_

Whether or not the scorers compute several metrics.

Signature

multimetric_(): Promise<boolean>;

Returns

Promise<boolean>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:1110 (opens in a new tab)

n_candidates_

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

Signature

n_candidates_(): Promise<any>;

Returns

Promise<any>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:701 (opens in a new tab)

n_iterations_

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\_).

Signature

n_iterations_(): Promise<number>;

Returns

Promise<number>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:809 (opens in a new tab)

n_possible_iterations_

The number of iterations that are possible starting with min\_resources\_ resources and without exceeding max\_resources\_.

Signature

n_possible_iterations_(): Promise<number>;

Returns

Promise<number>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:836 (opens in a new tab)

n_remaining_candidates_

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

Signature

n_remaining_candidates_(): Promise<number>;

Returns

Promise<number>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:728 (opens in a new tab)

n_required_iterations_

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.

Signature

n_required_iterations_(): Promise<number>;

Returns

Promise<number>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:863 (opens in a new tab)

n_resources_

The amount of resources used at each iteration.

Signature

n_resources_(): Promise<any>;

Returns

Promise<any>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:674 (opens in a new tab)

n_splits_

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

Signature

n_splits_(): Promise<number>;

Returns

Promise<number>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:1054 (opens in a new tab)

py

Signature

py(): PythonBridge;

Returns

PythonBridge

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:132 (opens in a new tab)

Signature

py(pythonBridge: PythonBridge): void;

Parameters

NameType
pythonBridgePythonBridge

Returns

void

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:136 (opens in a new tab)

refit_time_

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

This is present only if refit is not false.

Signature

refit_time_(): Promise<number>;

Returns

Promise<number>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:1083 (opens in a new tab)

scorer_

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

Signature

scorer_(): Promise<any>;

Returns

Promise<any>

Defined in: generated/model_selection/HalvingRandomSearchCV.ts:1027 (opens in a new tab)