チュートリアル #2: 自動化された機械学習で回帰モデルをトレーニングするTutorial #2: Train a regression model with automated machine learning

このチュートリアルは、2 部構成のチュートリアル シリーズのパート 2 ですThis tutorial is part two of a two-part tutorial series. 前回のチュートリアルでは、回帰モデル用の NYC タクシー データを準備しました。In the previous tutorial, you prepared the NYC taxi data for regression modeling.

Azure Machine Learning サービスを使ってモデルの構築を開始する準備は整っています。Now, you're ready to start building your model with Azure Machine Learning service. 今回のチュートリアルでは、準備したデータを使って、タクシー運賃の価格を予測する回帰モデルを自動生成します。In this part of the tutorial, you will use the prepared data and automatically generate a regression model to predict taxi fare prices. サービスの自動 ML 機能を使って、機械学習の目標と制約を定義し、自動化された機械学習プロセスを起動して、アルゴリズムの選択とハイパーパラメーターの調整が行えるようにします。Using the automated ML capabilities of the service, you define your machine learning goals and constraints, launch the automated machine learning process and then allow the algorithm selection and hyperparameter-tuning to happen for you. 自動 ML テクニックでは、アルゴリズムとハイパーパラメーターの多数の組み合わせをイテレーションして、条件上最適なモデルを探します。The automated ML technique iterates over many combinations of algorithms and hyperparameters until it finds the best model based on your criterion.

フロー図

このチュートリアルでは、以下の内容を学習します。In this tutorial, you learn how to:

  • Python 環境を設定して SDK パッケージをインポートするSetup a Python environment and import the SDK packages
  • Azure Machine Learning サービス ワークスペースを構成するConfigure an Azure Machine Learning service workspace
  • 回帰モデルを自動トレーニングするAuto-train a regression model
  • カスタム パラメーターを使ってローカルでモデルを実行するRun the model locally with custom parameters
  • 結果を検索するExplore the results
  • 最高のモデルを登録するRegister the best model

Azure サブスクリプションがない場合は、開始する前に無料アカウントを作成してください。If you don’t have an Azure subscription, create a free account before you begin.

注意

この記事のコードは、Azure Machine Learning SDK バージョン 1.0.0 を使用してテストされましたCode in this article was tested with Azure Machine Learning SDK version 1.0.0

前提条件Prerequisites

ノートブックを入手するGet the notebook

便利なように、このチュートリアルは Jupyter notebook として提供されています。For your convenience, this tutorial is available as a Jupyter notebook. regression-part2-automated-ml.ipynbAzure Notebook またはご自身の Jupyter notebook サーバー内のいずれかのノートを実行します。Run the regression-part2-automated-ml.ipynb notebook either in Azure Notebooks or in your own Jupyter notebook server.

ノートブックの実行方法については、「Use Jupyter notebooks to explore this service」(Jupyter Notebook を使用してこのサービスを探索する) をご覧ください。Learn how to run notebooks by following the article, Use Jupyter notebooks to explore this service.

パッケージをインポートするImport packages

このチュートリアルで必要な Python パッケージをインポートします。Import Python packages you need in this tutorial.

import azureml.core
import pandas as pd
from azureml.core.workspace import Workspace
from azureml.train.automl.run import AutoMLRun
import time
import logging

ワークスペースの構成Configure workspace

既存のワークスペースからワークスペース オブジェクトを作成します。Create a workspace object from the existing workspace. Workspace は、Azure サブスクリプションとリソース情報を受け取るクラスであり、モデル実行を監視して追跡するためのクラウド リソースを作成するクラスです。A Workspace is a class that accepts your Azure subscription and resource information, and creates a cloud resource to monitor and track your model runs. Workspace.from_config() は、aml_config/config.json ファイルを読み取り、詳細情報を ws という名前のオブジェクトに読み込みます。Workspace.from_config() reads the file aml_config/config.json and loads the details into an object named ws. ws は、このチュートリアルの残りのコード全体で使用されています。ws is used throughout the rest of the code in this tutorial.

