次の方法で共有


Azure Machine Learning SDK v1 for Python とは

大事な

この記事では、現在の SDK ではない Azure Machine Learning SDK v1 について説明します。 現在の SDK バージョンは、Azure Machine Learning Python SDK v2です。 SDK バージョンの違いについては、「v2へのアップグレード 参照してください。

データ サイエンティストと AI 開発者は、Azure Machine Learning SDK v1 for Python を使用して、Azure Machine Learning serviceを使用して機械学習ワークフローを構築して実行します。 Jupyter Notebook、Visual Studio Code、お気に入りの Python IDE など、任意の Python 環境でサービスを操作できます。

SDK の主な領域は次のとおりです。

  • 機械学習の実験で使用されるデータセットのライフサイクルを調査、準備、管理します。
  • 機械学習の実験を監視、ログ記録、整理するためのクラウド リソースを管理します。
  • モデルをローカルでトレーニングするか、GPU で高速化されたモデル トレーニングを含むクラウド リソースを使用してトレーニングします。
  • 構成パラメーターとトレーニング データを受け入れる自動機械学習を使用します。 アルゴリズムとハイパーパラメーター設定を自動的に反復処理して、予測を実行するための最適なモデルを見つけます。
  • Web サービスをデプロイして、トレーニング済みのモデルを任意のアプリケーションで使用できる RESTful サービスに変換します。

使用を開始する方法の詳細なチュートリアルについては、チュートリアルのを試してください。

次のセクションでは、SDK で最も重要なクラスの概要と、それらを使用するための一般的な設計パターンについて説明します。 SDK を入手するには、インストール ガイドのを参照してください。

安定版と実験用

Azure Machine Learning SDK for Python は、同じ SDK で安定した機能と試験的な機能の両方を提供します。

機能/機能の状態 形容
安定した機能 Production ready

これらの機能は、ほとんどのユース ケースと運用環境に推奨されます。 更新頻度が低くなり、試験的な機能が更新されます。
試験的な機能 開発

これらの機能は、運用環境で使用する準備ができていないか、完全にテストされていない可能性がある更新プログラム & 新しく開発された機能です。 通常、機能は機能しますが、いくつかの破壊的変更を含めることができます。 試験的な機能は、SDK の破壊的バグを解消するために使用され、テスト期間中のみ更新プログラムを受け取ります。 試験的な機能は、プレビューにある機能とも呼ばれます。

名前が示すように、試験的な (プレビュー) 機能は実験用であり、バグのない、または安定したとは見なされません。 このため、機能と更新プログラムの初期バージョンを試して、バグや不具合の報告に参加する予定の上級ユーザーにのみ、試験的な機能をお勧めします。

試験段階の機能は、SDK リファレンスのノート セクションでラベル付けされ、Azure Machine Learning のドキュメント全体を通じて (プレビュー) などのテキストで示されます。

ワークスペース

名前空間の: azureml.core.workspace.Workspace

Workspace クラスは、機械学習モデルの実験、トレーニング、デプロイに使用するクラウドの基本リソースです。 Azure サブスクリプションとリソース グループは、簡単に使用できるオブジェクトに関連付けられます。

既存のインスタンス (Storage、Key Vault、App-Insights、Azure Container Registry-ACR) を再利用したり、プライベート エンドポイントの構成やコンピューティング ターゲットなどの追加設定を変更したりするために ワークスペースの作成メソッドのすべてのパラメーター 表示します。

クラスをインポートし、次のコードを使用して新しいワークスペースを作成します。 ワークスペースに使用する既存の Azure リソース グループがある場合は、create_resource_groupFalse に設定します。 一部の関数では、Azure 認証資格情報の入力を求められる場合があります。

from azureml.core import Workspace
ws = Workspace.create(name='myworkspace',
                      subscription_id='<azure-subscription-id>',
                      resource_group='myresourcegroup',
                      create_resource_group=True,
                      location='eastus2'
                     )

