Skip to content

アプリケーション内で をクリックすると、お使いのDataRobotバージョンに関する全プラットフォームドキュメントにアクセスできます。

カスタム推論モデルの作成

Custom inference models are user-created, pretrained models that you can upload to DataRobot (as a collection of files) via the Custom Model Workshop. 次に、モデルアーティファクトをアップロードして、DataRobotの一元化されたデプロイハブにカスタム推論モデルを作成、テスト、およびデプロイすることができます。

You can assemble custom inference models in either of the following ways:

  • カスタムモデルを作成し、モデルのフォルダーにWebサーバーのスコアリングコードとstart_server.shファイルを含めます。 このタイプのカスタムモデルは、カスタムまたはドロップイン環境と組み合わせることができます。

  • Webサーバーのスコアリングコードとstart_server.shファイルなしでカスタムモデルを作成します。 このタイプのカスタムモデルはドロップイン環境を使用する必要があります。 ドロップイン環境には、モデルによって使用されるWebサーバーのスコアリングコードとstart_server.shファイルが含まれます。 これらはワークショップ内のDataRobotによって提供されます。 独自のドロップインカスタム環境を作成を作成することもできます。

作業を続ける前に、カスタムモデルフォルダの準備に関するガイドラインを確認してください。 カスタムモデルと環境フォルダーの間でファイルが重複している場合は、モデルのファイルが優先されます。

備考

カスタムモデルのファイルコンテンツを組み立てると、DataRobotにアップロードする前に開発目的でローカルでコンテンツをテストできます。 ワークショップでカスタムモデルを作成した後、アセンブルタブからテストスイートを実行できます。

新しいカスタムモデルの作成

  1. カスタム環境を作成するには、モデルレジストリ > カスタムモデルワークショップ に移動し、モデルタブを選択します。 このタブには、作成したモデルが一覧表示されます。 新しいモデルを追加をクリックします。

  2. カスタム推論モデルを追加ウィンドウで、以下の表に記載されているフィールドに入力します。

    要素 説明
    モデル名 カスタムモデルに名前を付けます。
    ターゲットタイプ/ターゲット名 ターゲットタイプ(二値分類連続値多クラス異常検知、または非構造化)を選択して、ターゲット特徴量の名前を入力します。
    正のクラスのラベル/負のクラスのラベル これらのフィールドは、二値分類モデルに対してのみ表示されます。 正のクラスのラベルとして使用する値と負のクラスのラベルとして使用する値を指定します。
  3. オプションフィールドを表示をクリックし、必要に応じて、予測しきい値、モデルの構築に使用したコーディング言語、および説明を入力します。

  4. フィールドに入力したら、カスタムモデルを追加をクリックします。

  5. アセンブルタブの右側のモデル環境で、右側の基本環境ドロップダウンメニューをクリックして環境を選択し、モデル環境を選択します。 モデル環境は、カスタムモデルのテストデプロイに使用されます。

    備考

    基本環境プルダウンメニューにはドロップインモデル環境(存在する場合)と、作成可能なカスタム環境が含まれています。

  6. 左側のモデルでファイルをドラッグアンドドロップするか、参照してコンテンツを追加します。 または、リモート統合リポジトリを選択します。

    ローカルファイルを参照をクリックすると、ローカルフォルダーを追加するオプションが表示されます。 ローカルフォルダーは、モデル自体ではなく、モデルに必要な依存ファイルおよび追加のアセット用です。 モデルファイルがフォルダーに含まれている場合でも、ファイルがルートレベルに存在しない限り、DataRobotからモデルファイルにアクセスすることはできません。 ルートファイルは、フォルダー内の依存関係を指すことができます。

    備考

    また、ウェブサーバーのスコアリングコードとstart_server.shファイルをモデルのフォルダーにアップロードする必要があります(モデルとドロップイン環境を組み合わせる場合を除く)。

  7. モデルコンテンツを追加すると、以下が行えます。

異常検知

異常検知の問題をサポートするカスタム推論モデルを作成できます。 構築する場合は、DRUMテンプレートを参照してください。 このリンクをクリックする前にGitHubにログインしてください。カスタム推論異常検知モデルをデプロイする場合、次の機能はサポートされていないことに注意してください。

  • データドリフト
  • 精度と関連付けID
  • チャレンジャーモデル
  • 信頼性ルール
  • 予測間隔

依存関係の管理

カスタムモデルには、モデルコードにさまざまな機械学習ライブラリを含めることができますが、DataRobotで提供されるすべてのドロップイン環境がすべてのライブラリをネイティブにサポートするわけではありません。 ただし、これらの依存関係をワークショップから管理し、モデルコードをサポートするように基本のドロップイン環境を更新することができます。

モデルの依存関係を管理するには、カスタムモデルの一部としてアップロードされたrequirements.txtファイルを含める必要があります。 テキストファイルは、モデルコードで使用される機械学習ライブラリを示す必要があります。

たとえば、CaretおよびXGBoostライブラリを使用するカスタムRモデルを考えてみます。 このモデルがワークショップに追加され、Rドロップイン環境が選択されている場合、基本環境はCaretのみをサポートし、XGBoostはサポートしません。 これに対処するには、requirements.txtを編集してCaretとXGBoostの依存関係を含めます。 After editing and re-uploading the requirements file, the base environment can be installed with XGBoost, making the model available within the environment.

