次の方法で共有


hyperdrive パッケージ

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

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

モジュール

error_definition

HyperDrive SDK のエラー コード定義。

error_strings

HyperDrive SDK 全体で使用されるエラー文字列のコレクション。

exceptions

HyperDrive によってスローされる例外。

parameter_expressions

ハイパーパラメーター検索空間を記述するために HyperDrive で使用できる関数を定義します。

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

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

クラス

BanditPolicy

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

余裕期間、slack_amount、評価間隔を使用して BanditPolicy を初期化します。

BayesianParameterSampling

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

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

BayesianParameterSampling を初期化します。

EarlyTerminationPolicy

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

早期終了ポリシーを初期化します。

GridParameterSampling

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

GridParameterSampling を初期化します。

HyperDriveConfig

HyperDrive の実行を定義する構成。

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

HyperDriveConfig を初期化します。

HyperDriveRun

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

このクラスは、HyperDrive の実行と生成された各子実行の管理、状態の確認、実行の詳細の取得に使用できます。

HyperDrive の実行を初期化します。

HyperDriveRunConfig

HyperDrive の実行を定義する構成。

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

HyperDriveConfig を初期化します。

HyperParameterSampling

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

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

HyperParameterSampling を初期化します。

MedianStoppingPolicy

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

MedianStoppingPolicy を初期化します。

NoTerminationPolicy

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

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

NoTerminationPolicy を初期化します。

RandomParameterSampling

ハイパーパラメーター検索空間のランダム サンプリングを定義します。

RandomParameterSampling を初期化します。

TruncationSelectionPolicy

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

TruncationSelectionPolicy を初期化します。

列挙型

PrimaryMetricGoal

ハイパーパラメーター調整でサポートされるメトリック目標を定義します。

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

プライマリ メトリック名と目標は、HyperDrive の実行を構成するときに、 HyperDriveConfig クラスで指定されます。

関数

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

平均 mu と標準偏差 σ で正規分布する実値を指定します。

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

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 の均一分布を指定します。

これは、目的が "smooth" である不連続変数に適しており、値のサイズによって滑らかになりますが、上下の両方に境界を付ける必要があります。

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, upper] にランダムな整数のセットを指定します。

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

randint(upper)

パラメーター

名前 説明
upper
必須
int

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

戻り値

説明

確率的な式。

uniform

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

uniform(min_value, max_value)

パラメーター

名前 説明
min_value
必須

範囲内の最小値 (包含的)。

max_value
必須

範囲内の最大値 (包含的)。

戻り値

説明

確率的な式。