ModelOps - 初めてのGITモデルのインポートとデプロイ
概要
これは、ClearScape Analytics ModelOps を初めて使用する人向けのハウツーです。このチュートリアルでは、ModelOpsで新しいプロジェクトを作成し、必要なデータをVantageにアップロードし、コードテンプレートを使用してModelOpsのGITモデルの方法論に従ってデモモデルのライフサイクルを完全に追跡することができるようになります。
前提条件
-
Teradata VantageインスタンスとClearScape Analytics(ModelOpsを含む)へのアクセス。
-
Jupyter Notebookを実行する機能
Vantage のテストインスタンスが必要な場合は、 https://clearscape.teradata.com で無料でプロビジョニングできます
必要なファイル
まず、このチュートリアルに必要なファイルをダウンロードしましょう。次の 4 つの添付ファイルをダウンロードし、ノートブックのファイルシステムにアップロードします。ModelOps のバージョンに応じてファイルを選択します。
ModelOpsバージョン6 (2022 年 10 月):
ModelOps トレーニング Notebookをダウンロード
デモユースケース用の BYOM Notebook ファイルをダウンロード
デモユースケース用の BYOM コード ファイルをダウンロード
または、以下のレポをgit cloneしてください。
ModelOpsバージョン7 (2023 年 4 月):
ModelOps トレーニング Notebookをダウンロード
デモユースケース用の BYOM Notebook ファイルをダウンロード
デモのユースケース用の BYOM コード ファイルをダウンロード
データベースとJupyter環境のセットアップ
ModelOps_Training Jupyter Notebook に従って、デモに必要なデータベース、テーブル、ライブラリのセットアップを行います。
メソドロジーにおける当社の位置づけを理解する
新しいプロジェクトを作成するか、既存のプロジェクトを使用する
新しいプロジェクトを追加する
-
プロジェクトを作成する
-
詳細
-
名前: Demo: your-name
-
説明: ModelOps デモ
-
グループ: your-name
-
信頼証明: 信頼証明なし
-
ブランチ: master
ここで git 接続をテストできます。緑色の場合は、保存して続行します。ここではサービス接続設定をスキップします。
新しいプロジェクトを作成するとき、ModelOpsは新しい接続をリクエストします。
パーソナル接続を作成する
パーソナル接続
-
名前: Vantage personal your-name
-
説明: Vantage デモ環境
-
ホスト: tdprd.td.teradata.com (teradata transcendの内部のみ)
-
データベース: your-db
-
VAL データベース: TRNG_XSP (teradata transcendの内部のみ)
-
BYOM データベース: TRNG_BYOM (teradata transcendの内部のみ)
-
ログイン メカニズム: TDNEGO
-
ユーザー名/パスワード
SQL データベースの VAL および BYOM のアクセス権を検証する
接続パネルの新しいヘルスチェックパネルでアクセス権を確認できます。
BYOM の評価とスコアリングのために Vantage テーブルを識別するためのデータセットを追加する
新しいデータセット テンプレートを作成してから、トレーニング用に 1 つのデータセット、評価用に 2 つのデータセットを作成して、2 つの異なるデータセットでモデルの品質メトリクスを監視でき るようにしましょう。
データセットを追加する
-
データセットテンプレートを作成する
-
カタログ
-
名前: PIMA
-
説明: PIMA Diabetes
-
フィーチャカタログ: Vantage
-
データベース: your-db
-
テーブル: aoa_feature_metadata
機能クエリー:
エンティティ キー: PatientId 機能: NumTimesPrg、PlGlcConc、BloodP、SkinThick、TwoHourSerIns、BMI、DiPedFunc、Age
エンティティとターゲットクエリー:
エンティティキー: PatientId ターゲット: HasDiabetes
予測
-
データベース: your-db
-
テーブル: pima_patient_predictions
エンティティの選択:
クエリー:
v6 のみ (v7 では BYOM のコードなし画面でこれを定義します): BYOM ターゲット列: CAST(CAST(json_report AS JSON).JSONExtractValue('$.predicted_HasDiabetes') AS INT)
トレーニングデータセットを作成する
ベーシック
-
名前: Train
-
説明: Trainingデータセット
-
スコープ: Training
-
エンティティとターゲット
クエリー:
評価データセット1を作成する
ベーシック
-
名前: Evaluate
-
説明: Evaluate データセット
-
スコープ: Evaluation
-
エンティティとターゲット
クエリー:
評価データセット2を作成する
ベーシック
-
名前: Evaluate
-
説明: Evaluate データセット
-
スコープ: Evaluation
-
エンティティとターゲット
クエリー:
コードテンプレートを準備する
Gitモデルでは、新しいモデルを追加するときに使用可能なコードテンプレートを入力する必要があります。
これらのコードスクリプトは、gitリポジトリのmodel_definitions/your-model/model_modules/に保存されます。
-
__init__py: これはPythonモジュールに必要な空のファイルです
-
training.py: このスクリプトには train 関数が含まれています
Operationalize Notebookを参照して、ModelOps UI の代替として CLI またはNotebookからこれを実行する方法を確認してください。
- evaluation.py: このスクリプトにはevaluate関数が含まれています
Operationalize Notebookを参照して、ModelOps UI の代わりに CLI またはNotebookからこれを実行する方法を確認してください。
- scoring.py: このスクリプトにはスコア関数が含まれています
Operationalize Notebookを参照して、ModelOps UI の代替として CLI またはNotebookからこれを実行する方法を確認してください。
- requirements.txt:このファイルには、コードスクリプトに必要なライブラリ名とバージョンが含まれています。例:
- config.json: 親フォルダ (モデルフォルダ) にあるこのファイルには、デフォルトのハイパーパラメータが含まれています
リポジトリ内のデモ モデルのコード スクリプトを確認してください: https://github.com/Teradata/modelops-demo-models/
model_definitions->python-diabetes->model_modulesに移動します。
新しい GIT のモデル ライフサイクル
-
プロジェクトを開いて、GIT から利用可能なモデルを確認する
-
新しいモデルのバージョンをトレーニングする
-
コードリポジトリからのCommitIDがどのように追跡されるかを確認する
-
評価する
-
データセットの統計情報やモデルのメトリクスを含む評価レポートを確認 する
-
他のモデルバージョンと比較する
-
承認する
-
Vantageにデプロイ - エンジン、公開、スケジュール。スコアリングデータセットが必要です 接続を使用してデータベースを選択します。例: "aoa_byom_models"
-
Docker Batch でデプロイする - エンジン、パブリッシュ、スケジュール データセットが必要です 接続を使用してデータベースを選択します。例: "aoa_byom_models"
-
Restful Batch でデプロイする - エンジン、パブリッシュ、スケジュール データセットが必要です 接続を使用してデータベースを選択します。例: "aoa_byom_models"
-
デプロイメント/実行する
-
dataset2 を使用して再度評価する - モデル メトリクスの動作を監視します
-
Model Driftを監視する - データとメトリクス
-
Vantage にデプロイされている場合、BYOM Notebookを開いて、SQL コードから PMML 予測を実行します。
-
ModelOps UI または curl コマンドから Restful をテストする
-
デプロイメントをリタイアする
まとめ
このクイック スタートでは、GIT モデルのライフサイクル全体を ModelOps で追跡し、それを Vantage または Edge デプロイメント用の Docker コンテナにデプロイする方法を学びました。次に、バッチ スコアリングをスケジュールしたり、RESTful またはオンデマンド スコアリングをテストしたり、データ ドリフトとモデル品質メトリックの監視を開始したりする方法を学びました。
さらに詳しく
ご質問がある場合やさらにサポートが必要な場合は、 コミュニティフォーラム にアクセスしてサポートを受けたり、他のコミュニティ メンバーと交流したりしてください。