ワークスペース オブジェクトを作成したら、実験用に名前を指定し、ワークスペースを使用してローカル ディレクトリを作成および登録します。Once you have a workspace object, specify a name for the experiment and create and register a local directory with the workspace. すべての実行履歴が、指定された実験と Azure portal に記録されます。The history of all runs is recorded under the specified experiment and in Azure portal.

ws = Workspace.from_config()
# choose a name for the run history container in the workspace
experiment_name = 'automated-ml-regression'
# project folder
project_folder = './automated-ml-regression'

import os

output = {}
output['SDK version'] = azureml.core.VERSION
output['Subscription ID'] = ws.subscription_id
output['Workspace'] = ws.name
output['Resource Group'] = ws.resource_group
output['Location'] = ws.location
output['Project Directory'] = project_folder
pd.set_option('display.max_colwidth', -1)
pd.DataFrame(data=output, index=['']).T

データを調査するExplore data

前のチュートリアルで作成したデータ フロー オブジェクトを使用します。Utilize the data flow object created in the previous tutorial. データ フローを開いて実行し、結果を確認します。Open and execute the data flow and review the results.

import azureml.dataprep as dprep
package_saved = dprep.Package.open(".\dflow")
dflow_prepared = package_saved.dataflows[0]
dflow_prepared.get_profile()
typeType MinMin maxMax CountCount Missing CountMissing Count Not Missing CountNot Missing Count Percent missingPercent missing Error CountError Count Empty countEmpty count 0.1% Quantile0.1% Quantile 1% Quantile1% Quantile 5% Quantile5% Quantile 25% Quantile25% Quantile 50% Quantile50% Quantile 75% Quantile75% Quantile 95% Quantile95% Quantile 99% Quantile99% Quantile 99.9% Quantile99.9% Quantile 平均Mean 標準偏差Standard Deviation varianceVariance 傾斜Skewness 尖度Kurtosis
vendorvendor FieldType.STRINGFieldType.STRING 11 VTSVTS 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0
pickup_weekdaypickup_weekday FieldType.STRINGFieldType.STRING 金曜日Friday 水曜日Wednesday 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0
pickup_hourpickup_hour FieldType.DECIMALFieldType.DECIMAL 00 2323 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0 00 3.575233.57523 33 9.911069.91106 15.932715.9327 1919 22.022522.0225 2323 2323 14.232614.2326 6.349266.34926 40.313140.3131 -0.693335-0.693335 -0.459336-0.459336
pickup_minutepickup_minute FieldType.DECIMALFieldType.DECIMAL 00 5959 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0 00 5.323135.32313 4.923084.92308 14.221414.2214 29.524429.5244 44.643644.6436 56.376756.3767 58.979858.9798 5959 29.463529.4635 17.439617.4396 304.14304.14 0.004403240.00440324 -1.20458-1.20458
pickup_secondpickup_second FieldType.DECIMALFieldType.DECIMAL 00 5959 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0 00 4.992864.99286 4.919544.91954 14.612114.6121 29.923929.9239 44.522144.5221 56.679256.6792 5959 5959 29.622529.6225 17.386817.3868 302.302302.302 -0.0227466-0.0227466 -1.19409-1.19409
dropoff_weekdaydropoff_weekday FieldType.STRINGFieldType.STRING 金曜日Friday 水曜日Wednesday 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0
dropoff_hourdropoff_hour FieldType.DECIMALFieldType.DECIMAL 00 2323 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0 00 3.232173.23217 2.933332.93333 9.923349.92334 15.913515.9135 1919 22.273922.2739 2323 2323 14.181514.1815 6.455786.45578 41.67741.677 -0.691001-0.691001 -0.500215-0.500215
dropoff_minutedropoff_minute FieldType.DECIMALFieldType.DECIMAL 00 5959 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0 00 5.10645.1064 55 14.205114.2051 29.07929.079 44.293744.2937 56.633856.6338 58.998458.9984 5959 29.35329.353 17.424117.4241 303.598303.598 0.01425620.0142562 -1.21531-1.21531
dropoff_seconddropoff_second FieldType.DECIMALFieldType.DECIMAL 00 5959 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0 00 5.033735.03373 55 14.747114.7471 29.59829.598 45.321645.3216 56.104456.1044 58.972858.9728 5959 29.792329.7923 17.48117.481 305.585305.585 -0.0281313-0.0281313 -1.21965-1.21965
store_forwardstore_forward FieldType.STRINGFieldType.STRING NN YY 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0
pickup_longitudepickup_longitude FieldType.DECIMALFieldType.DECIMAL -74.0782-74.0782 -73.7365-73.7365 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0 -74.0763-74.0763 -73.9625-73.9625 -73.9629-73.9629 -73.949-73.949 -73.9279-73.9279 -73.8667-73.8667 -73.8304-73.8304 -73.8232-73.8232 -73.7698-73.7698 -73.9139-73.9139 0.04871110.0487111 0.002372770.00237277 0.4026970.402697 -0.613516-0.613516
pickup_latitudepickup_latitude FieldType.DECIMALFieldType.DECIMAL 40.575540.5755 40.879940.8799 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0 40.632940.6329 40.713140.7131 40.711640.7116 40.721440.7214 40.758140.7581 40.805140.8051 40.848940.8489 40.867640.8676 40.877740.8777 40.765240.7652 0.04834850.0483485 0.002337580.00233758 0.2280880.228088 -0.598862-0.598862
dropoff_longitudedropoff_longitude FieldType.DECIMALFieldType.DECIMAL -74.0857-74.0857 -73.7209-73.7209 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0 -74.0788-74.0788 -73.9856-73.9856 -73.9858-73.9858 -73.959-73.959 -73.9367-73.9367 -73.8848-73.8848 -73.8155-73.8155 -73.7767-73.7767 -73.7335-73.7335 -73.9207-73.9207 0.0559610.055961 0.003131630.00313163 0.6486490.648649 0.02291410.0229141
dropoff_latitudedropoff_latitude FieldType.DECIMALFieldType.DECIMAL 40.583540.5835 40.879740.8797 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0 40.597740.5977 40.695440.6954 40.695140.6951 40.727540.7275 40.758240.7582 40.788440.7884 40.850440.8504 40.86840.868 40.878640.8786 40.759540.7595 0.05046210.0504621 0.002546420.00254642 0.04841790.0484179 -0.0368799-0.0368799
passengerspassengers FieldType.DECIMALFieldType.DECIMAL 11 66 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0 11 11 11 11 11 55 55 66 66 2.329792.32979 1.799781.79978 3.23923.2392 0.8340990.834099 -1.11111-1.11111
costcost FieldType.DECIMALFieldType.DECIMAL 00 444444 7059.07059.0 0.00.0 7059.07059.0 0.00.0 0.00.0 0.00.0 00 3.018083.01808 3.01253.0125 5.915455.91545 9.490559.49055 16.581616.5816 33.563833.5638 51.992451.9924 81.136881.1368 12.911212.9112 11.644711.6447 135.599135.599 8.68428.6842 269.818269.818

