MLOps と Trustworthy AI チュートリアル: モデルを作成とデプロイする

このチュートリアルでは、データ・ファブリック評価版の MLOps および Trustworthy AI ユース・ケースを使用してモデルを作成、デプロイ、および追跡します。 目標は、どの申請者が住宅ローンの資格を満たすかを予測するモデルをトレーニングし、そのモデルを評価のためにデプロイすることです。 また、モデル履歴を記述し、そのパフォーマンスの説明を生成するために、モデルのトラッキングをセットアップする必要があります。

このチュートリアルのストーリーは、ゴールデン・バンクがオンライン・アプリケーションに低金利のモーゲージ更新を提供することでビジネスを拡大しようとしているというものです。オンライン・アプリケーションは、銀行の顧客範囲を拡大し、銀行のアプリケーション処理コストを削減します。 ゴールデン・バンクのデータ・サイエンティストは、予期しないリスクを回避し、すべての応募者を公平に扱う住宅ローン承認モデルを作成する必要があります。 Jupyter ノートブックを実行してモデルを作成し、AI Factsheet でモデルを追跡するメタデータを自動的に取り込みます。

このチュートリアルでは、以下のタスクを実行します:

  1. モデルのトラッキングをセットアップする。
  2. API キーを生成します。
  3. モデル・インベントリー内にモデル・エントリーを作成する。
  4. ノートブックを実行してモデルを作成する。
  5. モデルのファセット・シートを表示し、モデル・エントリーに関連付けます。
  6. モデルをデプロイします。

このチュートリアルでヘルプが必要な場合は、 Cloud Pak for Data コミュニティー・ディスカッション・フォーラムで質問するか、または回答を見つけてください。

ヒント: このチュートリアルを完了するのに最適な方法として、1 つのブラウザー・タブで Cloud Pak for Data as a Service を開き、このチュートリアル・ページを別のブラウザー・タブで開いたままにして、2 つのアプリケーションを簡単に切り替えることができます。

チュートリアルをプレビューする

ビデオを見る このチュートリアルのステップをプレビューするには、このビデオをご覧ください。

このビデオでは、本書に記載されている手順に従う代わりの方法として、視覚方式を提供します。

前提条件

Cloud Pak for Data as a Service に登録して、MLOps および Trustworthy AI ユース・ケースに必要なサービスをプロビジョンする必要があります。

Cloud Pak for Data as a Service には、以下のいずれかの方法で登録できます:

必要なサービスのプロビジョン

ビデオを見る このタスクをプレビューするには、 01:03から始まるビデオをご覧ください。

以下のステップに従って、必要なサービスを検証またはプロビジョンします。

  1. Cloud Pak for Data ナビゲーション・メニューから、 「サービス」>「サービス・インスタンス」を選択してください。
  2. 製品 ドロップダウン・ボックスを使用して、既存の Watson Studio サービス・インスタンスがあるかどうかを判別します。
  3. Watson Studio サービス・インスタンスを作成する必要がある場合は、 サービスの追加をクリックしてください。
  4. Watson Studioを選択してください。
  5. 「ライト」プランを選択します。
  6. 「作成」をクリックします。
  7. これらのステップを繰り返して、以下の追加サービスを確認またはプロビジョニングします:
    • Watson Machine Learning
    • Watson Knowledge Catalog
    • Cloud Object Storage

サンプル・プロジェクトを作成する

ビデオを見るこのタスクをプレビューするには、 01:43から始まるビデオをご覧ください。

このチュートリアル用のサンプル・プロジェクトをまだ作成していない場合は、以下のステップを実行します。

  1. ギャラリーの MLOps および Trustworthy AI ガイド付きチュートリアル・サンプル・プロジェクト にアクセスします。
  2. 「Create Project」をクリックします。
  3. プロジェクトを Cloud Object Storage インスタンスに関連付けるように求められたら、リストから Cloud Object Storage インスタンスを選択してください。
  4. 「作成」をクリックします。
  5. 新規プロジェクトの表示 をクリックして、プロジェクトと資産が正常に作成されたことを確認します。

ステップ 1: モデルのトラッキングをセットアップする

ビデオを見る このタスクをプレビューするには、 02:23から始まるビデオをご覧ください。

