チュートリアル 3: あやめの分類: モデルをデプロイするTutorial 3: Classify Iris: Deploy a model

Azure Machine Learning (プレビュー) は、データ サイエンスと高度な分析をエンド ツー エンドで支援する統合ソリューションであり、プロフェッショナルなデータ サイエンティストを対象としています。Azure Machine Learning (preview) is an integrated, end-to-end data science and advanced analytics solution for professional data scientists. データ サイエンティストは、このソリューションを使用してデータの準備、実験の開発、モデルのデプロイをクラウド規模で行うことができます。Data scientists can use it to prepare data, develop experiments, and deploy models at cloud scale.

このチュートリアルは、3 部構成のシリーズのパート 3 になります。This tutorial is part three of a three-part series. チュートリアルのこのパートでは、Machine Learning (プレビュー) を使って次の作業を行います。In this part of the tutorial, you use Machine Learning (preview) to:

  • モデル ファイルを探すLocate the model file.
  • スコア付けスクリプトとスキーマ ファイルを生成する。Generate a scoring script and schema file.
  • 環境を準備する。Prepare the environment.
  • リアルタイム Web サービスを作成する。Create a real-time web service.
  • リアルタイム Web サービスを実行する。Run the real-time web service.
  • 出力された BLOB データを確認する。Examine the output blob data.

このチュートリアルでは、経時的な変化を伴わないあやめデータ セットを使用します。This tutorial uses the timeless Iris flower data set.

前提条件Prerequisites

このチュートリアルを完了するには、次のものが必要です。To complete this tutorial, you need:

  • Azure サブスクリプション。An Azure subscription. Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。If you don't have an Azure subscription, create a free account before you begin.
  • 実験アカウントと Azure Machine Learning Workbench (こちらのクイック スタートの説明に従ってインストールされていること)An experimentation account and Azure Machine Learning Workbench installed as described in this quickstart
  • チュートリアルのパート 2 で得られた分類モデルThe classification model from Tutorial part 2
  • Docker エンジン (ローカルにインストールされ、実行されていること)A Docker engine installed and running locally

モデルの pickle ファイルをダウンロードするDownload the model pickle file

