AutoMLConfig クラス

Azure Machine Learning で自動化された ML 実験を送信するための構成を示します。

この構成オブジェクトには、実験の実行を構成するためのパラメーターのほか、実行時に使用されるトレーニング データが含まれ、保持されます。 設定の選択に関するガイダンスについては、https://aka.ms/AutoMLConfig を参照してください。

AutoMLConfig を作成します。

継承
builtins.object
AutoMLConfig

コンストラクター

AutoMLConfig(task: str, path: str | None = None, iterations: int | None = None, primary_metric: str | None = None, positive_label: Any | None = None, compute_target: Any | None = None, spark_context: Any | None = None, X: Any | None = None, y: Any | None = None, sample_weight: Any | None = None, X_valid: Any | None = None, y_valid: Any | None = None, sample_weight_valid: Any | None = None, cv_splits_indices: List[List[Any]] | None = None, validation_size: float | None = None, n_cross_validations: int | str | None = None, y_min: float | None = None, y_max: float | None = None, num_classes: int | None = None, featurization: str | FeaturizationConfig = 'auto', max_cores_per_iteration: int = 1, max_concurrent_iterations: int = 1, iteration_timeout_minutes: int | None = None, mem_in_mb: int | None = None, enforce_time_on_windows: bool = True, experiment_timeout_hours: float | None = None, experiment_exit_score: float | None = None, enable_early_stopping: bool = True, blocked_models: List[str] | None = None, blacklist_models: List[str] | None = None, exclude_nan_labels: bool = True, verbosity: int = 20, enable_tf: bool = False, model_explainability: bool = True, allowed_models: List[str] | None = None, whitelist_models: List[str] | None = None, enable_onnx_compatible_models: bool = False, enable_voting_ensemble: bool = True, enable_stack_ensemble: bool | None = None, debug_log: str = 'automl.log', training_data: Any | None = None, validation_data: Any | None = None, test_data: Any | None = None, test_size: float | None = None, label_column_name: str | None = None, weight_column_name: str | None = None, cv_split_column_names: List[str] | None = None, enable_local_managed: bool = False, enable_dnn: bool | None = None, forecasting_parameters: ForecastingParameters | None = None, **kwargs: Any)

パラメーター

task
str または Tasks
必須

実行するタスクの種類。 値は、自動 ML の解決する問題の種類に応じて、'classification'、'regression'、または 'forecasting' のいずれかを指定できます。

path
str
必須

Azure Machine Learning プロジェクト フォルダーへの完全なパスです。 指定しない場合、既定では、現在のディレクトリまたは "." が使用されます。

iterations
int
必須

自動 ML 実験中にテストする異なるアルゴリズムとパラメーターの組み合わせの合計数。 指定しない場合、既定値は 1000 反復です。

primary_metric
str または Metric
必須

モデルの選択のために、自動機械学習によって最適化されるメトリック。 自動機械学習によって、最適化できるよりも多くのメトリックが収集されます。 get_primary_metrics を使用すると、指定したタスクの有効なメトリックのリストを取得できます。 メトリックの計算方法の詳細については、https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#primary-metric を参照してください。

指定しない場合、分類タスクには精度が使用され、予測と回帰のタスクには正規化されたルート平均二乗が使用され、イメージの分類とイメージのマルチラベル分類には精度が使用され、イメージ オブジェクトの検出には平均有効桁数が使用されます。

positive_label
Any
必須

バイナリ メトリックを計算するために自動化機械学習によって使用される正のクラス ラベル。 バイナリ メトリックは、分類タスクの 2 つの条件で計算されます。

  1. ラベル列は、positive_label が渡された場合は、AutoML によって、指定された正のクラスが使用され、それ以外の場合は、AutoML によって、ラベル エンコードされた値に基づいて正のクラスが選択される二項分類タスクを示す 2 つのクラスで構成されます。
  2. positive_label が指定されたマルチクラス分類タスク

分類の詳細については、「分類シナリオのメトリック」を確認してください。

compute_target
AbstractComputeTarget
必須

自動機械学習実験を実行する Azure Machine Learning コンピューティング先。 コンピューティング先の詳細については、https://docs.microsoft.com/en-us/azure/machine-learning/concept-automated-ml#local-remote を参照してください。

spark_context
<xref:SparkContext>
必須

Spark コンテキスト。 Azure Databricks/Spark 環境内で使用される場合にのみ適用されます。

X
DataFrame または ndarray または Dataset または TabularDataset
必須

実験中にパイプラインを調整するときに使用するトレーニング特徴量。 この設定は非推奨になります。 代わりに training_data と label_column_name を使用してください。

y
DataFrame または ndarray または Dataset または TabularDataset
必須

実験中にパイプラインを調整するときに使用するトレーニング ラベル。 これは、ご自分のモデルで予測する値です。 この設定は非推奨になります。 代わりに training_data と label_column_name を使用してください。

sample_weight
DataFrame または ndarray または TabularDataset
必須

調整するパイプラインを実行するときに各トレーニング サンプルに付与する重み。各行が X データと y データ内の行に対応している必要があります。

このパラメーターは、X を指定するときに指定します。 この設定は非推奨になります。 代わりに training_data と weight_column_name を使用してください。

X_valid
DataFrame または ndarray または Dataset または TabularDataset
必須

実験中にパイプラインを調整するときに使用する検証特徴量。

指定するときは、y_valid または sample_weight_valid も指定する必要があります。 この設定は非推奨になります。 代わりに validation_data と label_column_name を使用してください。

y_valid
DataFrame または ndarray または Dataset または TabularDataset
必須

実験中にパイプラインを調整するときに使用する検証ラベル。

X_validy_valid の両方を一緒に指定する必要があります。 この設定は非推奨になります。 代わりに validation_data と label_column_name を使用してください。

sample_weight_valid
DataFrame または ndarray または TabularDataset
必須

スコア付けするパイプラインを実行するときに各検証サンプルに付与する重み。各行が X データと y データ内の行に対応している必要があります。

このパラメーターは、X_valid を指定するときに指定します。 この設定は非推奨になります。 代わりに validation_data と weight_column_name を使用してください。

cv_splits_indices
List[List[ndarray]]
必須

クロス検証用にトレーニング データを分割するインデックス。 各行は個別のクロス フォールドで、各クロスフォールド内に 2 つの numpy 配列を提供します。1 番目の配列は、トレーニング データに使用するサンプルのインデックス、2 番目の配列は検証データに使用するインデックスを設定します。 つまり、[[t1, v1], [t2, v2], ...] というようにします。t1 は 1 番目のクロス フォールドのトレーニング インデックス、v1 は 1 番目のクロス フォールドの検証インデックスです。

