skactiveml.stream.budgetmanager.RandomBudgetManager#

class skactiveml.stream.budgetmanager.RandomBudgetManager(random_state=None, w=100, budget=None)[source]#

Bases: EstimatedBudgetZliobaite

Budget manager which checks, whether the specified budget has been exhausted already. If not, a sample is queried, when the utility is higher than the specified budget. If budget is available, samples are queried randomly with a probability of budget %. See also EstimatedBudgetZliobaite.

Parameters
random_stateint or RandomState instance or None, default=None

Controls the randomness of the budget manager.

wint, default=100

Specifies the size of the memory window. Controlls the budget in the last w steps taken.

budgetfloat, default=None

Specifies the ratio of samples which are allowed to be sampled, with 0 <= budget <= 1. If budget is None, it is replaced with the default budget 0.1.

Methods

get_metadata_routing()

Get metadata routing of this object.

get_params([deep])

Get parameters for this estimator.

query_by_utility(utilities)

Ask the budget manager which utilities are sufficient to query the corresponding labels.

set_params(**params)

Set the parameters of this estimator.

update(candidates, queried_indices)

Updates the budget manager.

get_metadata_routing()#

Get metadata routing of this object.

Please check User Guide on how the routing mechanism works.

Returns
routingMetadataRequest

A MetadataRequest encapsulating routing information.

get_params(deep=True)#

Get parameters for this estimator.

Parameters
deepbool, default=True

If True, will return the parameters for this estimator and contained subobjects that are estimators.

Returns
paramsdict

Parameter names mapped to their values.

query_by_utility(utilities)[source]#

Ask the budget manager which utilities are sufficient to query the corresponding labels.

Parameters
utilitiesarray-like of shape (n_samples,)

The utilities provided by the stream-based active learning strategy, which are used to determine whether querying a sample is worth it given the budgeting constraint.

Returns
queried_indicesnp.ndarray of shape (n_queried_indices,)

The indices of samples in candidates whose labels are queried, with 0 <= queried_indices <= n_candidates.

set_params(**params)#

Set the parameters of this estimator.

The method works on simple estimators as well as on nested objects (such as Pipeline). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.

Parameters
**paramsdict

Estimator parameters.

Returns
selfestimator instance

Estimator instance.

update(candidates, queried_indices)[source]#

Updates the budget manager.

Parameters
candidates{array-like, sparse matrix} of shape (n_samples, n_features)

The samples which may be queried. Sparse matrices are accepted only if they are supported by the base query strategy.

queried_indicesnp.ndarray of shape (n_queried_indices,)

The indices of samples in candidates whose labels are queried, with 0 <= queried_indices <= n_candidates.

Returns
selfSplitBudgetManager

The budget manager returns itself, after it is updated.