モデルを追跡するには、モデル・エントリーをカタログに追加します。 Watson Knowledge Catalog ライト・プランでは、カタログは 1 つしか作成できません。 既にカタログがある場合は、このステップをスキップしてください。 それ以外の場合は、以下の手順に従って、モデル・エントリーを保存するカタログを作成します。

  1. Cloud Pak for Data ナビゲーション・メニューから、 「カタログ」>「すべてのカタログの表示」を選択してください。
  2. カタログの作成をクリックしてください。
  3. 名前の場合は、 Mortgage Approval Catalogと入力します。 先頭または末尾にスペースを付けずに、示されているとおりにカタログ名を入力します。 カタログを Cloud Object Storage インスタンスに関連付けるように求めるプロンプトが出されたら、リストから Cloud Object Storage を選択してください。
  4. その他のすべてのフィールドについては、デフォルトを受け入れます。
  5. 「作成」をクリックします。

ステップ 2: API キーを生成する

ビデオを見る このタスクをプレビューするには、 02:53から始まるビデオをご覧ください。

このチュートリアルで使用するノートブックには、 Watson Machine Learning API にアクセスするためのコードが含まれています。 API キーを使用して資格情報を API に渡す必要があります。 保存された API キーがまだない場合は、以下の手順に従って API キーを作成します。

  1. IBM Cloud コンソールから、 「管理」> 「アクセス (IAM)」にナビゲートします。
  2. API キー ページをクリックしてください。
  3. 「IBM Cloud API キーの作成」をクリックします。
  4. 名前および説明を入力します。
  5. 「作成」をクリックします。
  6. API キーをコピーします 。
  7. 将来使用するために API キーをダウンロードします。

ステップ 3: モデル・インベントリーにモデル・エントリーを作成する

ビデオを見る このタスクをプレビューするには、 03:47から始まるビデオをご覧ください。

このタイプのプロジェクトでは、プロジェクトの開始時にモデル・エントリーを作成することをお勧めします。 モデル・エントリーは、ビジネス上の問題を解決するために使用できる複数の機械学習モデルを参照できます。 その後、データ・エンジニアとモデル・エバリュエーターは、モデル・エントリーにモデルを追加し、モデルのライフサイクルを通してモデルの進行を追跡できます。 モデル・エントリーを作成するには、以下の手順を実行します。

  1. Cloud Pak for Data ナビゲーション・メニューから、 「カタログ」>「モデル・インベントリー」を選択してください。
  2. 初めてモデル・インベントリーにアクセスする場合は、モデル・ガバナンスをセットアップするかどうかを尋ねるガイド・ツアーが表示されます。 ここでは、 後で実行をクリックしてください。
  3. 新規モデル・エントリーをクリックしてください。
    1. モデル・エントリー名の場合は、 Mortgage Approval Model Entryと入力します。 先頭または末尾にスペースを付けずに、示されているとおりにモデル項目名を入力します。
    2. 説明の場合は、 This model entry is for the Mortgage approval use case at Golden Bankと入力します。
    3. 複数のカタログがある場合は、 カタログ フィールドが表示されます。 住宅ローン承認カタログ または別の既存のカタログを選択してください。
    4. 「保存」をクリックします。

ステップ 4: ノートブックを実行してモデルを作成する

ビデオを見る このタスクをプレビューするには、 04:28から始まるビデオをご覧ください。

サンプル・プロジェクトに含まれているノートブックを実行するには、以下のステップを実行します。

  1. Cloud Pak for Data ナビゲーション・メニューから、 「プロジェクト」>「すべてのプロジェクトの表示」を選択してください。
  2. MLOps と Trustworthy AI プロジェクトを開きます。
  3. 資産 タブで、 「ソース・コード」> 「ノートブック」をクリックしてください。
  4. 1-model-training-with-factsheets ノートブックを開きます。
  5. ノートブックが読み取り専用モードであるため、 鉛筆 アイコンをクリックして、ノートブックを編集モードにします。
  6. ノートブックの上部にある指示に従って、プロジェクト・トークンをインポートします。
    1. その他 メニューから、 プロジェクト・トークンの挿入を選択してください。 これにより、プロジェクト・トークンを含む新しいセルがノートブックの上部に挿入されます。
  7. IBM Cloud API キーの挿入 セクションで、 ibmcloud_api_key フィールドに API キーを貼り付けます。
  8. ノートブックのすべてのセルを実行するには、 「セル」> 「すべて実行」をクリックしてください。 あるいは、各セルとその出力を探索する場合は、セルごとにノートブックを実行することもできます。
  9. ノートブックが完了するまでに 1 分から 3 分かかります。 各セルの進行状況をモニターするには、アスタリスク「In [*]」を数値に変更することをご注意ください。例えば、「In [1]」。
  10. ノートブックの実行中にエラーが発生した場合は、 Kernel > Restart & Clear Output をクリックしてカーネルを再始動してから、ノートブックを再実行します。

ステップ 5: モデルのファクト・シートを表示し、それをモデル・エントリーに関連付ける