既存のデータを検証データとして指定するには、validation_data を使用します。 代わりに、トレーニング データから AutoML によって検証データが抽出されるようにするには、n_cross_validations または validation_size を指定します。 training_data にクロス検証列がある場合は、cv_split_column_names を使用します。

validation_size
float
必須

ユーザー検証データを指定しない場合に、検証用に保持するデータの割合。 これは、0.0 から 1.0 の範囲内 (限界値は含まない) である必要があります。

検証データを提供するには validation_data を指定します。それ以外の場合は、n_cross_validations または validation_size を設定して、指定したトレーニング データから検証データを抽出します。 カスタムのクロス検証フォールドの場合は、cv_split_column_names を使用します。

詳細については、自動機械学習のデータ分割とクロス検証の構成に関する記事をご覧ください。

n_cross_validations
int
必須

ユーザー検証データが指定されていない場合に実行するクロス検証の数。

検証データを提供するには validation_data を指定します。それ以外の場合は、n_cross_validations または validation_size を設定して、指定したトレーニング データから検証データを抽出します。 カスタムのクロス検証フォールドの場合は、cv_split_column_names を使用します。

詳細については、自動機械学習のデータ分割とクロス検証の構成に関する記事をご覧ください。

y_min
float
必須

回帰実験の y の最小値。 y_miny_max の組み合わせは、入力データ範囲に基づいてテスト セットのメトリックを正規化するために使用します。 この設定は非推奨になります。 代わりに、この値はデータから計算されます。

y_max
float
必須

回帰実験の y の最大値。 y_miny_max の組み合わせは、入力データ範囲に基づいてテスト セットのメトリックを正規化するために使用します。 この設定は非推奨になります。 代わりに、この値はデータから計算されます。

num_classes
int
必須

分類実験のラベル データ内のクラスの数。 この設定は非推奨になります。 代わりに、この値はデータから計算されます。

featurization
str または FeaturizationConfig
必須

特徴量化ステップを自動的に実行する必要があるかどうか、またはカスタマイズされた特徴量化を使用する必要があるかどうかを示す 'auto' / 'off' / FeaturizationConfig インジケーター。 注: 入力データがスパースの場合、特徴量化を有効にすることはできません。

列の種類は自動的に検出されます。 検出された列の種類の前処理と特徴量化は、次のように実行されます。

  • カテゴリ: ターゲット エンコード、one-hot エンコード、大きなカーディナリティ カテゴリの削除、不足値の不足。

  • 数値: 欠損値、クラスター距離、証拠の重みを補完します。

  • 日時: 日、秒、分、時間などのいくつかの特徴量。

  • テキスト: Bag of Words、事前トレーニングされたワードの埋め込み、テキスト ターゲットのエンコード。

詳細については、Python での自動 ML 実験の構成に関する記事をご覧ください。

特徴量化ステップをカスタマイズするには、FeaturizationConfig オブジェクトを指定します。 カスタマイズされた特徴量化は現在、一連のトランスフォーマーのブロック、列の目的の更新、トランスフォーマー パラメーターの編集、列の削除をサポートしています。 詳細については、特徴エンジニアリングのカスタマイズに関する記事をご覧ください。

注: Timeseries 特徴量は、このパラメーターに依存しない予測にタスクの種類が設定されている場合に個別に処理されます。

max_cores_per_iteration
int
必須

特定のトレーニング反復に使用するスレッドの最大数。 許容される値:

  • 1 より大きく、コンピューティング先のコアの最大数以下。

  • -1 に等しい。これは、子の実行ごと、反復ごとに可能なすべてのコアを使用することを意味します。

  • 1 に等しい。これは既定値です。

max_concurrent_iterations
int
必須

並列で実行されるイテレーションの最大数を表します。 既定値は 1 です。

  • AmlCompute クラスターは、ノードごとに 1 回の反復実行をサポートします。 複数の AutoML 実験の親が単一の AmlCompute クラスターで並行して実行される場合、すべての実験の max_concurrent_iterations 値の合計がノードの最大数以下である必要があります。 それ以外の場合は、実行は、ノードが使用可能になるまでキューに入れられます。

  • DSVM は、ノードごとに複数の反復をサポートします。 max_concurrent_iterations は、DSVM のコア数以下である必要があります。 1 つの DSVM 上で複数の実験を並行して実行する場合、すべての実験の max_concurrent_iterations 値の合計がノードの最大数以下である必要があります。

  • Databricks - max_concurrent_iterations Databricks 上のワーカー ノードの数以下である必要があります。

max_concurrent_iterations はローカル実行には適用されません。 以前は、このパラメーターの名前は concurrent_iterations でした。

iteration_timeout_minutes
int
必須

各反復で終了前に実行できる最大時間 (分)。 指定しない場合は、1 か月、すなわち 43200 分の値が使用されます。

mem_in_mb
int
必須

各反復で終了前に実行できる最大メモリ使用量。 指定しない場合は、1 PB、すなわち 1073741824 MB の値が使用されます。

enforce_time_on_windows
bool
必須

Windows で各反復でのモデルのトレーニングに時間制限を課すかどうか。 既定値は True です。 Python スクリプト ファイル (.py) から実行する場合は、Windows でのリソース制限を許可するためのドキュメントを参照してください。

experiment_timeout_hours
float
必須

すべてのイテレーションを組み合わせて、実験が終了するまでにかかる最大時間 (時間単位)。 10 進数値 (15 分を表す 0.25 など) を指定できます。 指定しない場合、既定の実験タイムアウトは 6 日です。 1 時間以下のタイムアウトを指定するには、エラーが発生しないように、データセットのサイズが 10,000,000 (行と列の積) を超えていないことを確認します。

experiment_exit_score
float
必須

実験のターゲット スコア。 実験は、このスコアに達すると終了します。 指定しない場合 (基準なし)、実験は、主要メトリックでそれ以上の進行がなくなるまで実行されます。 終了基準の詳細については、こちらの記事を参照してください。

enable_early_stopping
bool
必須

短期間でスコアが改善されない場合に、早期終了を有効にするかどうか。 既定値は True です。

早期停止ロジック:

  • 最初の 20 回の反復 (ランドマーク) に早期停止はありません。

  • 早期停止期間は 21 回目の反復で開始され、early_stopping_n_iters 回の反復を探します

    (現在は 10 に設定されています)。 つまり、停止が発生しうる最初の反復は 31 回目です。

  • AutoML により、早期停止後も 2 回のアンサンブル反復がスケジュールされることで、

    より高いスコアが得られる可能性があります。

  • 計算される最高スコアの絶対値が過去の

    early_stopping_n_iters 回の反復と同じ、つまり、early_stopping_n_iters 回の反復のスコアに改善がない場合、早期停止がトリガーされます。

