Azure Machine Learning 資産を特定する

完了

データ サイエンティストは、主に Azure Machine Learning ワークスペース内の資産を操作します。 資産は、プロジェクトのさまざまな段階で作成および使用され、次のものが含まれます。

  • モデル
  • 環境
  • データ
  • コンポーネント

モデルを作成して管理する

モデルをトレーニングする場合の最終成果物は、そのモデル自体です。 Scikit-learn や PyTorch などのさまざまなフレームワークを使って、機械学習モデルをトレーニングできます。 このようなモデルを保存する一般的な方法は、モデルを Python pickle ファイル (拡張子 .pkl) としてパッケージ化することです。

または、オープンソース プラットフォーム MLflow を使って、MLModel 形式でモデルを保存することもできます。

どのような形式を選択しても、バイナリ ファイルがモデルと対応するメタデータを表します。 これらのファイルを保持するために、ワークスペースにモデルを作成または登録できます。

ワークスペースにモデルを作成するときは、"名前" と "バージョン" を指定します。 登録されたモデルをデプロイする場合に特に便利ですが、バージョン管理を使うと、使いたい特定のモデルを追跡できます。

環境を作成および管理する

クラウド コンピューティングを使用する場合は、使用できる任意のコンピューティングでコードが確実に実行されるようにすることが重要です。 スクリプトをコンピューティング インスタンスで実行する場合も、コンピューティング クラスターで実行する場合も、コードは正常に実行される必要があります。

ローカル デバイス上で、Python または R で作業し、オープンソース フレームワークを使ってモデルをトレーニングする場合を想像してみてください。 Scikit-learn や PyTorch などのライブラリを使用する場合は、それらをデバイスにインストールする必要があります。

同様に、フレームワークやライブラリを使ったコードを記述する場合は、そのコードを実行するコンピューティングに必要なコンポーネントが必ずインストールされている必要があります。 必要なすべての要件をリストアップするには、環境を作成します。 環境を作成するときは、"名前" と "バージョン" を指定する必要があります。

環境では、スクリプトを実行するためのソフトウェア パッケージ、環境変数、ソフトウェア設定を指定します。 環境は、初めて使用したときにワークスペースと共に作成される Azure Container Registry に、イメージとして格納されます。

スクリプトを実行する場合は常に、コンピューティング先で使用される必要がある環境を指定できます。 スクリプトを実行する前に、環境によって必要なすべての要件がコンピューティングにインストールされるので、各コンピューティング先にわたってコードが堅牢かつ再利用可能になります。

データを作成して管理する

データストアには Azure データ ストレージ サービスへの接続情報が含まれていますが、データ資産は特定のファイルまたはフォルダーを参照します。

データ資産を使うと、毎回簡単にデータにアクセスでき、アクセスするたびに認証を行わなくても済みます。

ワークスペースにデータ資産を作成するときは、ファイルまたはフォルダーを指すパスと、"名前" と "バージョン" を指定します。

コンポーネントを作成して管理する

機械学習モデルをトレーニングするには、コードを記述します。 各プロジェクト間には、再利用できるコードが存在する場合があります。 コードを最初から記述する代わりに、他のプロジェクトからコードのスニペットを再利用したいと考えます。

コードの共有を容易にするために、ワークスペースにコンポーネントを作成できます。 コンポーネントを作成するには、"名前"、"バージョン"、コード、コードの実行に必要な "環境" を指定する必要があります。

パイプラインを作成する場合にコンポーネントを使用できます。 そのため、コンポーネントは多くの場合、パイプライン内のステップを表します。たとえば、データの正規化、回帰モデルのトレーニング、検証データセットでのトレーニング済みモデルのテストなどです。