Spec-Zone.ru › scikit-learn

ParameterSampler

classsklearn.model_selection.ParameterSampler(param_distributions, n_iter, *, random_state=None)[source]

Генератор параметров, взятых из заданных распределений.

Недетерминируемый итерируемый объект, возвращающий случайные комбинации кандидатов для поиска по гиперпараметрам. Если все параметры представлены в виде списка, производится выборка без возвращения. Если хотя бы один параметр задан как распределение, используется выборка с возвращением. Настоятельно рекомендуется использовать непрерывные распределения для непрерывных параметров.

Подробнее см. в Руководстве пользователя.

Параметры:
param_distributionsdict

Словарь с именами параметров (str) в качестве ключей и распределениями или списками параметров для проверки. Распределения должны предоставлять метод rvs для выборки (например, те, что из scipy.stats.distributions). Если задан список, он выбирается равномерно. Если задан список словарей, сначала равномерно выбирается словарь, а затем параметр выбирается с использованием этого словаря, как описано выше.

n_iterint

Количество наборов параметров, которые генерируются.

random_stateint, RandomState instance или None, по умолчанию=None

Состояние генератора псевдослучайных чисел, используемое для случайной равномерной выборки из списков возможных значений вместо распределений scipy.stats. Передайте целое число для воспроизводимого результата при нескольких вызовах функции. См. Глоссарий.

Возвращает:
paramsdict of str to any

Возвращает словари, сопоставляющие каждый параметр оценщика с выбранным значением.

Примеры

>>> from sklearn.model_selection import ParameterSampler
>>> from scipy.stats.distributions import expon
>>> import numpy as np
>>> rng = np.random.RandomState(0)
>>> param_grid = {'a':[1, 2], 'b': expon()}
>>> param_list = list(ParameterSampler(param_grid, n_iter=4,
...                                    random_state=rng))
>>> rounded_list = [dict((k, round(v, 6)) for (k, v) in d.items())
...                 for d in param_list]
>>> rounded_list == [{'b': 0.89856, 'a': 1},
...                  {'b': 0.923223, 'a': 1},
...                  {'b': 1.878964, 'a': 2},
...                  {'b': 1.038159, 'a': 2}]
True

© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.model_selection.ParameterSampler.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API