このチュートリアルの前のパートでは、ローカルの Machine Learning Workbench で iris_sklearn.py スクリプトを実行しました。In the previous part of the tutorial, the iris_sklearn.py script was run in the Machine Learning Workbench locally. その際、Python オブジェクトのシリアル化パッケージとして広く使われている pickle を使ってロジスティック回帰モデルをシリアル化しました。This action serialized the logistic regression model by using the popular Python object-serialization package pickle.

  1. Machine Learning Workbench アプリケーションを開きます。Open the Machine Learning Workbench application. 次に、チュートリアル シリーズの前のパートで作成した myIris プロジェクトを開きます。Then open the myIris project you created in the previous parts of the tutorial series.

  2. プロジェクトが開いたら、左側のウィンドウにある [ファイル] ボタン (フォルダー アイコン) を選択して、プロジェクト フォルダーのファイルを一覧表示します。After the project is open, select the Files button (folder icon) on the left pane to open the file list in your project folder.

  3. iris_sklearn.py ファイルを選択します。Select the iris_sklearn.py file. Workbench の新しいテキスト エディター タブに Python コードが表示されます。The Python code opens in a new text editor tab inside the workbench.

  4. pickle ファイルが生成されている場所を iris_sklearn.py ファイルで確認します。Review the iris_sklearn.py file to see where the pickle file was generated. Ctrl + F キーを押して [検索] ダイアログ ボックスを開き、Python コード内で pickle という単語を探してください。Select Ctrl+F to open the Find dialog box, and then find the word pickle in the Python code.

    このコード スニペットを見ると、pickle の出力ファイルがどのように生成されているのかがわかります。This code snippet shows how the pickle output file was generated. pickle の出力ファイルは、model.pkl という名前でディスクに保存されます。The output pickle file is named model.pkl on the disk.

    print("Export the model to model.pkl")
    f = open('./outputs/model.pkl', 'wb')
    pickle.dump(clf1, f)
    f.close()
    
  5. 前回実行時の出力ファイルからモデルの pickle ファイルを探します。Locate the model pickle file in the output files of a previous run.

    iris_sklearn.py スクリプトを実行したときに、モデル ファイルは model.pkl という名前で outputs フォルダーに書き込まれています。When you ran the iris_sklearn.py script, the model file was written to the outputs folder with the name model.pkl. このフォルダーは、ローカルのプロジェクト フォルダーにではなく、スクリプトの実行場所として選んだ実行環境に存在します。This folder lives in the execution environment that you choose to run the script, and not in your local project folder.

    a.a. ファイルを探すには、左側のウィンドウにある [実行] ボタン (時計のアイコン) を選択して [すべての実行] の一覧を開きます。To locate the file, select the Runs button (clock icon) on the left pane to open the list of All Runs.

    b.b. [すべての実行] タブが表示されます。The All Runs tab opens. 実行のテーブルで、最近の実行をどれか 1 つ選択します。対象の環境が [local] で、スクリプト名が [iris_sklearn.py] であるものを選んでください。In the table of runs, select one of the recent runs where the target was local and the script name was iris_sklearn.py.

    c.c. [Run Properties](実行プロパティ) ウィンドウが開きます。The Run Properties pane opens. ウィンドウの右上のセクションにある [出力] セクションに注目してください。In the upper-right section of the pane, notice the Outputs section.

    d.d. pickle ファイルをダウンロードするには、model.pkl ファイルの横のチェック ボックスをオンにし、[ダウンロード] を選択します。To download the pickle file, select the check box next to the model.pkl file, and then select Download. このファイルをプロジェクト フォルダーのルートに保存してください。Save the file to the root of your project folder. このファイルは、この後の手順で必要になります。The file is needed in the upcoming steps.

    pickle ファイルをダウンロードする

    outputs フォルダーの詳細については、大きなデータ ファイルの読み取りと書き込みの方法に関する記事を参照してください。Read more about the outputs folder in How to read and write large data files.

スコア付けスクリプトとスキーマ ファイルを取得するGet the scoring script and schema files

