Set up Automated Retraining¶
DataRobotは、大幅な手動での作業なしでデプロイ後のモデルのパフォーマンスを維持するために、デプロイの自動再トレーニング機能を提供します。 AIカタログに登録された再トレーニングデータセットを指定すると、1つのデプロイに対して最大5つの再トレーニングポリシーを定義できます。この再トレーニングポリシーでは、トリガー、モデリングの戦略、モデリングの設定、置換アクションの設定ができます。 トリガーされると、再トレーニングによりこれらの設定に基づいて新しいモデルが作成され、そのモデルのプロモーションを検討するように通知されます。
デプロイの再トレーニングを設定¶
デプロイの再トレーニング設定を変更するには:
-
デプロイをクリックして、デプロイを選択します。
-
設定 > チャレンジャーと再トレーニングタブに移動します。
要素 説明 チャレンジャーのスケジュールを再生 チャレンジャーを自動的にリプレイを有効にし、保存された予測を再トレーニングするための繰り返しスケジュールを設定します。 再トレーニングユーザー リソースを監視するには、再トレーニングポリシーをユーザーアカウントとして実行する必要があります。 デプロイへのアクセス権を持つオーナーである再トレーニングユーザーを選択します。 予測環境 チャレンジャーモデルをスコアリングするためのデフォルトの予測環境を設定します。 再トレーニングデータ すべての再トレーニングプロファイルに対し再トレーニングデータセットを指定します。 ローカルファイルをドラッグまたはブラウズするか、AIカタログからデータセットを選択します。 再トレーニングポリシーの管理 + 再トレーニングポリシーを追加をクリックし、再トレーニングポリシーを指定します。 再トレーニングのトリガー、モデル選択戦略、モデリング設定、置換アクションを指定します。 備考
再トレーニング設定を編集するには、デプロイのオーナー権限が必要です。 ユーザー権限を持っている場合は、デプロイの再トレーニング設定を表示できます。
-
以下の手順で設定を行ってください。
再トレーニングユーザーの選択¶
スケジュールされた再トレーニングポリシーが実行されると、指定されたユーザーの権限とリソースが使用されます(手動でトリガーされたポリシーでは、トリガーしたユーザーのリソースが使用されます。) ユーザーには以下が必要です。
- 再トレーニングデータについて、データを使用し、スナップショットを作成する権限。
- デプロイのためのオーナー権限。
再トレーニングポリシーにより要求されるモデルのトレーニングには、モデリングワーカーが必要です。 ワーカーは再トレーニングユーザーのプールから抽出され、それぞれの再トレーニングポリシーは、再トレーニングユーザーの総ワーカー数の50%を要求します。 たとえば、ユーザーの最大モデリングワーカー数が4の場合、再トレーニングポリシーAがトリガーすると、ワーカー数は2で実行されます。 再トレーニングポリシーBがトリガーすると、こちらもワーカー数が2で実行されます。 仮に、ポリシーAとBが実行中に、ポリシーCがトリガーすると、実行中である2つのポリシーとワーカーを共有します。
インタラクティブユーザーのモデリング要求は、再トレーニング実行よりも優先されないため、注意してください。 ユーザーのワーカーが再トレーニングに適用されていて、そのユーザーが新規のモデリング実行(手動またはオートパイロット)を開始すると、ワーカーは再トレーニングの実行と共有されます。 このため、DataRobotでは、ワーカー数を制限したユーザーを作成し、このユーザーを再トレーニングジョブに指名することを推奨します。
予測環境を選択¶
チャレンジャー分析では、最初にチャンピオンモデルで行った予測を、チャレンジャーモデルで再生する必要があります。 DataRobotでは、定義されたスケジュールと予測環境を使って、予測の再生を行います。 再トレーニングの結果、新しいチャレンジャーが追加されると、そのチャレンジャーは割り当てられた予測環境を使って、再生されたリクエストから予測を生成します。 チャレンジャーが使用している予測環境は、後でチャレンジャータブから変更できます。
モデルがチャレンジャーとして動作している間は、DataRobotの予測環境にしかデプロイできません。 ただし、チャンピオンモデルはチャレンジャーとは異なる予測環境(DataRobot環境(たとえば、リソースの競合を避けるために「本番」使用と記された環境)またはリモート環境(AWS、OpenShift、GCPなど)のいずれか)を使用することができます。 モデルがチャレンジャーからチャンピオンに昇格する場合は、前のチャンピオンの予測環境を使用する可能性があります。
再トレーニングデータの提供¶
デプロイ上のすべての再トレーニングポリシーが、同じAIカタログのデータセットを参照します。 データセットを登録するには、デプロイの設定 > データタブに移動し、学習セクションにデータセットを追加します。 または、チャレンジャーと再トレーニングタブからトレーニングデータを直接追加できます。
再トレーニングポリシーがトリガーされると、DataRobotは、最新バージョンのデータセットを使用するか(アップロードされたAIカタログアイテムの場合)、元になるデータソースから新しいスナップショットを作成して使用します (データ接続またはURLを使用するカタログアイテムの場合) 。 たとえば、カタログアイテムがSpark SQLクエリーを使用する場合、再トレーニングポリシーがトリガーされると、そのクエリーが実行され、結果として得られた行はモデリング設定(パーティショニングを含む)への入力として使用されます。
元になるデータが接続されたAIカタログアイテムが、すでに最大数(100)のスナップショットを持っている場合、再トレーニングポリシーは、新しいスナップショットを取る前に最も古いスナップショットを削除します。
再トレーニングポリシーを設定する¶
-
デプロイの設定 > チャレンジャーと再トレーニングタブで、+ 再トレーニングポリシーを追加をクリックします 。 再トレーニングポリシーを追加ページが表示されます。
-
再トレーニングトリガーを設定します。
-
DataRobotが新しいオートパイロットプロジェクトからモデルを選択する方法を設定します。
-
モデルアクションを選択して置換戦略を設定します。
-
新しいオートパイロットプロジェクトの設定を選択して、モデリング戦略を設定します。
-
ポリシー設定の上のポリシーを保存をクリックします。
トリガー¶
再トレーニングポリシーを手動でまたは3種類の条件に応じてトリガーできます。
-
自動スケジュール:再トレーニングポリシーが自動的にトリガーされる時間を選択します。 3か月に1回から毎日までの範囲で選択することができます。 DataRobotはローカルタイムゾーンを使用します。
-
ドリフトステータス:デプロイのデータドリフトステータスが選択したレベルまで低下すると、再トレーニングを開始します。
-
精度ステータス:デプロイの精度ステータスが良好な状態から選択したレベル(緑色から黄色、黄色から赤色など)に変化した場合にトリガーされます。
データドリフトおよび精度トリガーは、設定 > モニタリングタブで設定された指標の通知に基づくことに注意してください。
一度開始された再トレーニングポリシーは、完了するまで再トリガーできません。 たとえば、再トレーニングポリシーを1時間ごとに実行する設定で、完了に1時間以上かかる場合、次にスケジュールされているトリガーでやり直したり、キューに入れたりするのではなく、最初の実行を完了させます。 各再トレーニングポリシーで選択できるトリガー条件は1つだけです。
モデルの選択¶
再トレーニングポリシーのモデリング戦略を選択します。 DataRobotが更新されたデータで新しいモデルを構築する方法を制御します。
-
再トレーニング時にチャンピオンと同じブループリントを使用:新しいデータスナップショットでのトリガー時に、チャンピオンモデルと同じブループリントに適合します。 次のいずれかのオプションを選択:
-
現在のハイパーパラメーターを使用:チャンピオンモデルと同じハイパーパラメーターとブループリントを使用します。 ブループリントの各タスクには、チャンピオンのハイパーパラメーター検索および戦略を使用します。 このオプションを選択すると、チャンピオンモデルの特徴量セットが再トレーニングに使用されることに注意してください。 有用な特徴量セットは使用できません。
-
ハイパーパラメーターを自動的に調整:同じブループリントを使用しますが、再トレーニング用にハイパーパラメーターを最適化します。
-
-
最適なオートパイロットモデルを使用(推奨):新しいデータスナップショットでオートパイロットを実行し、結果として得られる推奨モデルを使用します。 Datarobotの3つのモデリングモードから選択:クイック、オートパイロット、および包括的。
選択すると、追加オートパイロットオプションも切り替えることができます。
- スコアリングコードをサポートするブループリントのみを含める
- パフォーマンスが最も高いモデルからアンサンブルを作成する
- ターゲットリーケージを削除した特徴量セットに対してオートパイロットを実行する
- SHAP値をサポートするモデルのみ含める
モデルアクション¶
各ポリシーに3つのアクションの内いずれかを適用します。
これにより、再トレーニングポリシーの実行が成功したときに生成されるモデルの処理が決定されます。 すべてのシナリオで、デプロイオーナーに新しいモデルの作成について通知され、モデルレジストリにモデルパッケージとして新しいモデルが追加されます。
-
チャレンジャーモデルとして新しいモデルを追加:デプロイの5つのチャレンジャーモデルスロットに空きがある場合、このアクション(デフォルト)は、新しいモデルをチャレンジャーモデルとして追加します。 このポリシーによって以前に追加されたモデルが置き換えられます。 スロットがなく、このポリシーによって以前にチャレンジャーが追加されていない場合、モデルはモデルレジストリにのみ保存されます。 さらに、モデルをチャレンジャーとして追加できないため、再トレーニングポリシーの実行が失敗します。
-
新しいモデルとの置換を開始:このオプションは高頻度(毎日など)の置換に適しており、新しいモデルが作成されるとすぐに、モデルの置換を自動的に要求します。 この置換は、オーナーと重要度に応じて、定義済みの承認ポリシー、および特定のデプロイへのそれらポリシーの適用に従います。 その承認ポリシーによっては、置換が行われる前に、レビュアーが手動で承認する必要があります。
-
モデルを保存:この場合、モデルをモデルレジストリに追加する以外のアクションは実行されません。
モデリング戦略¶
再トレーニングのためのモデリング戦略では、DataRobotでの新しいオートパイロットプロジェクトの設定方法を定義します。 特徴量、最適化指標、パーティショニング戦略、サンプリング戦略、加重などの 詳細設定 を定義して、特定の問題に対するモデルの構築方法をDataRobotに指示します。
(トリガーが開始されたときに)チャンピオンモデルが使用するのと同じ特徴量を再利用することも、DataRobotが新しいデータから有益な特徴量を識別できるようにすることもできます。
デフォルトでは、DataRobotは、チャンピオンモデル(トリガー開始時)と同じ設定を再利用します。 また、プロジェクト開始画面で使用可能なオプションのサブセットから選択して、新しいパーティショニング設定を定義することもできます。
再トレーニングポリシーの管理¶
再トレーニングポリシーを作成したら、次の表で説明するように、手動で開始、キャンセル、または更新できます。
要素 | 定義 | |
---|---|---|
![]() |
再トレーニングポリシーの行 | 再トレーニングポリシーの行をクリックして展開します。 展開したら、再トレーニング設定を表示または編集します。 |
![]() |
実行 | 実行ボタン(![]() |
![]() |
削除 | 削除ボタン(![]() |
![]() |
キャンセル | キャンセルボタン(![]() |
再トレーニング履歴¶
成功または失敗にかかわらず、トレーニングポリシーの過去の実行をすべて表示できます。 各実行には開始時刻、終了時刻、期間が含まれ、—実行が成功した場合は—結果として得られたプロジェクトやモデルパッケージへのリンクが含まれます。 各プロジェクトのDataRobot推奨モデルのみがデプロイに自動的に追加されますが、プロジェクトのリーダーボードを探索して、代替モデルを探索または構築することができます。
備考
実行中のポリシーは、削除や中断ができません。 再トレーニングワーカーと組織に十分なワーカーがある場合、同じデプロイで複数のポリシーを同時に実行することができます。
再トレーニング戦略¶
[チャレンジャーと再トレーニング]タブでは、パフォーマンスを簡単に比較できるようにし、再トレーニング戦略を経験的に評価し、さまざまなユースケースに合わせてカスタマイズできます。 「同じブループリント」とオートパイロット戦略に対して、最初はさまざまな時間枠で実験を行うとよいでしょう。 たとえば、夜間と毎週の両方のパターンを使用して「同じブループリント」の再トレーニング戦略を実行し、結果を比較してみてください。
デプロイに自動再トレーニングポリシーを実装するための一般的な戦略は次のとおりです。
- 高頻度自動スケジュール:現在デプロイされているブループリントを最新のデータで、頻繁に(毎日など)再トレーニングして、デプロイ済みのモデルの選択を安定させます。
- 低頻度自動スケジュール:オートパイロットを定期的に(毎週や毎月など)実行して、代替のモデリング手法を試してみると、潜在的にパフォーマンスが最適化されます。 このプロセスをスコアリングコード対応モデルのみに限定してデプロイすることも可能です。 詳細については、スコアリングコード対応のブループリントのみを含める 高度なオプションを参照してください。
- ドリフトステータストリガー:データドリフトを監視し、オートパイロットをトリガーすると、状況の変化によりチャンピオンモデルがデータドリフトを示したときに代替モデルを準備します。
- 精度ステータストリガー:精度のドリフトを監視し、オートパイロットをトリガーして、チャンピオンモデルが精度の低下を示すと、よりパフォーマンスの高いモデルを検索します。 この戦略は、実測値にすばやくアクセスできるユースケースに最も効果的です。
可用性の再トレーニング¶
バイナリ、多クラス、および連続値のターゲットタイプのみが再トレーニングをサポートします。 デプロイのチャンピオンが多ラベルのターゲットタイプを持っている場合、チャレンジャーと再トレーニングタブは表示されません。
サポートされていないモデルとプロジェクト¶
次のDataRobotモデルおよびプロジェクトタイプでは、再トレーニングはサポートされていません。 そのような場合、デプロイのチャンピオンがリストされている機能のいずれかを使用している場合、チャレンジャーと再トレーニングタブは表示されません。
- 特徴量探索モデル
- 教師なし学習プロジェクト(異常検知とクラスターを含む)
- 非構造化カスタム推論モデル
部分的にサポートされているモデル¶
次のモデルタイプは、再トレーニングを部分的にサポートしています。 部分的にサポートされているモデルごとに、サポートされている(✔)オプションのみが、チャレンジャーと再トレーニングタブの再トレーニングポリシーに使用できます。
備考
一部の再トレーニングポリシーオプションのみがモデルに依存します。 以下のサポートマトリックスにモデルタイプが含まれていない場合は、再トレーニングポリシーのすべてのオプションを設定に使用できます。
モデルタイプ | チャンピオンと同じブループリント | チャンピオンモデルの特徴量セット | チャンピオンモデルからのプロジェクトオプション | カスタムプロジェクトオプション |
---|---|---|---|---|
カスタム推論 | ✔ | |||
外部(エージェント) | ✔ | |||
アンサンブル | ✔ | ✔ | ||
時系列 | ✔ | ✔ | ✔ |
時系列の再トレーニング¶
時系列デプロイは再トレーニングをサポートしますが、時系列特徴量派生プロセスのためにポリシーを設定する際に制限があります。 このプロセスは、ラグや移動平均などの特徴量を生成し、新しいモデリングデータセットを作成します。
時系列モデルの選択¶
チャンピオンと同じブループリント:再トレーニングポリシーは、チャンピオンモデルのブループリントと同じエンジニアリング済みの特徴量を使用します。 新しく派生した特徴量の検索は、チャンピオンのブループリントでキャプチャされない特徴量を生成できる可能性があるため、発生しません。
オートパイロット:同じブループリントの代わりにオートパイロットを使用する場合、時系列特徴量派生プロセスが発生します。 ただし、包括的なオートパイロットモードはサポートされていません。 また、時系列のオートパイロットは、スコアリングコードやSHAP値をサポートするブループリントおよびモデルのみを含めるオプションには対応していません。
時系列のモデリング戦略¶
チャンピオンと同じブループリント:時系列デプロイの「同じブループリント」の再トレーニングポリシーを作成するときは、チャンピオンモデルの特徴量セットと高度なモデリングオプションを使用する必要があります。 オーバーライドできる唯一のオプションは使用済みカレンダーです。これは、たとえば、新しい祝日やイベントが更新されたカレンダーに含まれている場合、再トレーニング時に考慮する必要があるためです。
オートパイロット:時系列デプロイのオートパイロット再トレーニングポリシーを作成するときは、有益な特徴量モデリング戦略を使用する必要があります。 この戦略により、オートパイロットは、新しいデータまたは異なるデータにより生成された有益な特徴量に基づく、一連の新しい特徴量セットを派生できます。 時系列オートパイロットはデフォルトで特徴量抽出および削減プロセスを使用するため、モデルの元の特徴量セットを使用することはできません。 ただし、チャンピオンのプロジェクトから追加モデリングオプションをオーバーライドできます。
オプション | 説明 |
---|---|
指数トレンドとして扱う | ターゲット特徴量に対数変換を適用します。 |
指数加重移動平均(EWMA) | EWMAの平滑化係数を設定します。 |
差異を適用 | モデリングの前に差分を適用して、ターゲットを静止させるようにDataRobotを設定します。 |
カレンダーの追加 | 注意が必要な日付やイベントを指定するイベントファイルのアップロードまたはカタログからの追加、もしくは生成を行います。 |
時間認識の再トレーニング¶
時間認識再トレーニングでは、チャンピオンモデルからオプションを再利用する場合や、チャンピオンモデルのプロジェクトオプションをオーバーライドする場合、以下を考慮してください。
- チャンピオンのプロジェクトがホールドアウト開始日と終了日を使用する場合、再トレーニングプロジェクトはこれらの設定を使用しませんが、ホールドアウト期間(これらの2つの日付の差異)を使用します。
- チャンピオンプロジェクトでホールドアウト期間をホールドアウト開始日または終了日のどちらかと共に使用した場合、ホールドアウト開始/終了日は削除され、ホールドアウト期間が再トレーニングプロジェクトで使用されます。 新しいホールドアウト開始日が計算されます(再トレーニングデータセットの終了日からホールドアウト期間を引く)。
バックテストのカスタマイズは保持されません。ただし、バックテストの数は保持されます。 再トレーニング時間では、トレーニング開始日および終了日は、チャンピオンの開始日および終了日と異なる可能性が高くなります。 再トレーニングに使用するデータがシフトしたため、チャンピオンモデルに対する特定のバックテストからのデータがすべて含まれなくなった可能性があります。