モデル作成の機能となるように dflow_x に列を追加して、実験用のデータを準備します。You prepare the data for the experiment by adding columns to dflow_x to be features for our model creation. 予測値 cost になるように、dflow_y を定義します。You define dflow_y to be our prediction value; cost.

dflow_X = dflow_prepared.keep_columns(['pickup_weekday', 'dropoff_latitude', 'dropoff_longitude','pickup_hour','pickup_longitude','pickup_latitude','passengers'])
dflow_y = dflow_prepared.keep_columns('cost')

データをトレーニング セットとテスト セットに分割するSplit data into train and test sets

次に、sklearn ライブラリの train_test_split 関数を使用して、トレーニング セットとテスト セットにデータを分割します。Now you split the data into training and test sets using the train_test_split function in the sklearn library. この関数は、モデル トレーニング用の x (機能) データ セットとテスト用の y (予測する値) データ セットに、データを分割します。This function segregates the data into the x (features) data set for model training and the y (values to predict) data set for testing. test_size パラメーターでは、テストに割り当てるデータの割合を決定します。The test_size parameter determines the percentage of data to allocate to testing. random_state パラメーターでは、トレーニングとテストの分割が常に決定論的になるように、ランダム ジェネレーターにシードを設定します。The random_state parameter sets a seed to the random generator, so that your train-test splits are always deterministic.

from sklearn.model_selection import train_test_split