複数の環境で同じワークスペースを使用するには、最初に構成 JSON ファイルに書き込みます。 これにより、サブスクリプション、リソース、ワークスペース名のデータが保存されます。

ws.write_config(path="./file-path", file_name="ws_config.json")

構成ファイルを読み取ってワークスペースを読み込みます。

from azureml.core import Workspace
ws_other_environment = Workspace.from_config(path="./file-path/ws_config.json")

または、静的 get() メソッドを使用して、構成ファイルを使用せずに既存のワークスペースを読み込みます。

from azureml.core import Workspace
ws = Workspace.get(name="myworkspace", subscription_id='<azure-subscription-id>', resource_group='myresourcegroup')

変数 ws は、次のコード例の Workspace オブジェクトを表します。

実験

名前空間の: azureml.core.experiment.Experiment

Experiment クラスは、試用版のコレクション (個々のモデルの実行) を表すもう 1 つの基本的なクラウド リソースです。 次のコードは、Workspace 内から名前で Experiment オブジェクトをフェッチするか、名前が存在しない場合は新しい Experiment オブジェクトを作成します。

from azureml.core.experiment import Experiment
experiment = Experiment(workspace=ws, name='test-experiment')

次のコードを実行して、Workspaceに含まれるすべての Experiment オブジェクトの一覧を取得します。

list_experiments = Experiment.list(ws)

get_runs 関数を使用して、Experimentから Run オブジェクト (試用版) の一覧を取得します。 次のコードは、実行を取得し、各実行 ID を出力します。

list_runs = experiment.get_runs()
for run in list_runs:
    print(run.id)

実験試用版を実行するには、2 つの方法があります。 Jupyter ノートブックで対話的に実験する場合は、start_logging 関数を使用します。 標準の Python 環境から実験を送信する場合は、submit 関数を使用します。 どちらの関数も、Run オブジェクトを返します。 experiment 変数は、次のコード例の Experiment オブジェクトを表します。

走る

名前空間の: azureml.core.run.Run

実行は、実験の 1 回の試行を表します。 Run は、試用版の非同期実行の監視、試用版の出力の格納、結果の分析、生成された成果物へのアクセスに使用するオブジェクトです。 実験コード内の Run を使用して、メトリックと成果物を実行履歴サービスに記録します。 機能には次のものが含まれます。

  • メトリックとデータの格納と取得。
  • タグと子階層を使用して、過去の実行を簡単に検索できます。
  • 格納されているモデル ファイルをデプロイ用に登録する。
  • 実行のプロパティの格納、変更、および取得。

実行構成 オブジェクトを持つ Experiment オブジェクトを送信して、Run オブジェクトを作成します。 tags パラメーターを使用して、カスタム カテゴリとラベルを実行にアタッチします。 後で Experimentから簡単に見つけて取得できます。

tags = {"prod": "phase-1-model-tests"}
run = experiment.submit(config=your_config_object, tags=tags)

静的 list 関数を使用して、Experimentからすべての Run オブジェクトの一覧を取得します。 以前に作成したタグでフィルター処理する tags パラメーターを指定します。

from azureml.core.run import Run
filtered_list_runs = Run.list(experiment, tags=tags)

get_details 関数を使用して、実行の詳細な出力を取得します。

run_details = run.get_details()

この関数の出力は、次を含むディクショナリです。

  • 実行 ID
  • 地位
  • 開始時刻と終了時刻
  • コンピューティング 先 (ローカルとクラウド)
  • 実行で使用される依存関係とバージョン
  • トレーニング固有のデータ (モデルの種類によって異なります)

実行を構成および監視する方法の他の例については、のハウツーを参照してください。

モデル

名前空間の: azureml.core.model.Model

Model クラスは、機械学習モデルのクラウド表現を操作するために使用されます。 メソッドは、ローカル開発環境とクラウド内の Workspace オブジェクトの間でモデルを転送するのに役立ちます。

