hyperdrive package

ハイパーパラメーターのチューニングをサポートするモジュールとクラスが含まれています。

ハイパーパラメーターは、トレーニングプロセスをガイドするモデルトレーニング用に選択できる調整可能なパラメーターです。 HyperDrive パッケージは、これらのパラメーターの選択を自動化するのに役立ちます。 たとえば、パラメーターの検索スペースを不連続または連続として定義し、検索スペースにランダム、グリッド、またはベイジアンとしてサンプリングすることができます。 また、ハイパーパラメーターのチューニング実験で最適化するプライマリメトリックを指定し、そのメトリックを最小化するか、最大化するかを指定できます。 また、適切に実行されていない実験の実行が取り消され、新しく開始される早期終了ポリシーを定義することもできます。 HyperDrive の再利用可能な機械学習ワークフローを定義するには、を使用して hyper_drive_step を作成 Pipeline します。

Modules

exceptions

ハイパードライブによってスローされた例外。

parameter_expressions

ハイパーパラメーターの検索スペースを表すためにハイパードライブで使用できる関数を定義します。

これらの関数は、さまざまな種類のハイパーパラメーター分布を指定するために使用されます。 この分布は、ハイパーパラメータースイープのサンプリングを構成するときに定義されます。 たとえば、RandomParameterSampling クラスを使用する場合、一連の不連続値または連続値の分布からサンプリングすることを選択できます。 この場合は、choice(*options) 関数を使用して不連続値のセットを生成し、uniform(min_value, max_value) 関数を使用して連続値の分布を生成できます。

これらの関数の使用例については、「チュートリアル: https://docs.microsoft.com/azure/machine-learning/how-to-tune-hyperparameters」を参照してください。

Classes

BanditPolicy

余裕期間の基準に基づいた早期終了ポリシーと、評価の頻度と遅延間隔を定義します。

BayesianParameterSampling

ハイパーパラメーターの検索スペースに対するベイジアンサンプリングを定義します。

ベイジアンサンプリングは、前のサンプルの実行方法に基づいて、ハイパーパラメーターの次のサンプルをインテリジェントに選択しようとします。これにより、新しいサンプルによってレポートされるプライマリメトリックが向上します。

EarlyTerminationPolicy

初期のすべての終了ポリシーの抽象基本クラス。

GridParameterSampling

ハイパーパラメーターの検索領域に対するグリッドのサンプリングを定義します。

HyperDriveConfig

ハイパードライブの実行を定義する構成。

HyperDrive 構成には、ハイパーパラメーター空間サンプリング、終了ポリシー、プライマリメトリック、構成からの再開、推定、および実験の実行対象となるコンピューティングターゲットに関する情報が含まれます。

HyperDriveRun

HyperDriveRun には、送信された HyperDrive 実験の詳細が含まれています。

このクラスを使用すると、ハイパードライブの実行と生成された各子の実行の詳細を管理、確認、および取得できます。

HyperDriveRunConfig

ハイパードライブの実行を定義する構成。

構成には、パラメーター空間サンプリング、終了ポリシー、プライマリメトリック、推定評価、および実験を実行するコンピューティングターゲットに関する情報が含まれます。

HyperParameterSampling

すべてのハイパーパラメーターサンプリングアルゴリズムの抽象基本クラス。

このクラスは、、、およびの各派生サンプリングクラスのハイパーパラメーター空間、サンプリングメソッド、およびその他のプロパティをカプセル化し BayesianParameterSampling GridParameterSampling RandomParameterSampling ます。

MedianStoppingPolicy

すべての実行のプライマリメトリックの実行平均に基づいて早期終了ポリシーを定義します。

NoTerminationPolicy

早期終了ポリシーが適用されないことを指定します。

各実行は、完了するまで実行されます。

PrimaryMetricGoal

ハイパーパラメーターのチューニングに対してサポートされているメトリックの目標を定義します。

メトリックの目標を使用して、メトリックの値がより高いか悪化しているかを判断します。 メトリック目標は、プライマリメトリックに基づいて実行を比較するときに使用されます。 たとえば、精度を最大化したり、エラーを最小化したりすることができます。

プライマリメトリックの名前と目標は、ハイパードライブの実行を構成するときに HyperDriveRunConfig クラスで指定します。

RandomParameterSampling