Web サービスをモデル ファイルと一緒にデプロイするには、スコア付けスクリプトが必要になります。To deploy the web service along with the model file, you also need a scoring script. さらに、オプションで Web サービスの入力データに使用するスキーマも必要になることがあります。Optionally, you need a schema for the web service input data. スコア付けスクリプトを実行すると、現在のフォルダーから model.pkl ファイルが読み込まれ、このファイルを使用して、新しい予測が生成されます。The scoring script loads the model.pkl file from the current folder and uses it to produce new predictions.

  1. Machine Learning Workbench アプリケーションを開きます。Open the Machine Learning Workbench application. 次に、チュートリアル シリーズの前のパートで作成した myIris プロジェクトを開きます。Then open the myIris project you created in the previous part of the tutorial series.

  2. プロジェクトが開いたら、左側のウィンドウにある [ファイル] ボタン (フォルダー アイコン) を選択して、プロジェクト フォルダーのファイルを一覧表示します。After the project is open, select the Files button (folder icon) on the left pane to open the file list in your project folder.

  3. score_iris.py ファイルを選択します。Select the score_iris.py file. Python スクリプトが表示されます。The Python script opens. このファイルは、スコア付けファイルとして使用されます。This file is used as the scoring file.

    スコア付けファイル

  4. スキーマ ファイルを取得するには、このスクリプトを実行します。To get the schema file, run the script. コマンド バーで [local] 環境と [score_iris.py] スクリプトを選択し、[実行] を選択します。Select the local environment and the score_iris.py script in the command bar, and then select Run.

    このスクリプトを実行すると、[出力] セクションに JSON ファイルが作成されます。このファイルによって、モデルに必要な入力データ スキーマがキャプチャされます。This script creates a JSON file in the Outputs section, which captures the input data schema required by the model.

  5. [プロジェクト ダッシュボード] ウィンドウの右側の [ジョブ] ウィンドウに注目します。Note the Jobs pane on the right side of the Project Dashboard pane. 最新の score_iris.py ジョブが緑色の [完了] 状態になるまで待ちます。Wait for the latest score_iris.py job to display the green Completed status. 次に、最新のジョブ実行の score_iris.py というハイパーリンクを選択すると、実行の詳細が表示されます。Then select the hyperlink score_iris.py for the latest job run to see the run details.

  6. [Run Properties](実行プロパティ) ウィンドウの [出力] セクションで、新しく作成された service_schema.json ファイルを選択します。On the Run Properties pane, in the Outputs section, select the newly created service_schema.json file. ファイル名の横のチェック ボックスをオンにし、[ダウンロード] を選択します。Select the check box next to the file name, and then select Download. このファイルをプロジェクトのルート フォルダーに保存してください。Save the file into your project root folder.

  7. 先ほど score_iris.py スクリプトを開いたタブに戻ります。Return to the previous tab where you opened the score_iris.py script. データ収集を使用して、Web サービスからモデルの入力と予測をキャプチャすることができます。By using data collection, you can capture model inputs and predictions from the web service. 以降の手順は、データ収集で特に重要となります。The following steps are of particular interest for data collection.

  8. モデル データの収集機能は ModelDataCollector クラスに含まれています。そこで、このクラスがファイルの冒頭のコードによってインポートされることを確認します。Review the code at the top of the file, which imports class ModelDataCollector, because it contains the model data collection functionality:

    from azureml.datacollector import ModelDataCollector
    
  9. init() 関数の次のコード行によって、ModelDataCollector がインスタンス化されることを確認します。Review the following lines of code in the init() function that instantiates ModelDataCollector:

    global inputs_dc, prediction_dc
    inputs_dc = ModelDataCollector('model.pkl',identifier="inputs")
    prediction_dc = ModelDataCollector('model.pkl', identifier="prediction")`
    
  10. run(input_df) 関数の次のコード行によって、入力データと予測データが収集されることを確認します。Review the following lines of code in the run(input_df) function as it collects the input and prediction data:

    inputs_dc.collect(input_df)
    prediction_dc.collect(pred)
    

これで、モデルを運用するための環境を準備する用意が整いました。Now you're ready to prepare your environment to operationalize the model.

ローカルで運用できるように準備する [サービスの開発とテスト用]Prepare to operationalize locally [For development and testing your service]

ローカル コンピューター上の Docker コンテナーで実行するには、"ローカル モード" デプロイを使います。Use local mode deployment to run in Docker containers on your local computer.

"ローカル モード" は、開発とテストに使うことができます。You can use local mode for development and testing. 以降の手順でモデルを運用可能な状態にするためには、Docker エンジンがローカルで実行されている必要があります。The Docker engine must be running locally to complete the following steps to operationalize the model. 各コマンドの末尾で -h フラグを使用すると、対応するヘルプ メッセージを表示することができます。You can use the -h flag at the end of each command to show the corresponding help message.

注意

Docker エンジンがローカルで実行されていない場合、デプロイ用のクラスターを Azure に作成することで手順を続行できます。If you don't have the Docker engine locally, you can still proceed by creating a cluster in Azure for deployment. クラスターは再利用するために残しておくか、チュートリアルを終えた後は、それ以上料金が発生しないよう削除してください。You can keep the cluster for re-use, or delete it after the tutorial so you don't incur ongoing charges.

注意

ローカルにデプロイされた Web サービスは、Azure Portal のサービス一覧には表示されません。Web services deployed locally do not show up in Azure Portal's list of services. これらは、ローカル コンピューター上の Docker で実行されます。They will be running in Docker on the local machine.

  1. コマンド ライン インターフェイス (CLI) を開きます。Open the command-line interface (CLI). Machine Learning Workbench アプリケーションの [ファイル] メニューの [コマンド プロンプトを開く] を選択してください。In the Machine Learning Workbench application, on the File menu, select Open Command Prompt.

    現在のプロジェクト フォルダーの場所 (c:\temp\myIris>) でコマンド ライン プロンプトが開きます。The command-line prompt opens in your current project folder location c:\temp\myIris>.

  2. Azure リソースプロバイダー Microsoft.ContainerRegistry がサブスクリプションに登録されていることを確認します。Make sure the Azure resource provider Microsoft.ContainerRegistry is registered in your subscription. 手順 3. で環境を作成するには、このリソース プロバイダーを登録しておく必要があります。You must register this resource provider before you can create an environment in step 3. 登録済みであるかどうかは、次のコマンドを使って確認できます。You can check to see if it's already registered by using the following command:

    az provider list --query "[].{Provider:namespace, Status:registrationState}" --out table 
    

    次のような出力結果が表示されます。You should see output like this:

    Provider                                  Status 
    --------                                  ------
    Microsoft.Authorization                   Registered 
    Microsoft.ContainerRegistry               Registered 
    microsoft.insights                        Registered 
    Microsoft.MachineLearningExperimentation  Registered 
    ... 
    

    Microsoft.ContainerRegistry が登録されていない場合は、次のコマンドを使用して登録できます。If Microsoft.ContainerRegistry is not registered, you can register it by using the following command:

    az provider register --namespace Microsoft.ContainerRegistry 
    

    登録には数分かかる場合があります。Registration can take a few minutes. 登録の状態は、前出の az provider list コマンドまたは次のコマンドを使用して確認できます。You can check on its status by using the previous az provider list command or the following command:

    az provider show -n Microsoft.ContainerRegistry 
    

    出力の 3 行目に "registrationState": "Registering" と表示されます。The third line of the output displays "registrationState": "Registering". 出力に "registrationState": "Registered" と表示されるまで、しばらく待ってから show コマンドを繰り返します。Wait a few moments and repeat the show command until the output displays "registrationState": "Registered".

    注意

    ACS クラスターにデプロイする場合は、まったく同じ方法を使って、Microsoft.ContainerService リソース プロバイダーも登録する必要があります。If you are deploying to an ACS cluster, you need register the Microsoft.ContainerService resource provider as well using the exact same approach.

  3. 環境を作成します。Create the environment. この手順は、環境ごとに 1 回実行する必要があります。You must run this step once per environment. たとえば開発環境で 1 回、運用環境で 1 回実行します。For example, run it once for development environment, and once for production. この最初の環境には "ローカル モード" を使います Use local mode for this first environment. 後から "クラスター モード" で環境を設定してみる場合は、次のコマンドで -c スイッチまたは --cluster スイッチを指定してください。You can try the -c or --cluster switch in the following command to set up an environment in cluster mode later.

    次の setup コマンドを実行するには、サブスクリプションの共同作成者のアクセス権が必要です。The following setup command requires you to have Contributor access to the subscription. このアクセス権がない場合、最低でも、デプロイ先のリソース グループに対する共同作成者のアクセス権が必要となります。If you don't have that, you need at least Contributor access to the resource group that you are deploying to. 後者の場合、setup コマンドで -g フラグを使用し、リソース グループの名前を指定する必要があります。In the latter case, you need to specify the resource group name as part of the setup command by using the -g flag.

    az ml env setup -n <new deployment environment name> --location <e.g. eastus2>
    

    画面の指示に従い、Docker イメージを格納するためのストレージ アカウント、Docker イメージをリストする Azure Container Registry、テレメトリを収集する Azure Application Insights アカウントをプロビジョニングします。Follow the on-screen instructions to provision a storage account for storing Docker images, an Azure container registry that lists the Docker images, and an Azure Application Insights account that gathers telemetry. -c スイッチを使用する場合、コマンドはさらに Container Service クラスターを作成します。If you use the -c switch, the command will additionally create a Container Service cluster.

    クラスター名によって環境を識別できます。The cluster name is a way for you to identify the environment. 場所には、Azure Portal で作成したモデル管理アカウントと同じ場所を指定する必要があります。The location should be the same as the location of the Model Management account you created from the Azure portal.

    環境が正しく設定されていることを確認するには、次のコマンドを使用して状態を確認します。To make sure that the environment is set up successfully, use the following command to check the status:

    az ml env show -n <deployment environment name> -g <existing resource group name>
    

    手順 5 で環境を設定する前に、次の図に示すように [プロビジョニング状態] の値が [成功] になっていることを確認してください。Make sure that "Provisioning State" has the value "Succeeded", as shown, before you set the environment in step 5:

    プロビジョニング状態

  4. このチュートリアルの前のパートでモデル管理アカウントを作成しなかった場合は、ここで作成します。If you didn't create a Model Management account in previous parts of this tutorial, do so now. これは 1 回限りの作業です。This is a one-time setup.

    az ml account modelmanagement create --location <e.g. eastus2> -n <new model management account name> -g <existing resource group name> --sku-name S1
    
  5. モデル管理アカウントを設定します。Set the Model Management account.

    az ml account modelmanagement set -n <youracctname> -g <yourresourcegroupname>
    
  6. 環境を設定します。Set the environment.

    設定が完了したら、環境の運用化に必要な環境変数を次のコマンドで設定します。After the setup finishes, use the following command to set the environment variables required to operationalize the environment. 環境名には、前の手順 3. で使用した名前を使用します。Use the same environment name that you used previously in step 3. リソース グループ名には、セットアップ プロセスが完了したときにコマンド ウィンドウに出力された名前を使用します。Use the same resource group name that was output in the command window when the setup process finished.

    az ml env set -n <deployment environment name> -g <existing resource group name>
    
  7. ローカル Web サービスのデプロイ用に運用可能にした環境が適切に構成されていることを確認するには、次のコマンドを入力します。To verify that you have properly configured your operationalized environment for local web service deployment, enter the following command:

    az ml env show
    

これで、リアルタイム Web サービスを作成する準備が整いました。Now you're ready to create the real-time web service.

注意

モデル管理アカウントと環境は、その後の Web サービスのデプロイに再利用することができます。You can reuse your Model Management account and environment for subsequent web service deployments. これらを Web サービスごとに作成する必要はありません。You don't need to create them for each web service. 1 つのアカウントまたは環境に複数の Web サービスを関連付けることができます。An account or an environment can have multiple web services associated with it.

1 つのコマンドでリアルタイム Web サービスを作成するCreate a real-time web service in one command

  1. リアルタイム Web サービスを作成するには、次のコマンドを使用します。To create a real-time web service, use the following command:

    az ml service create realtime -f score_iris.py --model-file model.pkl -s service_schema.json -n irisapp -r python --collect-model-data true -c aml_config\conda_dependencies.yml
    

    このコマンドにより、後で使用できる Web サービス ID が生成されます。This command generates a web service ID you can use later.

    az ml service create realtime コマンドでは、次のスイッチを使用します。The following switches are used with the az ml service create realtime command:

    • -f: スコア付けスクリプト ファイルの名前。-f: The scoring script file name.

    • --model-file: モデル ファイル。--model-file: The model file. このケースでは、pickle から出力された model.pkl ファイルになります。In this case, it's the pickled model.pkl file.

    • -s: サービス スキーマ。-s: The service schema. 前の手順で score_iris.py スクリプトをローカルに実行したことによって生成されたものです。This was generated in a previous step by running the score_iris.py script locally.

    • -n: アプリ名。すべて小文字にする必要があります。-n: The app name, which must be all lowercase.

    • -r: モデルのランタイム。-r: The runtime of the model. このケースでは、Python モデルになります。In this case, it's a Python model. 有効なランタイムは pythonspark-py です。Valid runtimes are python and spark-py.

    • --collect-model-data true: このスイッチは、データ収集を有効にするものです。--collect-model-data true: This switch enables data collection.

    • -c: 追加のパッケージが指定されている conda 依存関係ファイルのパス。-c: Path to the conda dependencies file where additional packages are specified.

    重要

    サービス名 (新しい Docker イメージ名) はすべて小文字であることが必要です。The service name, which is also the new Docker image name, must be all lowercase. そうしないと、エラーが発生します。Otherwise, you get an error.

  2. このコマンドを実行すると、環境のセットアップの一環として作成したストレージ アカウントに、モデル ファイルとスコア付けファイルがアップロードされます。When you run the command, the model and the scoring files are uploaded to the storage account you created as part of the environment setup. このデプロイ プロセスによって、モデル、スキーマ、スコア付けファイルが含まれた Docker イメージが作成され、Azure Container Registry (<ACR_name>.azurecr.io/<imagename>:<version>) にプッシュされます。The deployment process builds a Docker image with your model, schema, and scoring file in it, and then pushes it to the Azure container registry: <ACR_name>.azurecr.io/<imagename>:<version>.

    さらに、そのイメージがローカルのコンピューターにプルダウンされ、そのイメージに基づいて Docker コンテナーが起動されます。The command pulls down the image locally to your computer and then starts a Docker container based on that image. ご利用の環境がクラスター モードで構成されている場合は、Azure Cloud Services の Kubernetes クラスターに Docker コンテナーがデプロイされます。If your environment is configured in cluster mode, the Docker container is deployed into the Azure Cloud Services Kubernetes cluster instead.

    デプロイの一環として、Web サービスの HTTP REST エンドポイントがローカル マシンに作成されます。As part of the deployment, an HTTP REST endpoint for the web service is created on your local machine. 数分後、コマンドが完了し、正常終了のメッセージが表示されます。After a few minutes, the command should finish with a success message. これで、Web サービスを実行する準備が整いました。Your web service is ready for action!

  3. 実行中の Docker コンテナーを確認するには、docker ps コマンドを使用します。To see the running Docker container, use the docker ps command:

    docker ps
    

[その他の方法 (省略可)] 個別のコマンドを使用してリアルタイム Web サービスを作成する[Optional alternative] Create a real-time web service by using separate commands

前述の az ml service create realtime コマンドの代わりに、手順を個別に実行することもできます。As an alternative to the az ml service create realtime command shown previously, you also can perform the steps separately.

まずモデルを登録します。First, register the model. 次にマニフェストを生成し、Docker イメージを作成して、Web サービスを作成します。Then generate the manifest, build the Docker image, and create the web service. この段階的なアプローチにより、各手順での柔軟性が高まります。This step-by-step approach gives you more flexibility at each step. また、前の手順で生成されたエンティティを再利用したり、必要な場合にのみエンティティを再構築したりすることができます。Additionally, you can reuse the entities generated in previous steps and rebuild the entities only when needed.

  1. pickle ファイル名を指定してモデルを登録します。Register the model by providing the pickle file name.

    az ml model register --model model.pkl --name model.pkl
    

    このコマンドにより、モデル ID が生成されます。This command generates a model ID.

  2. マニフェストを作成します。Create a manifest.

    マニフェストを作成するには、前の手順で出力されたモデル ID を指定して次のコマンドを実行します。To create a manifest, use the following command and provide the model ID output from the previous step:

    az ml manifest create --manifest-name <new manifest name> -f score_iris.py -r python -i <model ID> -s service_schema.json -c aml_config\conda_dependencies.yml
    

    このコマンドにより、マニフェスト ID が生成されます。This command generates a manifest ID.

  3. Docker イメージを作成します。Create a Docker image.

    Docker イメージを作成するには、前の手順で出力されたマニフェスト ID の値を指定して次のコマンドを実行します。To create a Docker image, use the following command and provide the manifest ID value output from the previous step. 必要に応じて、-c スイッチを使用して conda 依存関係を含めることもできます。You also can optionally include the conda dependencies by using the -c switch.

    az ml image create -n irisimage --manifest-id <manifest ID> 
    

    このコマンドにより、Docker イメージ ID が生成されます。This command generates a Docker image ID.

  4. サービスを作成します。Create the service.

    サービスを作成するには、前の手順で出力されたイメージ ID を指定して次のコマンドを実行します。To create a service, use the following command and provide the image ID output from the previous step:

    az ml service create realtime --image-id <image ID> -n irisapp --collect-model-data true
    

    このコマンドにより、Web サービス ID が生成されます。This command generates a web service ID.

これで、Web サービスを実行する準備が整いました。You are now ready to run the web service.

リアルタイム Web サービスを実行するRun the real-time web service

実行中の irisapp Web サービスをテストするために、4 つの乱数の配列を含む JSON エンコードされたレコードを使用します。To test the irisapp web service that's running, use a JSON-encoded record containing an array of four random numbers.

  1. この Web サービスにはサンプル データが含まれています。The web service includes sample data. ローカル モードで実行している場合は、az ml service usage realtime コマンドを呼び出すことができます。When running in local mode, you can call the az ml service usage realtime command. この呼び出しにより、サービスのテストに使用することができるサンプル実行コマンドが取得されます。That call retrieves a sample run command that you can use to test the service. また、独自のカスタム アプリにサービスを組み込む際に使用できるスコア付け URL も取得されます。The call also retrieves the scoring URL that you can use to incorporate the service into your own custom app.

    az ml service usage realtime -i <web service ID>
    
  2. サービスをテストするには、返された service run コマンドを実行します。To test the service, execute the returned service run command:

    az ml service run realtime -i <web service ID> -d '{\"input_df\": [{\"petal width\": 0.25, \"sepal length\": 3.0, \"sepal width\": 3.6, \"petal length\": 1.3}]}'
    

    "Iris-setosa" という値が出力されます。これは、予測された品種を表しています The output is "Iris-setosa", which is the predicted class. (実際の結果は異なる場合があります)。(Your result might be different.)

Azure Blob Storage に収集されたデータを確認するView the collected data in Azure Blob storage

  1. Azure Portal にサインインします。Sign in to the Azure portal.

  2. 自分のストレージ アカウントを探します。Locate your storage accounts. そのためには、[すべてのサービス] を選択します。To do so, select All Services.

  3. 検索ボックスに「ストレージ アカウント」と入力し、Enter キーを押します。In the search box, enter Storage accounts, and then select Enter.

  4. [ストレージ アカウント] 検索ボックスで、自分の環境に該当する [ストレージ アカウント] リソースを選択します。From the Storage accounts search box, select the Storage account resource matching your environment.

    ヒント

    使用中のストレージ アカウントを調べるには、次の手順を実行します。To determine which storage account is in use:

    1. Machine Learning Workbench を開きます。Open Machine Learning Workbench.
    2. 作業中のプロジェクトを選択します。Select the project you're working on.
    3. [ファイル] メニューからコマンド ライン プロンプトを開きます。Open a command line prompt from the File menu.
    4. コマンド ライン プロンプトに「az ml env show -v」と入力し、storage_account の値を確認します。At the command line prompt, enter az ml env show -v, and check the storage_account value. それがストレージ アカウントの名前です。This is the name of your storage account.
  5. [ストレージ アカウント] ウィンドウが開いたら、[サービス] セクションで [BLOB] を選択します。After the Storage account pane opens, select Blobs from the Services section. modeldata という名前のコンテナーを探します。Locate the container named modeldata.

    データがまったく表示されない場合は少しお待ちください。最初の Web サービス要求の後、ストレージ アカウントにデータが反映されるまでに、最大 10 分程度かかる場合があります。If you don't see any data, you might need to wait up to 10 minutes after the first web-service request to see the data propagate to the storage account.

    データが次のコンテナー パスで BLOB に取り込まれます。Data flows into blobs with the following container path:

    /modeldata/<subscription_id>/<resource_group_name>/<model_management_account_name>/<webservice_name>/<model_id>-<model_name>-<model_version>/<identifier>/<year>/<month>/<day>/data.csv
    
  6. このデータを Azure Blob Storage から取り出して利用することができます。You can consume this data from Azure Blob storage. データは、次のような Microsoft のソフトウェアやオープン ソースの各種ツールで使用できます。There are a variety of tools that use both Microsoft software and open-source tools, such as:

    • Machine Learning: データ ソースとして CSV ファイルを追加して開く。Machine Learning: Open the CSV file by adding the CSV file as a data source.

    • Excel: 日々の CSV ファイルをスプレッドシートとして開く。Excel: Open the daily CSV files as a spreadsheet.

    • Power BI: BLOB の CSV データからプルしたデータを使ってグラフを作成する。Power BI: Create charts with data pulled from the CSV data in blobs.

    • Hive: CSV データを Hive テーブルに読み込み、BLOB に対して SQL クエリを直接実行する。Hive: Load the CSV data into a Hive table, and perform SQL queries directly against the blobs.

    • Spark: CSV データの大部分を含んだデータフレームを作成する。Spark: Create a DataFrame with a large portion of CSV data.

      var df = spark.read.format("com.databricks.spark.csv").option("inferSchema","true").option("header","true").load("wasb://modeldata@<storageaccount>.blob.core.windows.net/<subscription_id>/<resource_group_name>/<model_management_account_name>/<webservice_name>/<model_id>-<model_name>-<model_version>/<identifier>/<year>/<month>/<date>/*")
      

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

重要

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

このクイック スタートで作成したリソースを今後使う予定がない場合は、課金が発生しないよう削除してください。If you're not going to use what you've created here, delete the resources you just created with this quickstart 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. リソース グループの名前を入力し、[削除] を選択します。Type the resource group name and then select Delete.

    "入れ子になっているリソースを削除する前にリソースを削除することはできません" というエラーが発生した場合は、入れ子になったリソースを先に削除しておいてください。If you get the error "Can not delete resource before nested resources are deleted", you must delete any nested resources first. 詳細については、こちらのトラブルシューティング セクションを参照してください。Refer to this troubleshooting section for details.

次の手順Next steps

3 部構成のチュートリアル シリーズのパート 3 では、Machine Learning を使って次の作業を行う方法について説明しました。In this third part of the three-part tutorial series, you have learned how to use Machine Learning to:

  • モデル ファイルを探すLocate the model file.
  • スコア付けスクリプトとスキーマ ファイルを生成する。Generate a scoring script and schema file.
  • 環境を準備する。Prepare the environment.
  • リアルタイム Web サービスを作成する。Create a real-time web service.
  • リアルタイム Web サービスを実行する。Run the real-time web service.
  • 出力された BLOB データを確認する。Examine the output blob data.

さまざまなコンピューティング環境でトレーニング スクリプトを正常に実行することができました。You have successfully run a training script in various compute environments. また、Docker ベースの Web サービスを通じて、モデルを作成、シリアル化、および運用可能化しました。You have also created, serialized, and operationalized a model through a Docker-based web service.

高度なデータ準備をいつでも行うことができます。You are now ready to do advanced data preparation: