格付表¶
リーダーボードでモデルに格付表アイコンが表示される場合、モデルの完全な検定済みパラメーターをエクスポートできます。 検定によって、ダウンロードしたパラメーターが正しいこと、およびモデルのパフォーマンスをDataRobotの外部で再現できることを確認できます。 この機能を有効にした場合、テーブル係数を変更して新しいテーブルを元の(親)モデルに適用すると、リーダーボードで新しい「子」モデルを使用できます。
GA2Mモデルの場合、モデルの出力に含まれる二項間の交互作用を指定できます。 格付表を操作する前に、ファイルサイズおよびモデルの可用性に関するこれらの注意事項を確認してください。
格付表のダウンロード¶
格付表係数をエクスポートするには:
-
リーダーボードから、このアイコンのあるモデルを識別します。このアイコンは、モデルから格付表が生成されたことを示します。
-
モデルを展開して、格付表タブをクリックします。 (表示される画面は権限に応じて異なる場合があります。)
-
表のダウンロードリンクをクリックして、CSVファイルを保存します。 格付表の出力の解釈については、この追加情報を参照してください。
-
テキストエディターまたはスプレッドシートアプリケーションで格付表を変更します。 該当する場合は、親モデルに変更した格付表をアップロードして、その格付表で新しい子モデルを作成できます。
格付表の変更¶
格付表を変更して元の親モデルにアップロード(およびモデルを実行)すると、元の親モデルの格付表の変更されたバージョンで子モデルが作成されます。 リーダーボードから使用できる新しいモデルは、親と同じ特徴量モデルにアクセスできますが、以下のような違いがあります。
ここでは、新しい子モデルの作成のワークフローの概要に続いて詳細を説明します。
ワークフローの概要¶
変更した格付表でモデルを構築するための手順の概要を以下に示します。
- 親モデルから格付表をダウンロードします。
- 適切なエディターを使用して、DataRobotの外部で格付表を変更します。
- 変更した格付表を親モデルにアップロードします。
- 新しいモデルをスコアリングして、リーダーボードに追加します。
- 子モデルを開くをクリックして、新しいモデルを表示します。
- 変更した格付表で同じ操作を繰り返すには、子の格付表をダウンロードします。
- DataRobotの外部で子の格付表を変更します。
- 新しく変更した格付表を親モデルにアップロードします。
- 手順4に戻って必要な回数だけ繰り返します。
詳細なワークフロー¶
ここでは、格付表の操作手順の詳細について説明します。
-
リーダーボードで格付表アイコンが表示されているモデルを選択します。 これが親モデルです。
-
親モデルの格付表をダウンロードします。
-
適切なテキストエディターまたはスプレッドシートを使用して、格付表CSVファイルの 係数を編集します。
-
エクスポートした格付表を変更した後、ドラッグアンドドロップまたは参照して新しい格付表をアップロードします。
すべての使用可能な格付表(新しくアップロードしたものと以前にアップロードしたもの)がアップロードしたテーブルに表示されます。
-
必要な場合、鉛筆アイコンをクリックして、アップロード済みの格付表の名前(最大50文字)を変更できます(この手順を実行できるのはモデルを実行する前だけです)。 子モデルの名前は、作成元の格付表の名前に基づきます。 格付表の名前はアプリケーション外でも変更できます。 既存の名前を指定すると、格付表の名前に数字が追加されます。
-
リーダーボードに追加リンクをクリックして、新しいモデルの作成とスコアリングを行います。 最初に新しい格付表が検定され、構築が完了した後、新しい子モデルがリーダーボードで使用可能になります。 緑のチェックは、検定とアップロードが正常に行われた格付表を示します。それ以外の場合、問題を示すエラーメッセージが表示されます。 (構築ステータスは、ワーカーキューで監視できます。)
-
構築が完了した後、表示する子モデル/格付表のペアに対応する子モデルを開くリンクをクリックします。 子モデルの格付表タブが開きます。 子モデルの名前は
Modified Rating Table: <rating_table_name>.csv
です。子モデルはリーダーボードに表示され、リーダーボードからアクセスできます。
子モデルからは、以下の操作を行うことができます。
リンク | アクション |
---|---|
表のダウンロード | 子モデルの格付表をダウンロードします。 格付表の係数を変更して同じ操作を繰り返すには、子の格付表をダウンロードし、変更した子の格付表を親にアップロードしてスコアの比較を行う、必要に応じてプロセスを続行します。 |
親モデルを開く | 親(元の)モデルの格付表タブに戻ります。 ここから、新しい表のアップロードと新規モデルの構築に加えて、構築済みの子モデルを開くことができます。 |
備考
新しい格付表を子モデルにアップロードすることはできません。 格付表は親モデルに対してのみアップロードできます。
格付表の検定¶
格付表(GA2Mなど)を生成するモデルを構築する際、DataRobotでは、モデルがリーダーボードで使用できるようになる前にモデルの検定が実行されます。 検証を行うために、DataRobotではJava格付表スコアリングコードによって作成された予測(その特定の格付表を作成する同じ予測)とDataRobotアプリケーション内のPythonコードモデルによって作成された予測(格付表CSVファイルから独立した予測)が比較されます。 これらの予測が異なる場合、格付表の検定が失敗し、モデルはエラーとしてマークされます。
機能に関する注意事項¶
格付モデル(GAM、GA2M、および頻度/強度)はDataRobotの特殊な内部コード生成によって検定されるため、in-RAMで8GBのデータセットに制限されています。 このサイズを超えると、メモリーの問題が原因でプロジェクトが失敗することがあります。 OOMエラーが発生する場合は、サンプルサイズを小さくして再試行してください。
編集に関する注意事項¶
編集中は、以下のことに留意してください。
-
格付表の変更では、データセットや列のデータ型のヘッダー行を変更できません。 一部のエディターでは、このような変更が意図せずに行われるので(「000」を「0」に切り詰めた場合や係数を数値から文字列に変更するために各フィールドを引用符で囲んだ場合など)、 最終的に格付表を再度アップロードする必要が生じることがあります。 したがって、データを変更しないテキストエディタ(AtomやWindowsのメモ帳など)を使用することをお勧めします。
-
スプレッドスートアプリケーションを使用する場合は、列タイプを変更しないように注意してください(数値を日付に変更するなど)。
-
格付表は日本語のテキスト列を含むモデルでは作成されません(MeCabトークナイザーがサポートされていません)。
-
表の最初のセクション(モデルパラメーターおよび二項間の交互作用を定義)で変更できるのは、
Intercept
とBase
の値だけです。 -
2番目のセクションの最初の行(予測に使用される係数を派生させるために各変数がどのように使用されるかを定義)では、
Feature Name
、Type
、Transform1
、Value1
、Transform2
、Value2
、およびweight
を除くすべての列の値を変更できます。 -
表に列を追加できます(コメントを追加するなど)。
-
Coefficient
、Relativity
、Intercept
、およびBase
の値は数値である必要があります。 -
Base
はIntercept
の指数関数で、Intercept
値から計算されます。 -
Relativity
は各行のCoefficient
の指数関数で、行のCoefficient
値から計算されます。 -
Feature Strength
は、変更済みのCoefficient
値から計算されます。 -
CSVエンコーディングはUTF-8である必要があります。
さらに、頻度/強度モデルの場合、以下が適用されます。
-
各行の
Coefficient
値は行のFrequency_Coefficient
およびSeverity_Coefficient
の値の合計で、この2つの値から計算されます。Relativity
は、上記に説明するようにCoefficient
から計算されます。 -
Frequency_Relativity
は各行のFrequency_Coefficient
の指数関数で、行のFrequency_Coefficient
値から計算されます。 -
Severity_Relativity
は各行のSeverity_Coefficient
の指数関数で、行のSeverity_Coefficient
値から計算されます。 -
Frequency_Coefficient
、Severity_Coefficient
、Frequency_Relativity
、およびSeverity_Relativity
の値は数値である必要があります。
子モデルの注意事項¶
元の親モデルの格付表の修正バージョンを使用して子モデルを作成すると、新しいモデルは親と同じ特徴量にアクセスできますが、次の例外があります。
-
高度なチューニングタブは使用できません。
-
予測を作成タブでは、子モデルは元のモデルのトレーニングに使用されたデータで予測を作成できません。 したがって、トレーニングデータの検定およびホールドアウト分割で予測を作成できるのは、これらの分割がトレーニングに使用されなかった場合だけです。 これらの分割での予測は、新しくアップロードしたデータセットを使用して行うことができます。
-
子モデルを(別の特徴量セットやサンプルサイズなどで)再実行することはできません。
-
格付表を変更するときに行の順序を変更することはできません。変更を行うとエラーが発生します。
-
新しい格付表を子モデルにアップロードすることはできません。 格付表は親モデルに対してのみアップロードできます。