blocked_models
list(str) または list(Classification) <xref:for classification task> または list(Regression) <xref:for regression task> または list(Forecasting) <xref:for forecasting task>
必須

実験で無視するアルゴリズムのリスト。 enable_tf が False の場合、TensorFlow モデルは blocked_models に含まれます。

blacklist_models
list(str) または list(Classification) <xref:for classification task> または list(Regression) <xref:for regression task> または list(Forecasting) <xref:for forecasting task>
必須

非推奨のパラメーター。代わりに blocked_models を使用してください。

exclude_nan_labels
bool
必須

ラベルに NaN 値を含む行を除外するかどうか。 既定値は True です。

verbosity
int
必須

ログ ファイルに書き込む詳細レベル。 既定値は INFO または 20 です。 許容される値は、Python ロギング ライブラリで定義されています。

enable_tf
bool
必須

Tensorflow アルゴリズムを有効/無効にするための非推奨のパラメーター。 既定値は False です。

model_explainability
bool
必須

すべての AutoML トレーニング反復の最後に、最適な AutoML モデルを説明できるかどうか。 既定値は True です。 詳細については、「解釈可能性: 自動 ML でのモデル説明」を参照してください。

allowed_models
list(str) または list(Classification) <xref:for classification task> または list(Regression) <xref:for regression task> または list(Forecasting) <xref:for forecasting task>
必須

実験を検索するモデル名のリスト。 指定しない場合、blocked_models で指定したものすべてと非推奨の TensorFlow モデルを除いたものが、タスクでサポートされるすべてのモデルで使用されます。 各タスクの種類でサポートされているモデルについては、SupportedModels クラスを参照してください。

whitelist_models
list(str) または list(Classification) <xref:for classification task> または list(Regression) <xref:for regression task> または list(Forecasting) <xref:for forecasting task>
必須

非推奨のパラメーター。代わりに allowed_models を使用してください。

enable_onnx_compatible_models
bool
必須

ONNX と互換性のあるモデルの強制を有効または無効にするかどうか。 既定値は False です。 Open Neural Network Exchange (ONNX) と Azure Machine Learning の詳細については、こちらの記事を参照してください。

forecasting_parameters
ForecastingParameters
必須

すべての予測固有のパラメーターを保持する ForecastingParameters オブジェクト。

time_column_name
str
必須

時間列の名前。 このパラメーターは、時系列の構築とその頻度の推定に使用される入力データで、予測によって datetime 列を指定する場合に必要です。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

max_horizon
int
必須

時系列頻度を単位にした目的の最大予測期間。 既定値は 1 です。

単位は、トレーニング データの時間間隔に基づきます。たとえば、予測者が予測する必要がある月ごと、週ごとなどです。タスクの種類が予測である場合、このパラメーターは必須です。 予測パラメーターの設定の詳細については、時系列予測モデルの自動トレーニングに関する記事をご覧ください。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

grain_column_names
str または list(str)
必須

時系列をグループ化するために使用される列の名前。 複数の系列を作成するために使用できます。 グレインが定義されていない場合、データ セットは 1 つの時系列であると見なされます。 このパラメーターは、タスクの種類の予測で使用します。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

target_lags
int または list(int)
必須

ターゲット列からのラグとして指定する過去の期間の数。 既定値は 1 です。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

予測時に、このパラメーターは、データの頻度に基づいてターゲット値を遅延させる行数を表します。 これは一覧または単一の整数として表されます。 独立変数と依存変数の間のリレーションシップが既定で一致しない場合、または関連付けられていない場合、ラグを使用する必要があります。 たとえば、製品の需要を予測しようとする場合、任意の月の需要は、3 か月前の特定の商品の価格によって異なる可能性があります。 この例では、モデルが正しいリレーションシップでトレーニングされるように、目標 (要求) を 3 か月間遅延させてください。 詳細については、時系列予測モデルの自動トレーニングに関する記事をご覧ください。

feature_lags
str
必須

数値特徴のラグを生成するためのフラグ。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

target_rolling_window_size
int
必須

ターゲット列のローリング期間の平均を作成するために使用する過去の期間の数。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

予測時に、このパラメーターは、予測値を生成するために使用する n 個の履歴期間を表し、トレーニング セットのサイズ以下です。 省略した場合、n はトレーニング セットの全体のサイズになります。 モデルのトレーニング時に特定の量の履歴のみを考慮する場合は、このパラメーターを指定します。

country_or_region
str
必須

休日の特徴を生成するために使用される国または地域。 これらは、2 文字の ISO 3166 国または地域コード ("US" や "GB" など) である必要があります。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

use_stl
str
必須

時系列ターゲット列の STL 分解を構成します。 use_stl は 3 つの値を取ることができます: None (既定) - stl 分解なし。'season' - 季節コンポーネントのみを生成します。season_trend - 季節と傾向の両方のコンポーネントを生成します。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

seasonality
int または str
必須

時系列の季節性を設定します。 'auto' に設定した場合、季節性は推定されます。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

short_series_handling_configuration
str
必須

AutoML で短い時系列を処理する方法を定義するパラメーター。

使用可能な値: 'auto' (既定値)、'pad'、'drop'、None。

  • auto 短い系列は、長い系列がない場合はパディングされ、それ以外は、短い系列は削除されます。
  • pad すべての短い系列はパディングされます。
  • drop すべての短い系列は削除されます。
  • None 短い系列は変更されません。 'pad' に設定した場合、テーブルには、リグレッサーの場合は 0 と空の値が、ターゲットの場合はランダム値が埋め込まれ、平均値は特定の時系列 ID のターゲット値の中央値に等しくなります。中央値が 0 以上の場合、最小の埋め込み値は 0 でクリップされます。入力:

日付

numeric_value

string

target

2020-01-01

23

green

55

値の最小数が 4 であると仮定した場合の出力:

日付

numeric_value

string

target

2019-12-29

0

NA

55.1

2019-12-30

0

NA

55.6

2019-12-31

0

NA

54.5

2020-01-01

23

green

55

注: short_series_handling_configuration と legacy short_series_handling の 2 つのパラメーターがあります。 両方のパラメーターを設定すると、次の表に示すように同期されます (short_series_handling_configuration と short_series_handling はそれぞれ、handling_configuration と handling と簡潔して表記されています)。

処理

handling_configuration

結果の処理

結果のhandling_configuration

True

自動

True

自動

True

パッド

True

自動

True

drop

True

自動

True

なし

False

なし

False

自動

False

なし

False

パッド

False

なし

False

drop

False

なし

False

なし

False

なし

freq
str または None
必須

予測頻度。

予測する場合、このパラメーターは、日単位、週単位、年単位など、予測が必要な期間を表します。予測頻度は、既定ではデータセットの頻度です。 必要に応じて、データセットよりも高い頻度 (低い頻度は不可) に設定することができます。 データを集計し、予測頻度で結果を生成します。 たとえば、毎日のデータの場合、頻度を日単位、週単位、または月単位に設定できますが、時間単位に設定することはできません。 頻度には、pandas のオフセット エイリアスを使用する必要があります。 詳細については、pandas のドキュメントをご覧ください: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects

target_aggregation_function
str または None
必須

ユーザー指定の頻度に従って時系列ターゲット列を集計するために使用する関数。 target_aggregation_function を設定しても、freq パラメーターを設定しないと、エラーが発生します。 使用可能なターゲット集計関数は、"sum"、"max"、"min"、"mean" です。

周波数

target_aggregation_function

データの規則性の修正メカニズム

なし (既定)

なし (既定)

集計は適用されません。有効な頻度がベッド決定できない場合は、エラーが発生します。

一部の値

なし (既定)

集計は適用されません。指定された周波数グリッドに準拠するデータ ポイントの数が少ない場合、これらのポイントは 90% 削除され、それ以外の場合はエラーが発生します。

なし (既定)

集計関数

frequency パラメーターの欠落に関するエラーが発生しました。

一部の値

集計関数

providedaggregation 関数を使用して頻度に集計します。

enable_voting_ensemble
bool
必須

VotingEnsemble の反復を有効/無効にするかどうか。 既定値は True です。 アンサンブルの詳細については、「アンサンブル構成」を参照してください。

enable_stack_ensemble
bool
必須

StackEnsemble の反復を有効/無効にするかどうか。 既定値は None です。 enable_onnx_compatible_models フラグを設定すると、StackEnsemble 反復は無効になります。 同様に、Timeseries タスクの場合、meta learner の調整に使用されるトレーニング セットが小さいことによるオーバーフィットのリスクを回避するために、StackEnsemble の反復は既定で無効になります。 アンサンブルの詳細については、「アンサンブル構成」を参照してください。

debug_log
str
必須

デバッグ情報を書き込むログ ファイル。 指定しない場合は、'automl.log' が使用されます。

training_data
DataFrame または Dataset または DatasetDefinition または TabularDataset
必須

実験内で使用するトレーニング データ。 トレーニング特徴量およびラベル列 (必要に応じて、サンプルの重み列) の両方を含める必要があります。 training_data を指定する場合は、label_column_name パラメーターも指定する必要があります。

training_data はバージョン 1.0.81 で導入されました。

validation_data
DataFrame または Dataset または DatasetDefinition または TabularDataset
必須

実験内で使用する検証データ。 トレーニング特徴量およびラベル列 (必要に応じて、サンプルの重み列) の両方を含める必要があります。 validation_data を指定する場合は、training_datalabel_column_name のパラメーターを指定する必要があります。

validation_data はバージョン 1.0.81 で導入されました。 詳細については、自動機械学習のデータ分割とクロス検証の構成に関する記事をご覧ください。

test_data
Dataset または TabularDataset
必須

テスト データセットまたはテスト データ分割を使用するモデル テスト機能は、プレビュー段階の機能であり、いつでも変更される可能性があります。 モデルのトレーニングが完了した後に自動的に開始されるテスト実行に使用するテスト データ。 テスト実行で、最適なモデルを使用して予測が得られ、これらの予測に基づいてメトリックが計算されます。

このパラメーターまたは test_size パラメーターを指定しない場合、モデルのトレーニングが完了した後に、テスト実行は自動的には実行されません。 テスト データに特徴量およびラベル列の両方を含める必要があります。 test_data を指定する場合は、label_column_name パラメーターを指定する必要があります。

test_size
float
必須

テスト データセットまたはテスト データ分割を使用するモデル テスト機能は、プレビュー段階の機能であり、いつでも変更される可能性があります。 モデルのトレーニングが完了した後に自動的に開始されるテスト実行のために、テスト データ用に保持するトレーニング データの割合。 テスト実行で、最適なモデルを使用して予測が得られ、これらの予測に基づいてメトリックが計算されます。

これは、0.0 から 1.0 の範囲内 (限界値は含まない) である必要があります。 test_sizevalidation_size と同時に指定した場合は、テスト データが training_data から分割された後、検証データが分割されます。 たとえば、validation_size=0.1test_size=0.1 を指定し、元のトレーニング データの行数が 1000 行の場合は、テスト データは 100 行になり、検証データに 90 行が含まれ、トレーニング データに 810 行が格納されることになります。

回帰ベースのタスクの場合は、ランダム サンプリングが使用されます。 分類タスクの場合は、層化サンプリングが使用されます。 現在、予測は、トレーニングとテストの分割を使ったテスト データセットの指定をサポートしていません。

このパラメーターまたは test_data パラメーターを指定しない場合、モデルのトレーニングが完了した後に、テスト実行は自動的には実行されません。

label_column_name
Union[str, int]
必須

ラベル列の名前。 入力データが列名を持たない pandas.DataFrame の場合、代わりに列のインデックスを使用して、整数で表すことができます。

このパラメーターは、training_datavalidation_data、および test_data パラメーターに適用できます。 label_column_name はバージョン 1.0.81 で導入されました。

weight_column_name
Union[str, int]
必須

サンプルの重み列の名前。 自動 ML では、入力として重み付け列がサポートされているため、データ内の行が重み付けされます。 入力データが列名を持たない pandas.DataFrame の場合、代わりに列のインデックスを使用して、整数で表すことができます。

このパラメーターは、training_data および validation_data パラメーターに適用できます。 weight_column_names はバージョン 1.0.81 で導入されました。

cv_split_column_names
list(str)
必須

カスタムのクロス検証分割が含まれる列の名前のリスト。 各 CV 分割列が 1 つの CV 分割を表します。このとき、各行は、トレーニングに 1、検証に 0 がマークされます。

このパラメーターは、カスタムのクロス検証を行うための training_data パラメーターに適用できます。 cv_split_column_names はバージョン 1.6.0 で導入されました

cv_split_column_names または cv_splits_indices のいずれかを使用します。

詳細については、自動機械学習のデータ分割とクロス検証の構成に関する記事をご覧ください。

enable_local_managed
bool
必須

無効なパラメーター。 ローカル マネージド実行は、現時点では有効にできません。

enable_dnn
bool
必須

モデルの選択時に DNN ベースのモデルを含めるかどうか。 init の既定値は None です。 ただし、既定値は、DNN NLP タスクの場合は True、他のすべての AutoML タスクの場合は False です。

task
str または Tasks
必須

実行するタスクの種類。 値は、自動 ML の解決する問題の種類に応じて、'classification'、'regression'、または 'forecasting' のいずれかを指定できます。

path
str
必須

Azure Machine Learning プロジェクト フォルダーへの完全なパスです。 指定しない場合、既定では、現在のディレクトリまたは "." が使用されます。