ビデオを見る このタスクをプレビューするには、 06:14から始まるビデオをご覧ください。

ノートブックですべてのセルを実行した後、以下の手順に従って、プロジェクト内のモデルのファセット・シートを表示しから、そのモデルをモデル・インベントリー内のモデル・エントリーに関連付けます。

  1. パンくずリストで MLOps とTrustworthy AI プロジェクトをクリックしてください。
  2. 資産 タブで、 「保存されたモデル」> 「モデル」をクリックしてください。
  3. 先ほど作成した Mortgage Approval Prediction Model を開きます。
  4. このページには、モデルのファクトシートが表示されます。 モデル・ページをスクロールダウンすると、ノートブックの AI Factsheets Python クライアントによって取り込まれた トレーニング・メトリック および トレーニング・タグ の下のトレーニング・メタデータが表示されます。
  5. モデル・ページをスクロールアップし、 モデル・インベントリーに追加をクリックしてください。
    1. 既存のモデル・エントリーとの関連付けを選択してください。
    2. モデル項目のリストから、 Mortgage Approval Model Entryを選択してください。
    3. 「追加」をクリックします。
  6. モデル・ページに戻り、 Mortgage Approval Model Entry リンクをクリックしてください。
  7. モデル・エントリー・ページで、 資産 タブをクリックしてください。
  8. モデル・トラッキングでは、AI ファクト・シートがモデルのライフサイクルを通してモデルを追跡していることが分かります。このモデルはまだデプロイされていないため、 開発 ステージのままです。
  9. Mortgage Approval Prediction Model をクリックして、AI ファクト・シートを表示します。
  10. AI Factsheet の確認が完了したら、下部までスクロールし、 プロジェクトで開くをクリックしてください。

ステップ 6: モデルをデプロイする

ビデオを見るこのタスクをプレビューするには、07:34 から始まるビデオをご覧ください。

次に、モデルを新しいデプロイメント・スペースにプロモートしてから、モデルをデプロイします。

モデルを新規デプロイメント・スペースにプロモートするには、以下の手順を実行します。

  1. モデル・ページで、 デプロイメント・スペースにプロモートをクリックしてください。
    1. ターゲット・スペースの場合は、 新規デプロイメント・スペースの作成を選択してください。
    2. 名前には、 Golden Bank Preproduction Spaceと入力します。 先頭または末尾にスペースを付けずに、示されているとおりにデプロイメント・スペース名を入力します。
    3. リストからストレージ・サービスを選択します。
    4. リストから機械学習サービスを選択します。 機械学習サービス・インスタンスがない場合は、インスタンスを作成します。
      1. 新規機械学習インスタンスの作成を選択してください。
      2. 「ライト」プランを選択します。
      3. 「作成」をクリックします。 デプロイメント・スペースの作成 ページに戻るときに、新しい機械学習サービスを選択する必要があります。
    5. 「作成」をクリックします。
    6. 「閉じる」をクリックします。
    7. ターゲット・スペースの場合は、 ゴールデン・バンク・プレプロダクション・スペース が選択されていることを確認します。
    8. プロモート後にスペース内のモデルに移動 オプションをチェックします。
    9. プロモートをクリックします。

モデル・デプロイメントを作成するには、以下の手順を実行します。

  1. デプロイメント・スペースが開いたら、 新規デプロイメントをクリックしてください。
    1. デプロイメント・タイプの場合は、 オンラインを選択してください。
    2. 名前の場合は、 Mortgage Approval Model Deploymentと入力します。 示されているとおりに、先頭または末尾にスペースを付けずにデプロイメント名を入力します。
    3. サービス名の場合は、デプロイメント ID の代わりに mortgage_approval_service を入力します。 名前は、地域ごとに固有であることが検証されます。 このサービス名が既に存在する場合は、サービス名の末尾に数字 (または任意の固有文字) を追加します。 先頭または末尾にスペースを付けずにサービス提供名を入力します。
    4. 「作成」をクリックします。
  2. モデルが正常にデプロイされたら、モデル・インベントリーに戻ります。ナビゲーション・メニューから モデル・インベントリーを選択してください。
  3. Mortgage Approval Model Entryの場合は、 詳細の表示をクリックしてください。
  4. 資産 タブをクリックしてください。 モデル・トラッキングの下に、モデルが デプロイ ステージにあります。

次のステップ

これで、デプロイされた機械学習モデルを検証およびモニターして、正確かつ公正に作業することを確認する準備ができました。そのためには、 Watson OpenScaleを使用します。 モデルのテストおよび検証 チュートリアルを参照してください。

詳細情報

親トピック: データ・ファブリックのチュートリアル