モデルの登録を使用して、Azure クラウド内のワークスペースにモデルを格納およびバージョン管理できます。 登録済みモデルは、名前とバージョンによって識別されます。 既存のモデルと同じ名前でモデルを登録するたびに、レジストリによってバージョンがインクリメントされます。 Azure Machine Learning では、Azure Machine Learning モデルだけでなく、Python 3 を介して読み込むことができるすべてのモデルがサポートされています。

次の例は、scikit-learnを使用して単純なローカル分類モデルを構築し、モデルを Workspaceに登録し、クラウドからモデルをダウンロードする方法を示しています。

単純な分類子 (clf) を作成して、年齢に基づいて顧客離れを予測します。 次に、モデルを同じディレクトリ内の .pkl ファイルにダンプします。

from sklearn import svm
import joblib
import numpy as np

# customer ages
X_train = np.array([50, 17, 35, 23, 28, 40, 31, 29, 19, 62])
X_train = X_train.reshape(-1, 1)
# churn y/n
y_train = ["yes", "no", "no", "no", "yes", "yes", "yes", "no", "no", "yes"]

clf = svm.SVC(gamma=0.001, C=100.)
clf.fit(X_train, y_train)

joblib.dump(value=clf, filename="churn-model.pkl")

register 関数を使用して、ワークスペースにモデルを登録します。 ローカル モデル パスとモデル名を指定します。 同じ名前を複数回登録すると、新しいバージョンが作成されます。

from azureml.core.model import Model

model = Model.register(workspace=ws, model_path="churn-model.pkl", model_name="churn-model-test")

モデルがワークスペースに登録されたので、モデルの管理、ダウンロード、整理が簡単になります。 Workspaceからモデル (たとえば、別の環境) オブジェクトを取得するには、クラス コンストラクターを使用し、モデル名と任意の省略可能なパラメーターを指定します。 次に、download 関数を使用して、クラウド フォルダー構造を含むモデルをダウンロードします。

from azureml.core.model import Model
import os

model = Model(workspace=ws, name="churn-model-test")
model.download(target_dir=os.getcwd())

delete 関数を使用して、Workspaceからモデルを削除します。

model.delete()

モデルを登録したら、それを Web サービスとしてデプロイするのは簡単なプロセスです。 まず、イメージを作成して登録 。 この手順では、Web サービスの要求と応答の形式を定義するスクリプトと共に、Python 環境とその依存関係を構成します。 イメージを作成したら、コンピューティング 先の CPU コアとメモリ パラメーターを設定するデプロイ構成 を作成 。 その後、イメージを添付します。

ComputeTarget、RunConfiguration、および ScriptRunConfig

名前空間の: azureml.core.compute.ComputeTarget
名前空間の: azureml.core.runconfig.RunConfiguration
名前空間の: azureml.core.script_run_config.ScriptRunConfig

ComputeTarget クラスは、コンピューティング 先を作成および管理するための抽象親クラスです。 コンピューティング ターゲットは、機械学習モデルをトレーニングできるさまざまなリソースを表します。 コンピューティング 先には、ローカル コンピューターまたはクラウド リソース (Azure Machine Learning コンピューティング、Azure HDInsight、リモート仮想マシンなど) を指定できます。

コンピューティング ターゲットを使用して、モデル トレーニング用の強力な仮想マシンを利用し、永続的なコンピューティング ターゲットまたは一時的なランタイム呼び出し先を設定します。 コンピューティング 先の設定と管理に関する包括的なガイドについては、のハウツーを参照してください。

次のコードは、AmlCompute (ComputeTargetの子クラス) ターゲットを設定する簡単な例を示しています。 このターゲットは、Workspace オブジェクトにランタイム リモート コンピューティング リソースを作成します。 リソースは、ジョブが送信されると自動的にスケーリングされます。 実行が完了すると、自動的に削除されます。

単純な scikit-learn チャーン モデルを再利用し、現在のディレクトリ内の独自のファイル (train.py) にビルドします。 ファイルの最後に、outputsという名前の新しいディレクトリを作成します。 この手順では、シリアル化 joblib.dump() トレーニング済みモデルを格納するディレクトリをクラウド (ワークスペース) に作成します。