iterations
int
必須

自動 ML 実験中にテストする異なるアルゴリズムとパラメーターの組み合わせの合計数。 指定しない場合、既定値は 1000 反復です。

primary_metric
str または Metric
必須

モデルの選択のために、自動機械学習によって最適化されるメトリック。 自動機械学習によって、最適化できるよりも多くのメトリックが収集されます。 get_primary_metrics を使用すると、指定したタスクの有効なメトリックのリストを取得できます。 メトリックの計算方法の詳細については、https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#primary-metric を参照してください。

指定しない場合、分類タスクには精度が使用され、予測と回帰のタスクには正規化されたルート平均二乗が使用され、イメージの分類とイメージのマルチラベル分類には精度が使用され、イメージ オブジェクトの検出には平均有効桁数が使用されます。

positive_label
Any
必須

バイナリ メトリックを計算するために自動化機械学習によって使用される正のクラス ラベル。 バイナリ メトリックは、分類タスクの 2 つの条件で計算されます。

  1. ラベル列は、positive_label が渡された場合は、AutoML によって、指定された正のクラスが使用され、それ以外の場合は、AutoML によって、ラベル エンコードされた値に基づいて正のクラスが選択される二項分類タスクを示す 2 つのクラスで構成されます。
  2. positive_label が指定されたマルチクラス分類タスク

分類の詳細については、「分類シナリオのメトリック」を確認してください。

compute_target
AbstractComputeTarget
必須

自動機械学習実験を実行する Azure Machine Learning コンピューティング先。 コンピューティング先の詳細については、https://docs.microsoft.com/azure/machine-learning/how-to-auto-train-remote を参照してください。

spark_context
<xref:SparkContext>
必須

Spark コンテキスト。 Azure Databricks/Spark 環境内で使用される場合にのみ適用されます。

X
DataFrame または ndarray または Dataset または DatasetDefinition または TabularDataset
必須

実験中にパイプラインを調整するときに使用するトレーニング特徴量。 この設定は非推奨になります。 代わりに training_data と label_column_name を使用してください。

y
DataFrame または ndarray または Dataset または DatasetDefinition または TabularDataset
必須

実験中にパイプラインを調整するときに使用するトレーニング ラベル。 これは、ご自分のモデルで予測する値です。 この設定は非推奨になります。 代わりに training_data と label_column_name を使用してください。

sample_weight
DataFrame または ndarray または TabularDataset
必須

調整するパイプラインを実行するときに各トレーニング サンプルに付与する重み。各行が X データと y データ内の行に対応している必要があります。

このパラメーターは、X を指定するときに指定します。 この設定は非推奨になります。 代わりに training_data と weight_column_name を使用してください。

X_valid
DataFrame または ndarray または Dataset または DatasetDefinition または TabularDataset
必須

実験中にパイプラインを調整するときに使用する検証特徴量。

指定するときは、y_valid または sample_weight_valid も指定する必要があります。 この設定は非推奨になります。 代わりに validation_data と label_column_name を使用してください。

y_valid
DataFrame または ndarray または Dataset または DatasetDefinition または TabularDataset
必須

実験中にパイプラインを調整するときに使用する検証ラベル。

X_validy_valid の両方を一緒に指定する必要があります。 この設定は非推奨になります。 代わりに validation_data と label_column_name を使用してください。

sample_weight_valid
DataFrame または ndarray または TabularDataset
必須

スコア付けするパイプラインを実行するときに各検証サンプルに付与する重み。各行が X データと y データ内の行に対応している必要があります。

このパラメーターは、X_valid を指定するときに指定します。 この設定は非推奨になります。 代わりに validation_data と weight_column_name を使用してください。

cv_splits_indices
List[List[ndarray]]
必須

クロス検証用にトレーニング データを分割するインデックス。 各行は個別のクロス フォールドで、各クロスフォールド内に 2 つの numpy 配列を提供します。1 番目の配列は、トレーニング データに使用するサンプルのインデックス、2 番目の配列は検証データに使用するインデックスを設定します。 つまり、[[t1, v1], [t2, v2], ...] というようにします。t1 は 1 番目のクロス フォールドのトレーニング インデックス、v1 は 1 番目のクロス フォールドの検証インデックスです。 このオプションは、データが個別の特徴データセットとラベル列として渡される場合にサポートされます。

既存のデータを検証データとして指定するには、validation_data を使用します。 代わりに、トレーニング データから AutoML によって検証データが抽出されるようにするには、n_cross_validations または validation_size を指定します。 training_data にクロス検証列がある場合は、cv_split_column_names を使用します。

validation_size
float
必須

ユーザー検証データを指定しない場合に、検証用に保持するデータの割合。 これは、0.0 から 1.0 の範囲内 (限界値は含まない) である必要があります。

検証データを提供するには validation_data を指定します。それ以外の場合は、n_cross_validations または validation_size を設定して、指定したトレーニング データから検証データを抽出します。 カスタムのクロス検証フォールドの場合は、cv_split_column_names を使用します。

詳細については、自動機械学習のデータ分割とクロス検証の構成に関する記事をご覧ください。

n_cross_validations
int または str
必須

ユーザー検証データが指定されていない場合に実行するクロス検証の数。

検証データを提供するには validation_data を指定します。それ以外の場合は、n_cross_validations または validation_size を設定して、指定したトレーニング データから検証データを抽出します。 カスタムのクロス検証フォールドの場合は、cv_split_column_names を使用します。

詳細については、自動機械学習のデータ分割とクロス検証の構成に関する記事をご覧ください。

y_min
float
必須

回帰実験の y の最小値。 y_miny_max の組み合わせは、入力データ範囲に基づいてテスト セットのメトリックを正規化するために使用します。 この設定は非推奨になります。 代わりに、この値はデータから計算されます。

y_max
float
必須

回帰実験の y の最大値。 y_miny_max の組み合わせは、入力データ範囲に基づいてテスト セットのメトリックを正規化するために使用します。 この設定は非推奨になります。 代わりに、この値はデータから計算されます。

num_classes
int
必須

分類実験のラベル データ内のクラスの数。 この設定は非推奨になります。 代わりに、この値はデータから計算されます。

featurization
str または FeaturizationConfig
必須

特徴量化ステップを自動的に実行する必要があるかどうか、またはカスタマイズされた特徴量化を使用する必要があるかどうかを示す 'auto' / 'off' / FeaturizationConfig インジケーター。 注: 入力データがスパースの場合、特徴量化を有効にすることはできません。

列の種類は自動的に検出されます。 検出された列の種類の前処理と特徴量化は、次のように実行されます。

  • カテゴリ: ターゲット エンコード、one-hot エンコード、大きなカーディナリティ カテゴリの削除、不足値の不足。

  • 数値: 欠損値、クラスター距離、証拠の重みを補完します。

  • 日時: 日、秒、分、時間などのいくつかの特徴量。

  • テキスト: Bag of Words、事前トレーニングされたワードの埋め込み、テキスト ターゲットのエンコード。

詳細については、Python での自動 ML 実験の構成に関する記事をご覧ください。

特徴量化ステップをカスタマイズするには、FeaturizationConfig オブジェクトを指定します。 カスタマイズされた特徴量化は現在、一連のトランスフォーマーのブロック、列の目的の更新、トランスフォーマー パラメーターの編集、列の削除をサポートしています。 詳細については、特徴エンジニアリングのカスタマイズに関する記事をご覧ください。

注: Timeseries 特徴量は、このパラメーターに依存しない予測にタスクの種類が設定されている場合に個別に処理されます。

max_cores_per_iteration
int
必須

特定のトレーニング反復に使用するスレッドの最大数。 許容される値:

  • 1 より大きく、コンピューティング先のコアの最大数以下。

  • -1 に等しい。これは、子の実行ごと、反復ごとに可能なすべてのコアを使用することを意味します。

  • 既定値の 1 と同じです。

max_concurrent_iterations
int
必須

並列で実行されるイテレーションの最大数を表します。 既定値は 1 です。

  • AmlCompute クラスターは、ノードごとに 1 回の反復実行をサポートします。 1 つの AmlCompute クラスターで複数の実験を並列に実行する場合、すべての実験の値の max_concurrent_iterations 合計がノードの最大数以下である必要があります。

  • DSVM は、ノードごとに複数の反復をサポートします。 max_concurrent_iterations は、DSVM のコア数以下である必要があります。 1 つの DSVM 上で複数の実験を並行して実行する場合、すべての実験の max_concurrent_iterations 値の合計がノードの最大数以下である必要があります。

  • Databricks - max_concurrent_iterations Databricks 上のワーカー ノードの数以下である必要があります。

max_concurrent_iterations はローカル実行には適用されません。 以前は、このパラメーターの名前は concurrent_iterations でした。

iteration_timeout_minutes
int
必須

各反復で終了前に実行できる最大時間 (分)。 指定しない場合は、1 か月、すなわち 43200 分の値が使用されます。

mem_in_mb
int
必須

各反復で終了前に実行できる最大メモリ使用量。 指定しない場合は、1 PB、すなわち 1073741824 MB の値が使用されます。

enforce_time_on_windows
bool
必須

Windows で各反復でのモデルのトレーニングに時間制限を課すかどうか。 既定値は True です。 Python スクリプト ファイル (.py) から実行する場合は、Windows でのリソース制限を許可するためのドキュメントを参照してください。

experiment_timeout_hours
float
必須

すべてのイテレーションを組み合わせて、実験が終了するまでにかかる最大時間 (時間単位)。 10 進数値 (15 分を表す 0.25 など) を指定できます。 指定しない場合、既定の実験タイムアウトは 6 日です。 1 時間以下のタイムアウトを指定するには、エラーが発生しないように、データセットのサイズが 10,000,000 (行と列の積) を超えていないことを確認します。

experiment_exit_score
float
必須

実験のターゲット スコア。 実験は、このスコアに達すると終了します。 指定しない場合 (基準なし)、実験は、主要メトリックでそれ以上の進行がなくなるまで実行されます。 終了条件の詳細については、こちらの >>article https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#exit-criteria'_<< を参照してください。

enable_early_stopping
bool
必須

短期間でスコアが改善されない場合に、早期終了を有効にするかどうか。 既定値は True です。

早期停止ロジック:

  • 最初の 20 回の反復 (ランドマーク) に早期停止はありません。

  • 早期停止ウィンドウは、21 番目のイテレーションで開始され、early_stopping_n_itersイテレーションを検索します (現在は 10 に設定されています)。 つまり、停止が発生しうる最初の反復は 31 回目です。

  • AutoML では、早期停止後も 2 つのアンサンブル イテレーションがスケジュールされるため、スコアが高くなる可能性があります。

  • 計算されたベスト スコアの絶対値が過去のearly_stopping_n_itersイテレーションで同じ場合、つまり、early_stopping_n_itersイテレーションのスコアが改善されていない場合は、早期停止がトリガーされます。

blocked_models
list(str) または list(Classification) <xref:for classification task> または list(Regression) <xref:for regression task> または list(Forecasting) <xref:for forecasting task>
必須

実験で無視するアルゴリズムのリスト。 enable_tf が False の場合、TensorFlow モデルは blocked_models に含まれます。

blacklist_models
list(str) または list(Classification) <xref:for classification task> または list(Regression) <xref:for regression task> または list(Forecasting) <xref:for forecasting task>
必須

非推奨のパラメーター。代わりに blocked_models を使用してください。

exclude_nan_labels
bool
必須

ラベルに NaN 値を含む行を除外するかどうか。 既定値は True です。

verbosity
int
必須

ログ ファイルに書き込む詳細レベル。 既定値は INFO または 20 です。 許容される値は、Python ロギング ライブラリで定義されています。

enable_tf
bool
必須

TensorFlow アルゴリズムを有効または無効にするかどうか。 既定値は False です。

model_explainability
bool
必須

すべての AutoML トレーニング反復の最後に、最適な AutoML モデルを説明できるかどうか。 既定値は True です。 詳細については、「解釈可能性: 自動 ML でのモデル説明」を参照してください。

allowed_models
list(str) または list(Classification) <xref:for classification task> または list(Regression) <xref:for regression task> または list(Forecasting) <xref:for forecasting task>
必須

実験を検索するモデル名のリスト。 指定しない場合、blocked_models で指定したものすべてと非推奨の TensorFlow モデルを除いたものが、タスクでサポートされるすべてのモデルで使用されます。 各タスクの種類でサポートされているモデルについては、SupportedModels クラスを参照してください。

allowed_models
必須

実験を検索するモデル名のリスト。 指定しない場合、blocked_models で指定したものすべてと非推奨の TensorFlow モデルを除いたものが、タスクでサポートされるすべてのモデルで使用されます。 各タスクの種類でサポートされているモデルについては、SupportedModels クラスを参照してください。

whitelist_models
必須

非推奨のパラメーター。代わりに allowed_models を使用してください。

enable_onnx_compatible_models
bool
必須

ONNX と互換性のあるモデルの強制を有効または無効にするかどうか。 既定値は False です。 Open Neural Network Exchange (ONNX) と Azure Machine Learning の詳細については、こちらの記事を参照してください。

forecasting_parameters
ForecastingParameters
必須

すべての予測特定のパラメーターを保持するオブジェクト。

time_column_name
str
必須

時間列の名前。 このパラメーターは、時系列の構築とその頻度の推定に使用される入力データで、予測によって datetime 列を指定する場合に必要です。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

max_horizon
int
必須

時系列頻度を単位にした目的の最大予測期間。 既定値は 1 です。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

単位は、トレーニング データの時間間隔に基づきます。たとえば、予測者が予測する必要がある月ごと、週ごとなどです。タスクの種類が予測である場合、このパラメーターは必須です。 予測パラメーターの設定の詳細については、時系列予測モデルの自動トレーニングに関する記事をご覧ください。

grain_column_names
str または list(str)
必須

時系列をグループ化するために使用される列の名前。 複数の系列を作成するために使用できます。 グレインが定義されていない場合、データ セットは 1 つの時系列であると見なされます。 このパラメーターは、タスクの種類の予測で使用します。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

target_lags
int または list(int)
必須

ターゲット列からのラグとして指定する過去の期間の数。 既定値は 1 です。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

予測時に、このパラメーターは、データの頻度に基づいてターゲット値を遅延させる行数を表します。 これは一覧または単一の整数として表されます。 独立変数と依存変数の間のリレーションシップが既定で一致しない場合、または関連付けられていない場合、ラグを使用する必要があります。 たとえば、製品の需要を予測しようとする場合、任意の月の需要は、3 か月前の特定の商品の価格によって異なる可能性があります。 この例では、モデルが正しいリレーションシップでトレーニングされるように、目標 (要求) を 3 か月間遅延させてください。 詳細については、時系列予測モデルの自動トレーニングに関する記事をご覧ください。

feature_lags
str
必須

数値特徴のラグを生成するためのフラグ。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

target_rolling_window_size
int
必須

ターゲット列のローリング期間の平均を作成するために使用する過去の期間の数。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

予測時に、このパラメーターは、予測値を生成するために使用する n 個の履歴期間を表し、トレーニング セットのサイズ以下です。 省略した場合、n はトレーニング セットの全体のサイズになります。 モデルのトレーニング時に特定の量の履歴のみを考慮する場合は、このパラメーターを指定します。

country_or_region
str
必須

休日の特徴を生成するために使用される国または地域。 これらは、ISO 3166 の 2 文字の国または地域コード ("US" や "GB" など) である必要があります。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

use_stl
str
必須

時系列ターゲット列の STL 分解を構成します。 use_stl は 3 つの値を取ることができます: None (既定) - stl 分解なし。'season' - 季節コンポーネントのみを生成します。season_trend - 季節と傾向の両方のコンポーネントを生成します。 この設定は非推奨になります。 代わりに forecasting_parameters を使用してください。

seasonality
int
必須

時系列の季節性を設定します。 季節性が -1 に設定された場合は、推論されます。 use_stl が設定されていない場合、このパラメーターは使用されません。 この設定は非推奨になっています。 代わりに forecasting_parameters を使用してください。

short_series_handling_configuration
str
必須

AutoML で短い時系列を処理する方法を定義するパラメーター。

使用可能な値: 'auto' (既定値)、'pad'、'drop'、None。

  • auto 短い系列は、長い系列がない場合はパディングされ、それ以外は、短い系列は削除されます。
  • pad すべての短い系列はパディングされます。
  • drop すべての短い系列は削除されます。
  • None 短い系列は変更されません。 'pad' に設定した場合、テーブルには、リグレッサーの場合は 0 と空の値が、ターゲットの場合はランダム値が埋め込まれ、平均値は特定の時系列 ID のターゲット値の中央値に等しくなります。中央値が 0 以上の場合、最小の埋め込み値は 0 でクリップされます。入力:

日付

numeric_value

string

target

2020-01-01

23

green

55

最小値数が 4 であると仮定した出力: +————+—————+———-+——–+ |日付 |numeric_value |string |target |+============+===============+==========+========+ |2019-12-29 |0 |NA |55.1 |+————+—————+———-+——–+ |2019-12-30 |0 |NA |55.6 |+————+—————+———-+——–+ |2019-12-31 |0 |NA |54.5 |+————+—————+———-+——–+ |2020-01-01 |23 |green |55 |+————+—————+———-+——–+

注: short_series_handling_configuration と legacy short_series_handling の 2 つのパラメーターがあります。 両方のパラメーターを設定すると、次の表に示すように同期されます (short_series_handling_configuration と short_series_handling はそれぞれ、handling_configuration と handling と簡潔して表記されています)。

処理

handling_configuration

結果の処理

結果のhandling_configuration

True

自動

True

自動

True

パッド

True

自動

True

drop

True

自動

True

なし

False

なし

False

自動

False

なし

False

パッド

False

なし

False

drop

False

なし

False

なし

False

なし

freq
str または None
必須

予測頻度。

予測する場合、このパラメーターは、日単位、週単位、年単位など、予測が必要な期間を表します。予測頻度は、既定ではデータセットの頻度です。 必要に応じて、データセットよりも高い頻度 (低い頻度は不可) に設定することができます。 データを集計し、予測頻度で結果を生成します。 たとえば、毎日のデータの場合、頻度を日単位、週単位、または月単位に設定できますが、時間単位に設定することはできません。 頻度には、pandas のオフセット エイリアスを使用する必要があります。 詳細については、pandas のドキュメントをご覧ください: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects

target_aggregation_function
str または None
必須

ユーザー指定の頻度に従って時系列ターゲット列を集計するために使用する関数。 target_aggregation_function を設定しても、freq パラメーターを設定しないと、エラーが発生します。 使用可能なターゲット集計関数は、"sum"、"max"、"min"、"mean" です。

周波数

target_aggregation_function

データの規則性の修正メカニズム

なし (既定)

なし (既定)

集計は適用されません。有効な頻度がベッド決定できない場合は、エラーが発生します。

一部の値

なし (既定)

集計は適用されません。指定された周波数グリッドに準拠するデータ ポイントの数が少ない場合、これらのポイントは 90% 削除され、それ以外の場合はエラーが発生します。

なし (既定)

集計関数

frequency パラメーターの欠落に関するエラーが発生しました。

一部の値

集計関数

providedaggregation 関数を使用して頻度に集計します。

enable_voting_ensemble
bool
必須

VotingEnsemble の反復を有効/無効にするかどうか。 既定値は True です。 アンサンブルの詳細については、「アンサンブル構成」を参照してください。

enable_stack_ensemble
bool
必須

StackEnsemble の反復を有効/無効にするかどうか。 既定値は None です。 enable_onnx_compatible_models フラグを設定すると、StackEnsemble 反復は無効になります。 同様に、Timeseries タスクの場合、meta learner の調整に使用されるトレーニング セットが小さいことによるオーバーフィットのリスクを回避するために、StackEnsemble の反復は既定で無効になります。 アンサンブルの詳細については、「アンサンブル構成」を参照してください。

