Skip to content

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

単調制約

一部のプロジェクト(保険業や銀行業など)では、特徴量とターゲットの間の方向関係性を強制することが望ましい場合があります(評価価値の高い家屋の火災保険料が常に高くなるなど)。 単調制約でのトレーニングを行うことによって、特定のXGBoostモデルに特定の特徴量とターゲットの間の単調(常に増加または常に減少)関係性を学習させます。 たとえば、住宅の評価額を示す特徴量の値を増やした場合に、ターゲット(claim losses)が常に増加する関係性にします。 高度なオプション > 特徴量制約で特徴量セットを作成して適用し、関係性の方向(増加または減少)を設定します。 モデルの初期実行の後、リーダーボードメニューからセットを作成してモデルを制約することもできます。

一般的なワークフロー

一般に、単調制約での作業は、以下のようなワークフローとなります。 開始する前に、モデリングに関する注意事項(時系列プロジェクトでの特別な注意事項など)を確認してください。

  1. 特徴量セットを作成します。この特徴量セットは単調増加および単調減少の制約に使用します。

  2. ターゲットとモデリング特徴量セットを設定します。

  3. 高度なオプションリンクから、特徴量の制約を設定します。

  4. いずれかのモデリングモードを使用してモデル構築を開始します。

  5. モデル構築が終了したら、結果を確認します。

  6. (Optional) Retrain model(s) using different monotonic constraints (or without constraints).

  7. 特徴量ごとの作用の部分依存グラフを使用して、複数のモデルのトレーニング結果を比較し、最終的なモデルを選択します。

特徴量セットの作成

単調モデリングの最初のステップは、単調制約された特徴量を識別する特徴量セットを作成することです。 このようなセットに含まれる特徴量は、ターゲットとの間に強制された方向関係性(増加または減少)を持つ特徴量です。 単調特徴量セットを使用しても、特徴量セットを構築する標準モデルは置き換えられません。 これらのセットは、特徴量セットを構築する選択済みモデルにおいて、別途処理する必要のある特徴量を識別するものです。

特徴量セットを作成するときは、以下の点に注意してください。

  • 特徴量は、数値かパーセント、長さ、通貨のいずれかである必要があります。
  • 単調増加および単調減少の制約の特徴量セットでは、特徴量をオーバーラップさせることはできません。
  • 特徴量セットを作成した後、特徴量セットドロップダウンをプロジェクトモデル構築のリストに変更します(そうでない場合、ドロップダウンは最後に作成したリストのままになります)。
  • ターゲット特徴量は、すべての特徴量セットに自動的に追加されます。

結果の評価

モデル構築が完了した後、いくつかのツールを使用して結果を確認および評価することができます。 最初に、リーダーボードで単調制約でトレーニングされているモデル(またはトレーニングできるモデル)であることを確認します(MONO バッジで確認可能)。 制約が適用された状態でモデルが構築されたかどうかを判断するには、リーダーボードのモデルの説明を確認します。

制約されたモデルを展開し、説明 > 制約タブから、制約された特徴量をレビューします。

制約リストで確認した特徴量の一部またはすべてが、最終的なモデリング特徴量セットで使用されていない場合があります。 これは、DataRobotが推奨モデルの削減済み特徴量セットを作成するときなどに発生します。 本質的に、これも制約として機能します。

次に、特徴量ごとの作用の部分依存グラフを計算して表示し、単調制約された特徴量の結果を確認します。 このグラフは、単調に制約された機能が予測されたターゲットとの単調な関係性を維持しているかどうかを判断するのに役立ちます。 部分的な依存関係は、検証セットに基づいて、各予測子と予測されたターゲット値の間で計算されます—各ビンの平均ターゲット値と予測値の間の関係を計算します。 予測ターゲット値のその他の予測からの影響は平均を超える傾向があるので、部分依存は、個々の予測とターゲットの間の関係性を反映します。 モデルが単調制約でトレーニングされている場合、単調制約された特徴量と予測ターゲットの間の関係性は単調になる傾向があります。

たとえば、このグラフは、制約なしでトレーニングされたモデルの部分依存をプロットしています。

単調減少制約が適用されている場合、部分依存は次のようになります。

新しい制約でのモデルの再トレーニング

モデルを構築した後、単調特徴量セットを変更して1つまたは複数のモデルを返すことができます。 そのためには、以下の手順を実行します。

  1. リーダーボードで、モデル名の左側にあるボックスを選択して、制約をサポートするモデルを選択します。 MONOバッジをクリックして、対象となるモデルだけが表示されるようにリーダーボードの表示をフィルタリングします。

  2. メニューを展開して、選択したモデルを制約付きで実行を選択します。 このオプションは、選択されたすべてのモデルが制約をサポートする場合にのみ使用できます。

  3. 画面の上部でウィンドウが展開し、単調増加および単調減少の特徴量セットを選択するドロップダウンが表示されます。

  4. 設定したらモデルを実行をクリックします。

機能に関する注意事項

単調モデリングには、以下の注意事項があります。

  • 単調モデルを含むアンサンブルでは、リーダーボードにMONOラベルが表示されません。

  • 単調モデリングは、二値分類プロジェクトおよび連続値プロジェクトで使用可能です。

  • 特徴量制約は、数値、パーセンテージ、長さ、または通貨の種類の特徴量とターゲット間にのみ適用できます。

  • 一般化加法モデル、頻度/強度モデル、および品後/コストモデルは、単調制約でトレーニングされた特徴量との交互作用(インタラクション)をサポートしません。

  • 単調制約を課したトレーニングをサポートするのは、Extreme Gradient Boosted Trees、一般化加法モデル、Frequency/Severity(XGBoostベースのFrequencyモデルとSeverityモデル)、およびFrequency/Costモデル(XGBoostベースのFrequencyモデルとCostモデル)だけです。

  • Search for differencesタスク(DIFF3など)、Search for ratioタスク(RATIO3など)を含むExtreme Gradient Boosted Treesモデルは、単調性制約でのトレーニングをサポートしません。 (これらのタスクでは、特徴量と予測されたターゲットの間の単調相関性が変化する傾向があるためです。)

  • オートパイロットで使用されるモデルまたはリポジトリから使用されるモデルの制約は、高度なオプションでのみ設定可能で、プロジェクトを作成した後は変更できません。

  • 新しい制約は、リーダーボード上のモデルに対してのみ設定できます。

  • [高度なオプション]でInclude only monotonic modelsが選択されている場合、オートパイロットでは平均アンサンブルのみが実行されます。

  • 時系列プロジェクトで単調制約を使用する場合:

    • XGBモデルのみがサポートされています。
    • 特徴量派生プロセス(EDA2の前に追加された単調なリスト)の前に、単調性に使用される特徴量が「派生しない」に設定されます。
    • ブループリントにオフセットがある場合、たとえばナイーブ予測の場合、オフセットが適用された後、予測自体は単調ではないことがあります。 (XGBoostでは、単調性が優先されます。)
    • モデルがモデルの集合体である場合(系列ごとのXGBoostや、パフォーマンスベースのクラスタリングブループリントなど)、系列/クラスターごとに単調性が保持されます。

更新しました February 20, 2024