# train.py

from sklearn import svm
import numpy as np
import joblib
import os

# customer ages
X_train = np.array([50, 17, 35, 23, 28, 40, 31, 29, 19, 62])
X_train = X_train.reshape(-1, 1)
# churn y/n
y_train = ["yes", "no", "no", "no", "yes", "yes", "yes", "no", "no", "yes"]

clf = svm.SVC(gamma=0.001, C=100.)
clf.fit(X_train, y_train)

os.makedirs("outputs", exist_ok=True)
joblib.dump(value=clf, filename="outputs/churn-model.pkl")

次に、RunConfiguration オブジェクトをインスタンス化し、型とサイズを設定して、コンピューティング 先を作成します。 この例では、最小のリソース サイズ (1 CPU コア、3.5 GB のメモリ) を使用します。 list_vms 変数には、サポートされている仮想マシンとそのサイズの一覧が含まれています。

from azureml.core.runconfig import RunConfiguration
from azureml.core.compute import AmlCompute
list_vms = AmlCompute.supported_vmsizes(workspace=ws)

compute_config = RunConfiguration()
compute_config.target = "amlcompute"
compute_config.amlcompute.vm_size = "STANDARD_D1_V2"

CondaDependencies クラスを使用して、リモート コンピューティング リソースの Python 環境の依存関係を作成します。 train.py ファイルは、環境にインストールする必要がある scikit-learnnumpyを使用しています。 依存関係のバージョンを指定することもできます。 dependencies オブジェクトを使用して、compute_configで環境を設定します。

from azureml.core.conda_dependencies import CondaDependencies

dependencies = CondaDependencies()
dependencies.add_pip_package("scikit-learn")
dependencies.add_pip_package("numpy==1.15.4")
compute_config.environment.python.conda_dependencies = dependencies

これで、実験を送信する準備ができました。 ScriptRunConfig クラスを使用して、コンピューティング 先の構成をアタッチし、トレーニング スクリプト train.pyへのパス/ファイルを指定します。 submit() 関数の config パラメーターを指定して、実験を送信します。 結果の実行で wait_for_completion を呼び出して、環境が初期化され、モデルがトレーニングされるときに非同期実行の出力を確認します。

警告

ScriptRunConfig パラメーターで使用する場合の、特定の文字に関する制限事項を次に示します。

  • "$;、および \ 文字は、bash コマンドを分離するための予約文字と見なされるため、バックエンドによってエスケープされます。
  • Windows でのローカル実行では、()%!^<>&、および | 文字がエスケープされます。
from azureml.core.experiment import Experiment
from azureml.core import ScriptRunConfig

script_run_config = ScriptRunConfig(source_directory=os.getcwd(), script="train.py", run_config=compute_config)
experiment = Experiment(workspace=ws, name="compute_target_test")
run = experiment.submit(config=script_run_config)
run.wait_for_completion(show_output=True)

実行が完了すると、トレーニング済みのモデル ファイル churn-model.pkl がワークスペースで使用できるようになります。

環境

名前空間の: azureml.core.environment

Azure Machine Learning 環境では、トレーニング スクリプトとスコアリング スクリプトに関する Python パッケージ、環境変数、ソフトウェア設定を指定します。 Python に加えて、環境用に PySpark、Docker、R を構成することもできます。 内部的には、環境では Docker イメージが生成され、コンピューティング 先でトレーニング プロセスとスコアリング プロセスを実行するために使用されます。 環境は、Machine Learning ワークスペース内で管理およびバージョン管理されたエンティティであり、さまざまなコンピューティング ターゲットとコンピューティングの種類にわたって再現可能で監査可能でポータブルな機械学習ワークフローを可能にします。

Environment オブジェクトを使用すると、次のことができます。

  • トレーニング スクリプトを開発します。
  • 大規模なモデル トレーニングのために、Azure Machine Learning コンピューティングで同じ環境を再利用します。
  • 特定のコンピューティングの種類に関連付けることなく、同じ環境でモデルをデプロイします。

