Поделиться через


hyperdrive Пакет

Содержит модули и классы, поддерживающие настройку гиперпараметров.

Гиперпараметры — это настраиваемые параметры, которые выбираются для обучения моделей, которые определяют процесс обучения. Пакет HyperDrive помогает автоматизировать выбор этих параметров. Например, можно определить пространство поиска параметров как дискретное или непрерывное, а метод выборки в пространстве поиска — случайным, сеткой или Байезианом. Кроме того, можно указать основную метрику для оптимизации в эксперименте настройки гиперпараметра, а также свести к минимуму или максимизировать эту метрику. Вы также можете определить политики раннего завершения, в которых неудовлетворительно выполнение экспериментов отменяются и запускаются новые. Чтобы определить повторно используемый рабочий процесс машинного обучения для HyperDrive, используйте hyper_drive_step для создания Pipeline.

Модули

error_definition

Определения кода ошибки для пакета SDK HyperDrive.

error_strings

Коллекция строк ошибок, используемых в пакете SDK HyperDrive.

exceptions

Исключения, создаваемые HyperDrive.

parameter_expressions

Определяет функции, которые можно использовать в HyperDrive для описания пространства поиска гиперпараметров.

Эти функции используются для указания различных типов распределения гиперпараметров. Дистрибутивы определяются при настройке выборки для очистки гиперпараметра. Например, при использовании RandomParameterSampling класса можно выбрать выборку из набора дискретных значений или распределения непрерывных значений. В этом случае можно использовать choice функцию для создания дискретного набора значений и uniform функций для создания распределения непрерывных значений.

Примеры использования этих функций см. в руководстве. https://docs.microsoft.com/azure/machine-learning/how-to-tune-hyperparameters

Классы

BanditPolicy

Определяет политику раннего завершения на основе критериев slack, частоты и интервала задержки для оценки.

Инициализировать BanditPolicy с коэффициентом slack, slack_amount и интервалом оценки.

BayesianParameterSampling

Определяет выборку Bayesian в пространстве поиска гиперпараметра.

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

Инициализировать BayesianParameterSampling.

EarlyTerminationPolicy

Абстрактный базовый класс для всех политик раннего завершения.

Инициализация политики раннего завершения.

GridParameterSampling

Определяет выборку сетки по пространствам поиска гиперпараметров.

Инициализация GridParameterSampling.

HyperDriveConfig

Конфигурация, определяющая запуск HyperDrive.

Конфигурация HyperDrive включает сведения о выборке пространства гиперпараметра, политике завершения, основной метрике, возобновлении из конфигурации, оценки и целевом объекте вычислений для выполнения эксперимента.

Инициализация HyperDriveConfig.

HyperDriveRun

HyperDriveRun содержит сведения о отправленном эксперименте HyperDrive.

Этот класс можно использовать для управления, проверки состояния и получения сведений о выполнении для запуска HyperDrive и каждого созданного дочернего запуска.

Инициализация запуска HyperDrive.

HyperDriveRunConfig

Конфигурация, определяющая запуск HyperDrive.

Конфигурация включает сведения о выборке пространства параметров, политике завершения, первичной метрике, оценке и целевом объекте вычислений для выполнения эксперимента.

Инициализация HyperDriveConfig.

HyperParameterSampling

Абстрактный базовый класс для всех алгоритмов выборки гиперпараметров.

Этот класс инкапсулирует пространство гиперпараметров, метод выборки и дополнительные свойства для производных классов выборки: BayesianParameterSampling, GridParameterSamplingи RandomParameterSampling.

Инициализация HyperParameterSampling.

MedianStoppingPolicy

Определяет политику раннего завершения на основе сред выполнения основной метрики всех запусков.

Инициализация MedianStoppingPolicy.

NoTerminationPolicy

Указывает, что политика досрочного завершения не применяется.

Каждое выполнение будет выполняться до завершения.

Инициализация NoTerminationPolicy.

RandomParameterSampling

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

Инициализация RandomParameterSampling.

TruncationSelectionPolicy

Определяет политику раннего завершения, которая отменяет заданный процент запусков по каждому интервалу оценки.

Инициализация усеченияSelectionPolicy.

Перечисления

PrimaryMetricGoal

Определяет поддерживаемые цели метрик для настройки гиперпараметров.

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

Имя и цель первичной метрики указываются в HyperDriveConfig классе при настройке запуска HyperDrive.

Функции

choice

Укажите дискретный набор параметров для примера.

choice(*options)

Параметры

Имя Описание
options
Обязательно

Список параметров для выбора.

Возвращаемое значение

Тип Описание

Стохастичное выражение.

lognormal

Укажите значение, рисуемое в соответствии с exp(normal(mu, sigma)).