x_df = dflow_X.to_pandas_dataframe()
y_df = dflow_y.to_pandas_dataframe()

x_train, x_test, y_train, y_test = train_test_split(x_df, y_df, test_size=0.2, random_state=123)
# flatten y_train to 1d array
y_train.values.flatten()

これでご自分のモデルを自動的にトレーニングするのに必要なパッケージとデータが揃いました。You now have the necessary packages and data ready for auto training for your model.

自動的にモデルをトレーニングするAutomatically train a model

自動的にモデルをトレーニングするには、次の手順を実行します。To automatically train a model:

  1. 実験の実行用の設定を定義するDefine settings for the experiment run
  2. モデル調整用の実験を送信するSubmit the experiment for model tuning

自動生成と調整用の設定を定義するDefine settings for autogeneration and tuning

自動生成と調整用の実験パラメーターとモデルの設定を定義します。Define the experiment parameters and models settings for autogeneration and tuning. 設定の完全な一覧を表示します。View the full list of settings.

プロパティProperty このチュートリアルの値Value in this tutorial 説明Description
iteration_timeout_minutesiteration_timeout_minutes 1010 各イテレーションの分単位での時間制限Time limit in minutes for each iteration
iterationsiterations 3030 イテレーションの回数。Number of iterations. 各イテレーションでは、特定のパイプラインを使用してモデルがデータをトレーニングします。In each iteration, the model trains with the data with a specific pipeline
primary_metricprimary_metric spearman_correlationspearman_correlation 最適化したいメトリック。Metric that you want to optimize.
preprocesspreprocess TrueTrue True を指定すると、実験は入力に対して前処理を実行できます。True enables experiment to perform preprocessing on the input.
verbosityverbosity logging.INFOlogging.INFO ログ記録のレベルを制御します。Controls the level of logging.
n_cross_validationssn_cross_validationss 55 クロス検証の分割の数Number of cross validation splits
automl_settings = {
    "iteration_timeout_minutes" : 10,
    "iterations" : 30,
    "primary_metric" : 'spearman_correlation',
    "preprocess" : True,
    "verbosity" : logging.INFO,
    "n_cross_validations": 5
}
from azureml.train.automl import AutoMLConfig

# local compute
automated_ml_config = AutoMLConfig(task = 'regression',
                             debug_log = 'automated_ml_errors.log',
                             path = project_folder,
                             X = x_train.values,
                             y = y_train.values.flatten(),
                             **automl_settings)

自動回帰モデルをトレーニングするTrain the automatic regression model

ローカルで実験の実行を開始します。Start the experiment to run locally. 定義済みの automated_ml_config オブジェクトを実験に渡し、出力を true に設定して実験中の進行状況を表示します。Pass the defined automated_ml_config object to the experiment, and set the output to true to view progress during the experiment.

from azureml.core.experiment import Experiment
experiment=Experiment(ws, experiment_name)
local_run = experiment.submit(automated_ml_config, show_output=True)
Parent Run ID: AutoML_83117da4-07e3-473a-b83e-99471bfa9e09
*******************************************************************************************
ITERATION: The iteration being evaluated.
PIPELINE: A summary description of the pipeline being evaluated.
DURATION: Time taken for the current iteration.
METRIC: The result of computing score on the fitted pipeline.
BEST: The best observed score thus far.
*******************************************************************************************

 ITERATION   PIPELINE                                       DURATION      METRIC      BEST
         0   MaxAbsScaler ExtremeRandomTrees                0:00:21       0.6498    0.6498
         1   MinMaxScaler GradientBoosting                  0:00:22       0.6624    0.6624
         2   StandardScalerWrapper KNN                      0:00:18       0.7267    0.7267
         3   StandardScalerWrapper GradientBoosting         0:00:18       0.5003    0.7267
         4    Ensemble                                      0:00:38       0.6659    0.7267

結果を検索するExplore the results

Jupyter ウィジェットを使用するか、実験の履歴を検証して、自動トレーニングの結果を探索します。Explore the results of automatic training with a Jupyter widget or by examining the experiment history.

オプション 1: Jupyter ウィジェットを追加して結果を表示するOption 1: Add a Jupyter widget to see results

Jupyter Notebook を使用している場合、この Jupyter Notebook ウィジェットを使ってすべての結果のグラフおよびテーブルを参照します。If you are using a Juypter notebook, use this Jupyter notebook widget to see a graph and a table of all results.

from azureml.widgets import RunDetails
RunDetails(local_run).show()

Jupyter ウィジェット実行の詳細

オプション 2: Python ですべての実行イテレーションを取得して調査するOption 2: Get and examine all run iterations in Python

別の方法として、各実験の履歴を取得して、各イテレーション実行の個々のメトリックを探索できます。Alternatively, you can retrieve the history of each experiment and explore the individual metrics for each iteration run.

children = list(local_run.get_children())
metricslist = {}
for run in children:
    properties = run.get_properties()
    metrics = {k: v for k, v in run.get_metrics().items() if isinstance(v, float)}
    metricslist[int(properties['iteration'])] = metrics

import pandas as pd
rundata = pd.DataFrame(metricslist).sort_index(1)
rundata
00 11 22 33 44
explained_varianceexplained_variance 0.1138100.113810 0.0935140.093514 -0.010248-0.010248 0.0058670.005867 0.1081870.108187
mean_absolute_errormean_absolute_error 7.0048937.004893 6.3483546.348354 6.4930006.493000 7.0455977.045597 6.6468506.646850
median_absolute_errormedian_absolute_error 4.8340634.834063 3.5032443.503244 3.3215533.321553 4.3495474.349547 4.3899954.389995
normalized_mean_absolute_errornormalized_mean_absolute_error 0.0778320.077832 0.0705370.070537 0.0721440.072144 0.0782840.078284 0.0738540.073854
normalized_median_absolute_errornormalized_median_absolute_error 0.0537120.053712 0.0389250.038925 0.0369060.036906 0.0483280.048328 0.0487780.048778
normalized_root_mean_squared_errornormalized_root_mean_squared_error 0.1178190.117819 0.1205180.120518 0.1261410.126141 0.1242890.124289 0.1183400.118340
normalized_root_mean_squared_log_errornormalized_root_mean_squared_log_error 0.1776890.177689 0.1633600.163360 0.1681010.168101 0.1782500.178250 0.1686850.168685
r2_scorer2_score 0.1046610.104661 0.0640750.064075 -0.036158-0.036158 -0.004403-0.004403 0.0969760.096976
root_mean_squared_errorroot_mean_squared_error 10.60374410.603744 10.84663210.846632 11.35273111.352731 11.18597211.185972 10.65059310.650593
root_mean_squared_log_errorroot_mean_squared_log_error 0.8015310.801531 0.7368960.736896 0.7582790.758279 0.8040620.804062 0.7609130.760913
spearman_correlationspearman_correlation 0.5498250.549825 0.5624350.562435 0.5267020.526702 0.5003020.500302 0.5658570.565857
spearman_correlation_maxspearman_correlation_max 0.5498250.549825 0.5624350.562435 0.5624350.562435 0.5624350.562435 0.5658570.565857

最高のモデルを取得するRetrieve the best model

イテレーションから最適なパイプラインを選択します。Select the best pipeline from our iterations. automl_classifier 上の get_output メソッドは、最適な実行と、最後の fit の呼び出しで適合したモデルを返します。The get_output method on automl_classifier returns the best run and the fitted model for the last fit invocation. get_output 上にはオーバーロードがあり、これによって、ログ記録された任意のメトリックや特定のイテレーションに対する最適な実行と適合モデルを取得できます。There are overloads on get_output that allow you to retrieve the best run and fitted model for any logged metric or a particular iteration.

best_run, fitted_model = local_run.get_output()
print(best_run)
print(fitted_model)

モデルを登録するRegister the model

お使いの Azure Machine Learning サービス ワークスペースにモデルを登録します。Register the model in your Azure Machine Learning service workspace.

description = 'Automated Machine Learning Model'
tags = None
local_run.register_model(description=description, tags=tags)
local_run.model_id # Use this id to deploy the model as a web service in Azure

最高のモデルの正確性をテストするTest the best model accuracy

最高のモデルを使用して、テスト データ セット上で予測を実行します。Use the best model to run predictions on the test data set. 関数 predict は最高のモデルを使用して、x_test データ セットから y (交通費) の値を予測します。The function predict uses the best model, and predicts the values of y (trip cost) from the x_test data set. y_predict から最初の 10 個の予測コスト値をプリントします。Print the first 10 predicted cost values from y_predict.

y_predict = fitted_model.predict(x_test.values)
print(y_predict[:10])

予測コストの値と実際のコストの値を比較します。Compare the predicted cost values with the actual cost values. y_test データフレームを使用して、予測値と比較するためにリストに変換します。Use the y_test dataframe, and convert it to a list to compare to the predicted values. 関数 mean_absolute_error は 2 つの配列の値を取得して、その 2 つの値間の平均の絶対値を計算します。The function mean_absolute_error takes two arrays of values, and calculates the average absolute value error between them. この例では、平均絶対誤差の 3.5 は、モデルが実際の値の前後 3.5 以内のコストを平均で予測していることを意味します。In this example, a mean absolute error of 3.5 would mean that on average, the model predicts the cost within plus or minus 3.5 of the actual value.

from sklearn.metrics import mean_absolute_error

y_actual = y_test.values.flatten().tolist()
mean_absolute_error(y_actual, y_predict)
[ 3.16213051 ]

次のコードを実行し、完全な y_actualy_predict データ セットを使用して MAPE (平均絶対誤差率) を計算します。Run the following code to calculate MAPE (mean absolute percent error) using the full y_actual and y_predict data sets. このメトリックは、予測される各値と実際の値の間の絶対誤差を計算し、すべての差分を合計して、その合計を実際の値の合計に対する割合として表します。This metric calculates an absolute difference between each predicted and actual value, sums all the differences, and then expresses that sum as a percent of the total of the actual values.

sum_actuals = sum_errors = 0

for actual_val, predict_val in zip(y_actual, y_predict):
    abs_error = actual_val - predict_val
    if abs_error < 0:
        abs_error = abs_error * -1

    sum_errors = sum_errors + abs_error
    sum_actuals = sum_actuals + actual_val

mean_abs_percent_error = sum_errors / sum_actuals
print("Model MAPE:")
print(mean_abs_percent_error)
print()
print("Model Accuracy:")
print(1 - mean_abs_percent_error)
Model MAPE:
0.22424976634422172

Model Accuracy:
0.7757502336557782

リソースのクリーンアップClean up resources

重要

作成したリソースは、Azure Machine Learning サービスに関連したその他のチュートリアルおよびハウツー記事の前提条件として使用できます。The resources you created can be used as prerequisites to other Azure Machine Learning service tutorials and how-to articles.

ここで作成したリソースを今後使用する予定がない場合は、課金が発生しないように削除します。If you don't plan to use the resources you created here, delete them so you don't incur any charges.

  1. Azure Portal で、左端にある [リソース グループ] を選択します。In the Azure portal, select Resource groups on the far left.

    Azure Portal での削除

  2. 作成したリソース グループを一覧から選択します。From the list, select the resource group you created.

  3. [リソース グループの削除] を選択します。Select Delete resource group.

  4. リソース グループの名前を入力し、[削除] を選択します。Enter the resource group name, and then select Delete.

    "入れ子になっているリソースを削除する前にリソースを削除することはできません" というエラー メッセージが表示される場合は、入れ子になったリソースを先に削除する必要があります。If you see the error message "Cannot delete resource before nested resources are deleted," you must delete any nested resources first. 入れ子になったリソースを削除する方法については、このトラブルシューティングのセクションを参照してください。For information on how to delete nested resources, see this troubleshooting section.

次の手順Next steps

自動化された機械学習に関するこのチュートリアルでは、次のことを学習しました。In this automated machine learning tutorial, you:

  • 実験用のワークスペースと準備されたデータを構成しましたConfigured a workspace and prepared data for an experiment
  • カスタム パラメーターを使って、自動化された回帰モデルをローカルで使用してトレーニングしましたTrained using an automated regression model locally with custom parameters
  • トレーニング結果を探索して確認しましたExplored and reviewed training results
  • 最高のモデルを登録しましたRegistered the best model

Azure Machine Learning を使ってモデルをデプロイしてください。Deploy your model with Azure Machine Learning.