次のコードでは、SDK から Environment クラスをインポートし、環境オブジェクトをインスタンス化します。

from azureml.core.environment import Environment
Environment(name="myenv")

Conda、pip、またはプライベート ホイール ファイルを使用して、環境にパッケージを追加します。 CondaDependency クラスを使用して各パッケージの依存関係を指定し、環境の PythonSectionに追加します。

次の例では、環境に追加します。 バージョン 1.17.0 の numpyが追加されます。 また、pillow パッケージを環境に追加 myenv。 この例では、それぞれ add_conda_package() メソッドと add_pip_package() メソッドを使用します。

from azureml.core.environment import Environment
from azureml.core.conda_dependencies import CondaDependencies

myenv = Environment(name="myenv")
conda_dep = CondaDependencies()

# Installs numpy version 1.17.0 conda package
conda_dep.add_conda_package("numpy==1.17.0")

# Installs pillow package
conda_dep.add_pip_package("pillow")

# Adds dependencies to PythonSection of myenv
myenv.python.conda_dependencies=conda_dep

トレーニング実行を送信するには、環境、コンピューティング ターゲット、トレーニング Python スクリプトを実行構成に組み合わせる必要があります。 この構成は、実行の送信に使用されるラッパー オブジェクトです。

トレーニング実行を送信する場合、新しい環境の構築には数分かかる場合があります。 期間は、必要な依存関係のサイズによって異なります。 環境はサービスによってキャッシュされます。 そのため、環境定義が変更されない限り、完全なセットアップ時間は 1 回だけ発生します。

次の例は、ラッパー オブジェクトとして ScriptRunConfig を使用する場所を示しています。

from azureml.core import ScriptRunConfig, Experiment
from azureml.core.environment import Environment

exp = Experiment(name="myexp", workspace = ws)
# Instantiate environment
myenv = Environment(name="myenv")

# Add training script to run config
runconfig = ScriptRunConfig(source_directory=".", script="train.py")

# Attach compute target to run config
runconfig.run_config.target = "local"

# Attach environment to run config
runconfig.run_config.environment = myenv

# Submit run 
run = exp.submit(runconfig)

実行を送信する前に実行構成で環境を指定しない場合は、既定の環境が自動的に作成されます。

環境を使用して Web サービスをデプロイするには、「モデルのデプロイ」セクションを参照してください。

パイプライン、PythonScriptStep

名前空間の: azureml.pipeline.core.pipeline.Pipeline
名前空間の: azureml.pipeline.steps.python_script_step.PythonScriptStep

Azure Machine Learning パイプラインは、完全な機械学習タスクの自動化されたワークフローです。 サブタスクは、パイプライン内の一連のステップとしてカプセル化されます。 Azure Machine Learning パイプラインは、Python スクリプトを呼び出す 1 つのステップと同じくらい簡単です。 パイプラインには、次の機能が含まれます。

  • インポート、検証とクリーニング、組み込みと変換、正規化、ステージングなどのデータ準備
  • 引数のパラメーター化、ファイルパス、ログ記録/レポート構成を含むトレーニング構成
  • トレーニングと検証を効率的かつ繰り返し実行します。これには、特定のデータ サブセットの指定、さまざまなハードウェア コンピューティング リソース、分散処理、進行状況の監視が含まれる場合があります
  • バージョン管理、スケーリング、プロビジョニング、アクセス制御を含むデプロイ
  • 任意の HTTP ライブラリから再実行するパイプラインを REST エンドポイントに発行する

PythonScriptStep は、コンピューティング 先で Python スクリプトを実行するための基本的な組み込み手順です。 スクリプト名とその他の省略可能なパラメーター (スクリプトの引数、コンピューティング ターゲット、入力、出力など) を受け取ります。 次のコードは、PythonScriptStepの簡単な例です。 train.py スクリプトの例については、チュートリアルのサブセクション 参照してください。

from azureml.pipeline.steps import PythonScriptStep