Логарифм возвращаемого значения обычно распределяется. При оптимизации эта переменная ограничена положительной.

lognormal(mu, sigma)

Параметры

Имя Описание
mu
Обязательно

Среднее значение нормального распределения.

sigma
Обязательно

Стандартное отклонение от нормального распределения.

Возвращаемое значение

Тип Описание

Стохастичное выражение.

loguniform

Укажите равномерное распределение журналов.

Значение рисуется в соответствии с exp(uniform(min_value, max_value)), чтобы логарифм возвращаемого значения равномерно распределялся. При оптимизации эта переменная ограничена интервалом [exp(min_value), exp(max_value)]

loguniform(min_value, max_value)

Параметры

Имя Описание
min_value
Обязательно

Минимальное значение в диапазоне будет exp(min_value)(включительно).

max_value
Обязательно

Максимальное значение в диапазоне будет exp(max_value) (включительно).

Возвращаемое значение

Тип Описание

Стохастичное выражение.

normal

Укажите реальное значение, которое обычно распределено со средним мю и стандартным отклонением сигмы.

При оптимизации это не ограниченная переменная.

normal(mu, sigma)

Параметры

Имя Описание
mu
Обязательно

Среднее значение нормального распределения.

sigma
Обязательно

стандартное отклонение нормального распределения.

Возвращаемое значение

Тип Описание

Стохастичное выражение.

qlognormal

Укажите значение, например round(exp(normal(mu, sigma)/ q) * q.

Подходит для дискретной переменной, относительно которой цель является гладкой и становится более гладкой с размером переменной, которая привязана с одной стороны.

qlognormal(mu, sigma, q)

Параметры

Имя Описание
mu
Обязательно

Среднее значение нормального распределения.

sigma
Обязательно

Стандартное отклонение от нормального распределения.

q
Обязательно
int

Коэффициент сглаживания.

Возвращаемое значение

Тип Описание

Стохастичное выражение.

qloguniform

Укажите равномерное распределение формы round(exp(uniform(min_value, max_value) / q) * q.

Это подходит для дискретной переменной, относительно которой цель является "гладкой", и становится более гладкой с размером значения, но которая должна быть привязана как выше, так и ниже.

qloguniform(min_value, max_value, q)

Параметры

Имя Описание
min_value
Обязательно

Минимальное значение в диапазоне (включительно).

max_value
Обязательно

Максимальное значение в диапазоне (включительно).

q
Обязательно
int

Коэффициент сглаживания.

Возвращаемое значение

Тип Описание

Стохастичное выражение.

qnormal

Укажите значение, например round(normal(mu, sigma) / q) * q.

Подходит для дискретной переменной, которая, вероятно, принимает значение вокруг мю, но принципиально несвязано.

qnormal(mu, sigma, q)

Параметры

Имя Описание
mu
Обязательно

Среднее значение нормального распределения.

sigma
Обязательно

Стандартное отклонение от нормального распределения.

q
Обязательно
int

Коэффициент сглаживания.

Возвращаемое значение

Тип Описание

Стохастичное выражение.

quniform

Укажите равномерное распределение формы round(uniform(min_value, max_value) / q) * q.

Это подходит для дискретного значения, относительно которого цель по-прежнему несколько "гладкая", но которая должна быть ограничена как выше, так и ниже.

quniform(min_value, max_value, q)

Параметры

Имя Описание
min_value
Обязательно

Минимальное значение в диапазоне (включительно).

max_value
Обязательно

Максимальное значение в диапазоне (включительно).

q
Обязательно
int

Коэффициент сглаживания.

Возвращаемое значение

Тип Описание

Стохастичное выражение.

randint

Укажите набор случайных целых чисел в диапазоне [0, верхний).

Семантика этого распределения заключается в том, что больше корреляции в функции потери между близлежащими целыми значениями, по сравнению с более удаленными целыми значениями. Это подходящее распределение для описания случайных семян, например. Если функция потери, вероятно, более коррелирована для рядовых целых значений, то следует использовать одно из "квантизованных" непрерывных распределений, таких как quniform, qloguniform, qnormal или qlognormal.

randint(upper)

Параметры

Имя Описание
upper
Обязательно
int

Исключенная верхняя граница диапазона целых чисел.

Возвращаемое значение

Тип Описание

Стохастичное выражение.

uniform

Укажите равномерное распределение, из которого выполняются выборки.

uniform(min_value, max_value)

Параметры

Имя Описание
min_value
Обязательно

Минимальное значение в диапазоне (включительно).

max_value
Обязательно

Максимальное значение в диапазоне (включительно).

Возвращаемое значение

Тип Описание

Стохастичное выражение.