ハイパーパラメーターの検索領域に対するランダムサンプリングを定義します。

TruncationSelectionPolicy

各評価間隔での実行の特定の割合を取り消す早期終了ポリシーを定義します。

Functions

choice(*options)

サンプルの個別のオプションセットを指定します。

choice(*options)

Parameters

options
list

選択するオプションの一覧。

Returns

ストキャスティクス式。

Return type

lognormal(mu, sigma)

Exp に従って描画される値を指定します (標準 (mu、シグマ))。

通常、戻り値の対数は分布します。 最適化する場合、この変数は正の値に制限されます。

lognormal(mu, sigma)

Parameters

mu
float

正規分布の平均。

sigma
float

正規分布の標準偏差。

Returns

ストキャスティクス式。

Return type

loguniform(min_value, max_value)

ログの一様分布を指定します。

戻り値の対数が一様に分布するように、値は exp (uniform (min_value, max_value)) に従って描画されます。 最適化する場合、この変数は [exp (min_value), exp (max_value)] の間隔に制限されます。

loguniform(min_value, max_value)

Parameters

min_value
float

範囲内の最小値は exp (min_value) です。

max_value
float

範囲内の最大値は exp (max_value) (包含) です。

Returns

ストキャスティクス式。

Return type

normal(mu, sigma)

通常、平均 mu および標準偏差シグマを使用して分布した実際の値を指定します。

最適化する場合、これは制約のない変数です。

normal(mu, sigma)

Parameters

mu
float

正規分布の平均。

sigma
float

正規分布の標準偏差。

Returns

ストキャスティクス式。

Return type

randint(upper)

[0, upper] の範囲のランダムな整数のセットを指定します。

この分布のセマンティクスは、遠くの整数値と比較して、近くの整数値の間に損失関数の相関関係がなくなることを意味します。 これは、たとえば、ランダムシードを記述するための適切な分布です。 損失関数が近くの整数値との相関関係にある可能性が高い場合は、quniform、qloguniform、quniform、quniform 値などの "量子化された" 連続分布のいずれかを使用することをお勧めします。

randint(upper)

Parameters

upper
int

整数の範囲の排他的上限。

Returns

ストキャスティクス式。

Return type

qlognormal(mu, sigma, q)

Round (exp (標準 (mu, シグマ))/q) * q のような値を指定します。

目標が滑らかであり、変数のサイズを使用して滑らかになる不連続変数に適しています。これは、1つの辺から境界されています。

qlognormal(mu, sigma, q)

Parameters

mu
float

正規分布の平均。

sigma
float

正規分布の標準偏差。

q
int

スムージング係数。

Returns

ストキャスティクス式。

Return type

qloguniform(min_value, max_value, q)

Round (exp (uniform (min_value, max_value)/q) * q という形式の一様分布を指定します。

これは、目標が "smooth" である離散変数に適しています。また、値のサイズによって滑らかになりますが、上と下の両方で境界を設定する必要があります。

qloguniform(min_value, max_value, q)

Parameters

min_value
float

範囲内の最小値 (を含む)。

max_value
float

範囲内の最大値 (を含む)。

q
int

スムージング係数。

Returns

ストキャスティクス式。

Return type

qnormal(mu, sigma, q)

Round (normal (mu, sigma)/q) * q のような値を指定します。

Mu の周りに値を取り、基本的には無制限である不連続変数に適しています。

qnormal(mu, sigma, q)

Parameters

mu
float

正規分布の平均。

sigma
float

正規分布の標準偏差。

q
int

スムージング係数。

Returns

ストキャスティクス式。

Return type

quniform(min_value, max_value, q)

Round (uniform (min_value, max_value)/q) * q 形式の一様分布を指定します。

これは、目標が依然としてやや "smooth" であるが、上と下の両方で境界を設定する必要がある不連続値に適しています。

quniform(min_value, max_value, q)

Parameters

min_value
float

範囲内の最小値 (を含む)。

max_value
float

範囲内の最大値 (を含む)。

q
int

スムージング係数。

Returns

ストキャスティクス式。

Return type

uniform(min_value, max_value)

サンプルの取得元となる一様分布を指定します。

uniform(min_value, max_value)

Parameters

min_value
float

範囲内の最小値 (を含む)。

max_value
float

範囲内の最大値 (を含む)。

Returns

ストキャスティクス式。

Return type