train_step = PythonScriptStep(
    script_name="train.py",
    arguments=["--input", blob_input_data, "--output", output_data1],
    inputs=[blob_input_data],
    outputs=[output_data1],
    compute_target=compute_target,
    source_directory=project_folder
)

少なくとも 1 つのステップが作成されたら、ステップをリンクし、単純な自動パイプラインとして発行できます。

from azureml.pipeline.core import Pipeline

pipeline = Pipeline(workspace=ws, steps=[train_step])
pipeline_run = experiment.submit(pipeline)

パイプライン ワークフローを構築する包括的な例については、高度なチュートリアルに従ってください。

パイプラインを作成して使用するためのパターン

Azure Machine Learning パイプラインは Azure Machine Learning ワークスペースに関連付けられます。パイプライン ステップは、そのワークスペース内で使用可能なコンピューティング ターゲットに関連付けられます。 詳細については、ワークスペースの に関するこの 記事、またはコンピューティング ターゲットのに関するこの説明 参照してください。

パイプラインステップの一般的なパターンは次のとおりです。

  1. ワークスペース、コンピューティング、ストレージを指定する
  2. を使用して入力データと出力データを構成する
    1. 既存の Azure データストアを使用できるようにするデータセット の
    2. 型指定された表形式データをカプセル化する PipelineDataset の
    3. PipelineData。ある手順で書き込まれた中間ファイルまたはディレクトリ データに使用され、別のステップで使用されることを目的としています。
  3. 1 つ以上のパイプライン ステップを定義する
  4. ワークスペースと手順を使用してパイプラインをインスタンス化する
  5. パイプラインを送信する実験を作成する
  6. 実験結果を監視する

このノートブック は、このパターンの良い例です。 仕事

Azure Machine Learning パイプラインの詳細、特に他の種類のパイプラインとの違いについては、この 記事を参照してください。

AutoMLConfig

名前空間の: azureml.train.automl.automlconfig.AutoMLConfig

AutoMLConfig クラスを使用して、自動機械学習トレーニングのパラメーターを構成します。 自動機械学習は、機械学習アルゴリズムとハイパーパラメーター設定の多くの組み合わせを反復処理します。 その後、選択した精度メトリックに基づいて最適なモデルが見つかります。 構成では、次を指定できます。

  • タスクの種類 (分類、回帰、予測)
  • アルゴリズムの反復回数とイテレーションあたりの最大時間
  • 最適化する精度メトリック
  • ブロックリスト/許可リストに対するアルゴリズム
  • クロス検証の数
  • コンピューティング 先
  • トレーニング データ

手記

自動機械学習を使用するには、インストールで追加の automl を使用します。

自動化された機械学習実験を設定する詳細なガイドと例については、チュートリアルの方法のを参照してください。

次のコードは、分類モデルの自動機械学習構成オブジェクトを構築し、実験を送信するときに使用する方法を示しています。

from azureml.train.automl import AutoMLConfig

automl_config = AutoMLConfig(task="classification",
                             X=your_training_features,
                             y=your_training_labels,
                             iterations=30,
                             iteration_timeout_minutes=5,
                             primary_metric="AUC_weighted",
                             n_cross_validations=5
                            )

automl_config オブジェクトを使用して実験を送信します。

from azureml.core.experiment import Experiment

experiment = Experiment(ws, "automl_test_experiment")
run = experiment.submit(config=automl_config, show_output=True)

実験を送信すると、各イテレーションの完了時のトレーニング精度が出力に表示されます。 実行が完了すると、(Run クラスを拡張する) AutoMLRun オブジェクトが返されます。 get_output() 関数を使用して Model オブジェクトを返すことで、最適なモデルを取得します。

best_model = run.get_output()
y_predict = best_model.predict(X_test)

モデルのデプロイ

名前空間の: azureml.core.model.InferenceConfig
名前空間の: azureml.core.webservice.webservice.Webservice

InferenceConfig クラスは、モデルと Web サービスをホストするために必要な環境を記述する構成設定用です。