debug_log
str
必須

デバッグ情報を書き込むログ ファイル。 指定しない場合は、'automl.log' が使用されます。

training_data
DataFrame または Dataset または DatasetDefinition または TabularDataset
必須

実験内で使用するトレーニング データ。 トレーニング特徴量およびラベル列 (必要に応じて、サンプルの重み列) の両方を含める必要があります。 training_data を指定する場合は、label_column_name パラメーターも指定する必要があります。

training_data はバージョン 1.0.81 で導入されました。

validation_data
DataFrame または Dataset または DatasetDefinition または TabularDataset
必須

実験内で使用する検証データ。 トレーニング特徴量およびラベル列 (必要に応じて、サンプルの重み列) の両方を含める必要があります。 validation_data を指定する場合は、training_datalabel_column_name のパラメーターを指定する必要があります。

validation_data はバージョン 1.0.81 で導入されました。 詳細については、自動機械学習のデータ分割とクロス検証の構成に関する記事をご覧ください。

test_data
Dataset または TabularDataset
必須

テスト データセットまたはテスト データ分割を使用するモデル テスト機能は、プレビュー段階の機能であり、いつでも変更される可能性があります。 モデルのトレーニングが完了した後に自動的に開始されるテスト実行に使用するテスト データ。 テスト実行で、最適なモデルを使用して予測が得られ、これらの予測に基づいてメトリックが計算されます。

このパラメーターまたは test_size パラメーターを指定しない場合、モデルのトレーニングが完了した後に、テスト実行は自動的には実行されません。 テスト データに特徴量およびラベル列の両方を含める必要があります。 test_data を指定する場合は、label_column_name パラメーターを指定する必要があります。

test_size
float
必須

テスト データセットまたはテスト データ分割を使用するモデル テスト機能は、プレビュー段階の機能であり、いつでも変更される可能性があります。 モデルのトレーニングが完了した後に自動的に開始されるテスト実行のために、テスト データ用に保持するトレーニング データの割合。 テスト実行で、最適なモデルを使用して予測が得られ、これらの予測に基づいてメトリックが計算されます。

これは、0.0 から 1.0 の範囲内 (限界値は含まない) である必要があります。 test_sizevalidation_size と同時に指定した場合は、テスト データが training_data から分割された後、検証データが分割されます。 たとえば、validation_size=0.1test_size=0.1 を指定し、元のトレーニング データの行数が 1000 行の場合は、テスト データは 100 行になり、検証データに 90 行が含まれ、トレーニング データに 810 行が格納されることになります。

回帰ベースのタスクの場合は、ランダム サンプリングが使用されます。 分類タスクの場合は、層化サンプリングが使用されます。 現在、予測は、トレーニングとテストの分割を使ったテスト データセットの指定をサポートしていません。

このパラメーターまたは test_data パラメーターを指定しない場合、モデルのトレーニングが完了した後に、テスト実行は自動的には実行されません。

label_column_name
Union[str, int]
必須

ラベル列の名前。 入力データが列名を持たない pandas.DataFrame の場合、代わりに列のインデックスを使用して、整数で表すことができます。

このパラメーターは、training_datavalidation_data、および test_data パラメーターに適用できます。 label_column_name はバージョン 1.0.81 で導入されました。

weight_column_name
Union[str, int]
必須

サンプルの重み列の名前。 自動 ML では、入力として重み付け列がサポートされているため、データ内の行が重み付けされます。 入力データが列名を持たない pandas.DataFrame の場合、代わりに列のインデックスを使用して、整数で表すことができます。

このパラメーターは、training_data および validation_data パラメーターに適用できます。 weight_column_names はバージョン 1.0.81 で導入されました。

cv_split_column_names
list(str)
必須

カスタムのクロス検証分割が含まれる列の名前のリスト。 各 CV 分割列が 1 つの CV 分割を表します。このとき、各行は、トレーニングに 1、検証に 0 がマークされます。

このパラメーターは、カスタムのクロス検証を行うための training_data パラメーターに適用できます。 cv_split_column_names はバージョン 1.6.0 で導入されました

cv_split_column_names または cv_splits_indices のいずれかを使用します。

詳細については、自動機械学習のデータ分割とクロス検証の構成に関する記事をご覧ください。

enable_local_managed
bool
必須

無効なパラメーター。 ローカル マネージド実行は、現時点では有効にできません。

enable_dnn
bool
必須

モデルの選択時に DNN ベースのモデルを含めるかどうか。 init の既定値は None です。 ただし、既定値は、DNN NLP タスクの場合は True、他のすべての AutoML タスクの場合は False です。

注釈

次のコードは、AutoMLConfig オブジェクトを作成し、回帰の実験を送信する基本的な例を示しています。


   automl_settings = {
       "n_cross_validations": 3,
       "primary_metric": 'r2_score',
       "enable_early_stopping": True,
       "experiment_timeout_hours": 1.0,
       "max_concurrent_iterations": 4,
       "max_cores_per_iteration": -1,
       "verbosity": logging.INFO,
   }

   automl_config = AutoMLConfig(task = 'regression',
                               compute_target = compute_target,
                               training_data = train_data,
                               label_column_name = label,
                               **automl_settings
                               )

   ws = Workspace.from_config()
   experiment = Experiment(ws, "your-experiment-name")
   run = experiment.submit(automl_config, show_output=True)

完全なサンプルは、回帰で入手できます

予測に AutoMLConfig を使用する例は、次のノートブックを参照してください。

すべてのタスクの種類に AutoMLConfig を使用する例については、こちらの自動 ML ノートブックを参照してください。

自動 ML の背景については、次の記事を参照してください。

自動機械学習、AutoML、実験のトレーニングおよび検証データの分割とクロス検証を構成するためのさまざまなオプションの詳細については、自動機械学習でデータ分割とクロス検証を構成するに関する記事をご覧ください。

メソッド

as_serializable_dict

オブジェクトをディクショナリに変換します。

get_supported_dataset_languages

ISO 639-3 でサポートされている言語とそれに対応する言語コードを取得します。

as_serializable_dict

オブジェクトをディクショナリに変換します。

as_serializable_dict() -> Dict[str, Any]

get_supported_dataset_languages

ISO 639-3 でサポートされている言語とそれに対応する言語コードを取得します。

get_supported_dataset_languages(use_gpu: bool) -> Dict[Any, Any]

パラメーター

cls
必須

AutoMLConfig のクラス オブジェクト。

use_gpu
必須

gpu コンピューティングを使用するかどうかを示すブール値。

戻り値

{: } 形式の辞書。 言語コードが ISO 639-3 標準に準拠している場合は、https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes を参照してください