その他¶
その他タブでは、プロジェクトの種類に応じたオプションを使用して、モデル構築のさまざまな側面を微調整できます。プロジェクトに適用できないオプションは、グレーで表示されるか、表示されません(オプションが使用できない理由によって異なります)。
次の表では、高度なオプションで利用可能な各追加パラメーターの設定について説明します。
パラメーター | 説明 |
---|---|
最適化指標 | |
最適化指標 | 利用可能な最適化指標の完全なリストにアクセスできます。ターゲットを指定すると、DataRobotは幅広い指標のセットから、指定されたデータとターゲットに適した指標を選択して推奨します。選択された指標は、データページの開始ボタンの下に表示されます。指標を変更するには、モデル構築を開始する前にこのドロップダウンを使用します。 |
自動化設定 | |
組み合わせ特徴量の探索 | プライマリーデータセットで特徴量間に交互作用が検出された場合、新しい特徴量が自動的に抽出されます。EDA2の一部として実行され、これを有効にすると、新しい特徴量だけでなく、プラス記号(+)で示される新しいデフォルトおよびカスタム特徴量セットも生成されます。 これは、既存のデータで追加インサイトを見つけるのに役立ちます。 |
スコアリングコードサポートを含むブループリントだけを含める | オンにすると、スコアリングコードのエクスポートをサポートするモデルだけがトレーニングされます。 これは、DataRobotの外部でデータをスコアリングする場合や、非常に低いレイテンシーでスコアリングする場合に便利です。 |
上位モデルからアンサンブルを作成 | オートパイロットの終了時にパフォーマンスが最も高いモデルからアンサンブルを計算するかどうかを選択します。 この機能を有効にすると、モデリングとスコアリングの時間が長くなる可能性があります。 |
SHAP値をサポートするモデルのみを含める | SHAPベースのブループリントだけを含めます(多くの場合、規制遵守のために必要です)。SHAPベースのインサイトにアクセスするには、プロジェクトの開始前にこれを確認する必要があります(APIおよびPythonクライアントにアクセスする場合も同様です)。有効にすると、選択したオートパイロットモードがSHAPブループリントのみを実行するだけでなく、リポジトリもSHAPをサポートするブループリントのみを利用できるようになります。有効にすると、特徴量のインパクトおよび予測の説明では、SHAPベースのインサイトだけが生成されます。このオプションは、「上位モデルからアンサンブルを作成する」が選択されていない場合にのみ使用できます。 |
モデルをデプロイ用に推奨および準備 | オンにすると、ブループリント推奨フロー(特徴量セットの削減とより大きなサンプルサイズでの再トレーニング)が有効になります。これにより、DataRobotがオートパイロットの最後に「デプロイ推奨」および 「デプロイの準備済み」 のラベルが設定されたモデルをトレーニングするかどうかが示されます。 |
精度の最適化を行ったテンプレートを使用 | 学習率が低く、より多くのツリーを持つXGBoostモデルと、XGBoost forestブループリントを実行します。場合によっては、これらのモデルで精度を若干上げることができますが、実行に10倍から100倍の時間がかかることがあります。このパラメーターを設定した場合、実行時間の上限設定を約30時間(デフォルトは3時間)に増やして、DataRobotが実行時間の長いモデルをオートパイロットの次のステージに移行できるようにします。モデルの改善は保証されないため、このオプションは、すでにXGBoostモデルを手動でチューニングしていて、大規模なXGBoostモデルの実行時間要件を認識しているユーザーのみを対象としていることにご注意ください。この設定は、1.5GBを超えるデータセットでは機能しないことがあります。メモリ不足のエラーが発生した場合は、精度を最適化したセットを使用しないか、サンプルサイズを小さくして、モデルを実行してみてください。 |
ターゲットリーケージを削除した特徴量セットに対してオートパイロットを実行する | ターゲットリーケージの原因となる可能性がある高リスクの問題列を削除した特徴量セット(有用な特徴量 - リーケージ除去済)が自動的に作成されます。 |
交差検定/バックテストを実行するモデルの数 | オートパイロット中にDataRobotで交差検定を計算するモデルの数を入力します。このパラメーターは、時系列プロジェクトとOTVプロジェクトのバックテストにも適用されます。この設定は、オートパイロットのデフォルトよりも数値が大きい場合に有効になります。 |
実行時間の上限 | 実行制限時間を時間単位で設定します。モデルの実行時間がこの制限よりも長い場合、オートパイロットはより大きなトレーニングサンプルの実行からそのモデルを除外します。この制限時間を超えたモデルは、リーダーボードで確認できます。必要に応じて、より大きなサンプルサイズで手動で実行することもできます。 |
応答上限(連続値プロジェクトのみ) | 応答(ターゲット)の最大値を元の値のパーセンタイルに制限します。たとえば、「0.9」と入力すると、90パーセンタイルを上回る値は、トレーニング時にゼロ以外の値の90パーセンタイルの値で置き換えられます。この上限設定はトレーニングにのみ使用され、予測やスコアリングには使用されません。0.5から1.0(50~100%)までの値を入力します。 |
ランダムシード | 乱数の生成を開始するために使用する開始値を設定します。これにより、DataRobotで使われる値が固定されるため、同じプロジェクトの次回以降の実行が同じ結果になります。設定しない場合、DataRobotは再現性を確保するために、すべての関数でデフォルトのシードを使用します。 |
ポジティブクラスの割り当て(二値分類のみ) | 予測スコアが分類しきい値0.5より大きい場合に使用するクラスを設定します。 |
重み付けの設定(以下の詳細を参照) | |
ウェイト | 違いを表す重みとして使用し、各行の相対的な有用性を示す単一の特徴量を設定します。 |
エクスポージャー | ターゲット予測において厳密な比例関係で処理される特徴量を設定し、保険料率をモデリングする際にエクスポージャーの指標を追加します。連続値問題のみ。 |
イベント数 | 頻度x強度モデルで使用され、DataRobotがゼロ以外のイベントの頻度に関する情報を収集する(そして特殊な列として扱う)特徴量を設定します。ゼロ過剰の連続値問題のみ。 |
オフセット | モデリングにおいて固定コンポーネント(一般化線形モデルや勾配ブースティングモデルでは係数1)として扱う必要がある特徴量を設定します。連続値問題と二値分類問題のみ。 |
最適化指標の変更¶
最適化指標は、DataRobotによるモデルのスコアリング方法を定義します。ターゲット特徴量を選択すると、DataRobotはモデリングタスクに基づいて最適化指標を選択します。この指標は、プロジェクトの開始ページの開始ボタンの下にレポートされます。推奨された指標を上書きし、別の指標を使用してモデルを構築するには、最適化指標ドロップダウンを使用します。
通常、DataRobotがモデルのスコアリングのために選択する指標が、最適な指標です。指標の変更は高度な機能なので、指標およびその背後にあるアルゴリズムが十分に理解されている場合にのみ推奨されます。
注:
-
選択されたターゲットに2つの一意の値しかない場合、DataRobotでは分類タスクと想定され、分類の指標が推奨されます。推奨される分類方法の例としては、LogLoss(各クラスの確率を計算する必要がある場合)、GiniやAUC(レコードをランキング順に並べる必要がある場合)などがあります。
-
それ以外の場合、DataRobotでは、選択されたターゲットは連続値タスクであるとみなされます。連続値に最もよく使用される指標は、RMSE(二乗平均平方根誤差)とMAE(平均絶対誤差)です。
-
スマートダウンサンプリングを使用してデータセットを縮小している場合や、加重列をターゲットとして選択している場合には、加重指標しか使うことができません。逆に、このいずれにも当てはまらない場合には、加重指標を選択することはできません。加重指標はデータの歪みを考慮します。
特定の指標に最適化されたプロジェクトを選択および構築しても、DataRobotでは、各モデルで適用可能な多数の指標が計算されます。構築が完了した後、別の指標に基づいてリーダーボードのリストを再表示できます。モデル内の値は変更されませんが、この代替指標でのパフォーマンスに基づいて、モデルの表示順序が変更されます。
詳細については、リファレンス資料で利用可能な指標の完全なリストを参照してください。
実行時間制限の例外¶
実行時間の上限を設定すると、DataRobotはその時間制限によって、単一のモデルの実行時間を制御します。制限時間はデフォルトで3時間です。制限を超えたモデルは完了するまで実行を継続しますが、DataRobotは以降のサンプルサイズではモデルを構築しません。たとえば、フルオートパイロットを実行中、あるモデルが16%のサンプルサイズで制限を超えたとします。そのモデルは完了するまで実行を継続しますが、DataRobotは、16%のモデルがすべて完了するまで、どのモデルにおいても32%のサンプルサイズでの構築を開始しません。実行時間が非常に長いモデルを除外することによって、オートパイロットを完了させてから、中断していたモデルを手動で実行することができます。
ヒント
精度の最適化を行ったテンプレートを使用オプションを使用する場合、実行時間の上限を30時間程度の値に設定してください。
こうして除外されたモデルは、モデルのブラックリストで管理され、リーダーボードではアイコンで示されます。
ワーカーキューの時間ブラックリストモデルリンクを展開すると、リストの内容(つまり、以降のサンプルサイズでの構築から除外されるモデル)を確認できます。
追加の重み付けの詳細¶
ここでは、重み付けのオプションに有効な特徴量の値とプロジェクトタイプについて説明します。ウェイト、エクスポージャー、オフセットの各パラメーターを使用して、モデリングプロセスに制約を加えることができます。これを行うには、どの特徴量(変数)を異なる方法で処理するかを選択します。設定すると、データページには、特徴量にパラメーターが適用されていることが示されます。
次に、重み付けのオプションについて説明します。詳細と使用条件については、以下を参照してください。
-
ウェイト:違いを表す重みとして使用し、各行の相対的な有用性を示す単一の特徴量を設定します。これは、モデルの構築やスコアリングの際に、リーダーボードで指標を計算する目的で使用されます。新しいデータで予測を行う目的では使用されません。選択した特徴量のすべての値が0より大きい値である必要があります。DataRobotでは検定が行われ、選択した特徴量にはサポートされている値のみが含まれているかどうかが確認されます。
-
エクスポージャー:連続値問題のターゲット予測において厳密な比例関係で処理される特徴量を設定し、保険料率をモデリングする際にエクスポージャーの指標を追加します。DataRobotでは、エクスポージャーで選択された特徴量は特殊な列として扱われ、モデルの構築やスコアリングの際に元の予測に追加されます。選択した列は、予測のために後でアップロードするすべてのデータセットに存在する必要があります。
-
イベント数:ゼロ以外のイベントの頻度に関する情報を追加することで、ゼロ過剰ターゲットのモデリングを改善します。イベント数を使用するには、その数のソースとして扱う特徴量(変数)を選択します。
-
オフセット:連続値問題や二値分類問題のモデリングにおいて、固定コンポーネント(一般化線形モデルや勾配ブースティングモデルでは係数1)として扱う必要がある特徴量を設定します。オフセットは、価格の制約を取り入れたり、既存のモデルを強化するためによく使用されます。DataRobotでは、オフセットで選択された特徴量は特殊な列として扱われ、モデルの構築やスコアリングの際に元の予測に追加されます。選択した列は、予測のために後でアップロードするすべてのデータセットに存在する必要があります。
重み付けパラメーターを使用するには、アップロードしたデータセットでの特徴量の名前を入力します。DataRobotは、特徴量をオフセットやエクスポージャーとしてモデリングに使用し、それらのパラメーターをサポートするモデル(ElasticNet、GBM、LightGBM、GAM、ASVM、XGBoost、頻度x強度)だけを構築します。(イベント数は頻度x強度モデルでのみ使用されます)。構築された複数のモデルは、Average、GLM、およびENETアンサンブルを使用してアンサンブルできます。
重み付けパラメーターの要件¶
ウェイト、エクスポージャー、イベント数では、DataRobotが条件(ツールチップに記載)に合致しない特徴量をすべて除外して、選択できないようにします。オフセットについては、複数の特徴量を選択できます。次の表では、各パラメーターのデータセット要件について説明します。
条件 | ウェイト | エクスポージャー | イベント数 | オフセット |
---|---|---|---|---|
プロジェクトタイプ | すべて | 連続値 | 連続値 | 連続値および二値分類 ターゲット値 |
任意 | 正の値 | ゼロ過剰 | 任意 | 正の値 |
欠損値、すべてゼロ、または値なし(空)を許容するか? | いいえ | いいえ | いいえ | いいえ |
正の値は必要か? | はい | はい | はい | いいえ |
ゼロ値を許容するか? | いいえ | いいえ | はい | はい |
許容される列 | 単一 | 単一 | 単一 | 複数 |
複数 重複列を許容するか? | いいえ | いいえ | いいえ | いいえ |
データ型* | 数値 | 数値 | 数値 | 数値 |
変換された特徴量を許容するか? | はい | いいえ | いいえ | いいえ |
いいえ 2よりも大きいカーディナリティを許容するか? はい | いいえ | はい | はい | はい |
多クラスを許容するか? | はい | いいえ | いいえ | いいえ |
時系列プロジェクト? | はい | いいえ | いいえ | いいえ |
教師なしプロジェクト? | いいえ | いいえ | はい | いいえ |
ETLのダウンサンプリング? | はい | いいえ | いいえ | いいえ |
ターゲットのゼロ過剰? | いいえ | はい | はい | はい |
* 選択した列は(日付や時刻などではない)「純粋」な数値である必要があります。また、オフセット、エクスポージャー、イベント数に選択した列を他の特殊な列(ユーザーパーティションやウェイトなど)として指定することはできません。
インサイトに対する重み付けの効果¶
オフセット、エクスポージャー、イベント数の各パラメーターを使用して構築されたプロジェクトでは、それらを使用しないプロジェクトと同じDataRobotインサイトが生成されます。ただし、オフセット列、エクスポージャー列、およびイベント数列は予測セットから除外されます。つまり、選択した列は、係数、予測の説明、特徴量のインパクトの可視化には含まれず、プロジェクト全体を通して特殊な列として扱われます。エクスポージャー、オフセット、イベント数の各列は、これらの可視化においては特徴量として表示されませんが、その値はトレーニングで使用されています。
リンク関数とは?
エクスポージャーとオフセットで使用されるリンク関数は、非線形の関係性を線形の関係性にマッピングすることで、線形モデル(線形回帰)をサポートしていないデータでも、このモデルタイプを使用できるようにします。具体的には、各カテゴリーの応答変数の確率を、連続的で境界のないスケールに変換します。
エクスポージャーの設定¶
エクスポージャーパラメーターは、1つの特徴量のみ受け付けます。2つ目の特徴量名を入力すると、前回選択した特徴量が上書きされます。エクスポージャーを設定するには、入力ボックスに名前を入力します。DataRobotは入力された文字列を照合し、完了すると、その入力を検証します。
モデリングでエクスポージャー値を使用できるのは、対数リンク関数(Poisson、Gamma、またはTweedie Deviance)を含む最適化指標だけです。これらの最適化指標においては、エクスポージャーとして指定したフィールドの値がログ変換されます(ユーザーが行う必要はありません)。それ以外の最適化指標を選択した場合、DataRobotは情報提供のメッセージを返します。トレーニングおよび予測適用の詳細については、以下を参照してください。
エクスポージャーの説明
データの各行の履歴長が異なる場合、「当日の値」を比較することはできません。エクスポージャーパラメーターは、期間が異なる複数の観測値を比較することによってリスクを計算する場合に使用します。エクスポージャーは、時間の経過に伴うリスクのバランスを取るために用いられる特殊な重み付けです。たとえば、年間平均2件の保険金請求が行われている保険契約があるとします。2つの保険契約(半年契約と通年契約)を比較した場合、統計的に言うと、半年契約では1回の保険金請求、通年契約では2回の保険金請求となります(平均値)。エクスポージャーを使用すると、DataRobotは期間の違いに応じて予測を調整できます。
イベント数の設定¶
イベント数は、ゼロ以外のイベントの頻度に関する情報を追加することで、ゼロ過剰ターゲットのモデリングを改善します。これは、頻度x強度モデルで特殊な列として扱われます。頻度ステージでは、この列を使用して、ゼロ以外のイベントの頻度をモデル化します。強度ステージでは、列内のゼロ以外のイベントの強度を正規化し、その値を重みとして使用します。これは、頻度係数と強度係数の解釈可能性を向上させるために特に必要です。この列は、新しいデータで予測を行う目的では使用されません。
このパラメーターは、1つの特徴量のみ受け付けます。2つ目の特徴量名を入力すると、前回選択した特徴量が上書きされます。DataRobotは入力された文字列を照合し、完了すると、その入力を検証します。
オフセットの設定¶
オフセットパラメーターは、各サンプルでモデルの切片(線形モデル)またはマージン(ツリーベースモデル)を調整するもので、複数の特徴量を受け付けます。DataRobotでは、どのリンク関数を使用するかを報告するメッセージが選択内容の下に表示されます。
-
連続値問題では、最適化指標がPoisson、Gamma、またはTweedie Devianceの場合、DataRobotは対数リンク関数を使用します。この場合、オフセットは事前に対数変換しておく必要があります。それ以外の場合、DataRobotはアイデンティティリンク関数を使用し、オフセットには変換は必要ありません。
-
二値分類問題では、DataRobotはロジットリンク関数を使用します。この場合、オフセットは事前にロジット変換しておく必要があります。
トレーニングおよび予測適用の詳細については、以下を参照してください。
オフセットの説明
固定要素と可変要素の両方あるデータに依存するプロジェクトで作業する場合、オフセットパラメーターを適用すると便利です。オフセットを使用すると、モデルを可変要素のみで予測するように制限できます。これは、特に固定要素が変動する場合に重要です。オフセットパラメーターを設定すると、DataRobotでは特徴量がそのようにマークされ、固定値を考慮に入れずに予測が行われます。
2つの例を示します。
1.残差モデリングは、重要なリスク要因(たとえば、保険の引受サイクル、年、年齢、損失期間など)が結果に強く寄与することで、他のすべての影響を覆い隠してしまい、結果に大きな偏りが生じる可能性がある場合によく用いられる手法です。オフセットを設定すると、データのバイアスの問題に対処できます。特徴量セットをオフセットとして使用することは、選択した特徴量セットの残差に対してモデルを実行することと同等です。残差についてモデリングすることで、すでに知っていることではなく、新しい情報を伝えることに重点を置くようにモデルを設定できます。オフセットを使用すると、最終予測に主要なリスク要因を取り入れたまま、モデル構築の際に「その他」の要因に注目します。
2.市場競争や規制が原因で、保険契約に制約が課されることがあります。たとえば、自動車保険では、複数台割引やマイカー割引の上限が20%になったり、若年層のドライバーやビジネス上不利な地域を対象として保険料率が低く抑えられたりします。このような場合、特徴量の一部を特定の値に設定し、オフセットとしてモデルの予測に追加することができます。
モデリングにおけるオフセットとエクスポージャー¶
トレーニングの際、オフセットとエクスポージャーは以下のロジックでモデリングに組み込まれます。
プロジェクト指標 | モデリングロジック |
---|---|
RMSE | Y-offset ~ X |
Poisson/Tweedie/Gamma/RMSLE | ln(Y/Exposure) - offset ~ X |
ベルヌーイ | logit(Y) - offset ~ X |
予測を行う際には、以下のロジックが適用されます。
プロジェクト指標 | 予測計算ロジック |
---|---|
RMSE | model(X) + offset |
Poisson/Tweedie/Gamma/RMSLE | exp(model(X) + offset) * exposure |
ベルヌーイ | logistic(model(X) + offset) |