Webservice は、モデルの Web サービスを作成およびデプロイするための抽象親クラスです。 モデルのデプロイの準備と Web サービスのデプロイに関する詳細なガイドについては、この のハウツーを参照してください。

モデルを Web サービスとしてデプロイするときに 環境を使用できます。 環境により、再現可能で接続されたワークフローが可能になり、トレーニング コンピューティングと推論コンピューティングの両方で同じライブラリを使用してモデルをデプロイできます。 内部的には、環境は Docker イメージとして実装されます。 Microsoft によって提供されるイメージを使用することも、独自のカスタム Docker イメージを使用することもできます。 以前にデプロイに ContainerImage クラスを使用していた場合は、環境で同様のワークフローを実行するための DockerSection クラスを参照してください。

Web サービスをデプロイするには、環境、推論コンピューティング、スコアリング スクリプト、および登録済みモデルをデプロイ オブジェクトに組み合わせて、deploy()します。

次の例では、環境 myenvを使用してトレーニング実行を既に完了しており、そのモデルを Azure Container Instances にデプロイすることを前提としています。

from azureml.core.model import InferenceConfig, Model
from azureml.core.webservice import AciWebservice, Webservice

# Register the model to deploy
model = run.register_model(model_name = "mymodel", model_path = "outputs/model.pkl")

# Combine scoring script & environment in Inference configuration
inference_config = InferenceConfig(entry_script="score.py",
                                   environment=myenv)

# Set deployment configuration
deployment_config = AciWebservice.deploy_configuration(cpu_cores = 1,
                                                       memory_gb = 1)

# Define the model, inference, & deployment configuration and web service name and location to deploy
service = Model.deploy(workspace = ws,
                       name = "my_web_service",
                       models = [model],
                       inference_config = inference_config,
                       deployment_config = deployment_config)

この例では、小規模なテストと迅速なデプロイに最適な Azure Container Instances Web サービスを作成します。 モデルを実稼働規模の Web サービスとしてデプロイするには、Azure Kubernetes Service (AKS) を使用します。 詳細については、AksCompute クラスを参照してください。

データセット

名前空間の: azureml.core.dataset.Dataset
名前空間の: azureml.data.file_dataset.FileDataset
名前空間の: azureml.data.tabular_dataset.TabularDataset

Dataset クラスは、Azure Machine Learning 内のデータを探索および管理するための基本的なリソースです。 概要統計を使用してデータを探索し、データセットを AML ワークスペースに保存して、バージョン管理と再現性の機能を取得できます。 データセットは、トレーニング中にモデルによって簡単に使用できます。 詳細な使用方法の例については、ハウツー ガイドのを参照してください。

  • TabularDataset は、ファイルまたはファイルのリストを解析して作成された表形式のデータを表します。
  • FileDataset データストア内の単一または複数のファイル、またはパブリック URL から参照します。

次の例は、データストア内の 1 つのパスを指す TabularDataset を作成する方法を示しています。

from azureml.core import Dataset

dataset = Dataset.Tabular.from_delimited_files(path = [(datastore, 'train-dataset/tabular/iris.csv')])
dataset.take(3).to_pandas_dataframe()

次の例は、複数のファイル URL を参照する FileDataset を作成する方法を示しています。

from azureml.core.dataset import Dataset

url_paths = [
            'http://yann.lecun.com/exdb/mnist/train-images-idx3-ubyte.gz',
            'http://yann.lecun.com/exdb/mnist/train-labels-idx1-ubyte.gz',
            'http://yann.lecun.com/exdb/mnist/t10k-images-idx3-ubyte.gz',
            'http://yann.lecun.com/exdb/mnist/t10k-labels-idx1-ubyte.gz'
            ]
dataset = Dataset.File.from_files(path=url_paths)

次の手順

Azure Machine Learning SDK for Python の使用方法については、次の手順を試してください。

  • チュートリアルの に従って、Python でモデルを構築、トレーニング、デプロイする方法を学習します。

  • 左側の目次を使用して、このサイトのリファレンス ドキュメントでクラスとモジュールを検索します。