モデルタイプに応じて、以下をrequirements.txtにリストします。

  • Rモデルの場合、機械学習ライブラリの依存関係をリストします。

  • Pythonモデルの場合、依存関係およびライブラリのバージョン制限をリストします。 サポートされる制約タイプには、<<===>=>が含まれます。また、単一のエントリで複数の制約を発行できます(pandas >= 0.24, < 1.0など)。

要件ファイルを更新して依存関係と制約を含めた後、カスタムモデルのアセンブルタブに移動します。 モデル > コンテンツヘッダーの下でファイルをアップロードします。 モデルの依存関係フィールドが更新され、ファイルにリストされている依存関係と制約が表示されます。

アセンブルタブから、モデル環境ヘッダーの下で基本ドロップイン環境を選択します。 モデルの依存関係を考慮するために新しい環境を構築する必要があることを注意するメッセージが表示されます。 ビルド環境を選択すると、必要なライブラリと制約が基本環境にインストールされます。

基本環境が更新されると、その環境でカスタムモデルを使用できるようになり、テスト、デプロイ、または登録できるようになります。

新しいバージョンの追加

新しいパッケージバージョン、さまざまな前処理のステップ、ハイパーパラメーターなどが原因でモデルを更新する場合は、ファイルの内容を更新して、モデルや環境の新しいバージョンを作成できます。

その場合、ワークショップからモデルを選択してテストタブに移動します。 モデルヘッダーの下で、ファイルを追加を選択します。 更新したファイルまたはフォルダーをアップロードします。

モデルの個々の内容を更新すると、モデルのマイナーバージョン(1.1、1.2など)が自動的に更新されます。

モデルの新しいメジャーバージョン(1.0、2.0など)を作成するには、新しいバージョンを選択します。 以前のバージョンの内容を新しいバージョンにコピーするか、空のバージョンを作成して、モデルで使用する新しいファイルを追加します。

環境の新規バージョンをアップロードするには、このワークフローに従います。

以前のバージョンに加えて、新規バージョンのモデルまたは環境を使用できるようになります。 使用するモデルの反復をバージョンドロップダウンから選択します。

トレーニングデータの割り当て

カスタム推論モデルにトレーニングデータを追加する場合(モデルをデプロイできるようにする場合)は、カスタムモデルを選択し、モデル情報タブに移動します。

The Model Info tab lists custom inference model attributes. トレーニングデータを追加をクリックします。

トレーニングデータをアップロードするよう求めるポップアップが表示されます。

Click Choose file to upload training data. オプションで、(トレーニング/検定/保留分割に基づき)データの分割情報を含む列名を指定できます。 カスタムモデルをデプロイして精度を監視する場合、列にホールドアウトパーティションを指定して、精度のベースラインを規定します。 パーティション列を指定しなくても精度は追跡できますが、精度のベースラインはありません。 アップロードが完了したら、トレーニングデータを追加をクリックします。

備考

The method for providing training and holdout datasets for unstructured custom inference models requires you to upload the training and holdout datasets separately. Additionally, these datasets cannot include a partition column.

File size warning

When adding training data to a custom model, the training data can be subject to a frozen run to conserve RAM and CPU resources, limiting the file size of the training dataset to 1.5GB.

モデルリソースの管理

カスタム推論モデルを作成した後、モデルが消費するリソースを設定して、スムーズなデプロイを促進し、本番環境で発生する可能性のある環境エラーを最小限に抑えることができます。

アセンブルタブからカスタムモデルのリソース割り当てを監視できます。 リソース設定は、デプロイステータスの下に一覧表示されます。

リソース設定を編集するには、鉛筆アイコン()を選択します。 ユーザーはモデルに割り当てられた最大メモリーを決定できますが、追加のリソース設定を設定できるのは組織管理者だけです。

注意

DataRobot recommends configuring resource settings only when necessary. When you configure the Memory setting below, you set the Kubernetes memory "limit" (the maximum allowed memory allocation); however, you can't set the memory "request" (the minimum guaranteed memory allocation). For this reason, it is possible to set the "limit" value too far above the default "request" value. An imbalance between the memory "request" and the memory usage allowed by the increased "limit" can result in the custom model exceeding the memory consumption limit. As a result, you may experience unstable custom model execution due to frequent eviction and relaunching of the custom model. If you require an increased Memory setting, you can mitigate this issue by increasing the "request" at the Organization level; for more information, contact DataRobot Support.

モーダルに表示されるリソース割り当てを設定します。

リソース 説明
メモリー カスタム推論モデルに割り当てることのできるメモリーの最大量を決定します。 If a model exceeds the allocated amount, it is evicted by the system. この問題がテスト中に発生した場合、テストは失敗としてマークされます。 モデルのデプロイ時に発生した場合は、Kubernetesによってモデルが自動的に再起動されます。
レプリカ カスタムモデルの実行時にワークロードのバランスを取るために、並行して実行するレプリカの最大数を設定します。 Increasing the number of replicas may not result in better performance, depending on the custom model's speed.

モデルのリソース設定が完了したら、保存をクリックします。 編集したリソース設定が適用された新しいバージョンのカスタムモデルが作成されます。


更新しました December 22, 2022
Back to top