Skip to content

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

高度なチューニング

「高度なチューニング」タブでは、手動でモデルパラメーターを設定でき、DataRobotが各モデルに選択した設定を上書きでき、名前付きのチューニングパラメーターとして保存することができます。場合によっては、パラメーター設定を試行することでモデルパフォーマンスを改善することも可能です。 高度なチューニングでモデルを作成すると、DataRobotは、新たに追加でリーダーボードモデルを生成します。新しく追加されたモデルをアンサンブル化したり、さらにチューニングをかけたりすることができます。 チューニングされたモデル用にスコアを計算するには、トレーニングデータセット内の内部「グリッド検索」パーティションを使用します。 一般的なパーティションは80/20のトレーニング/検定分布ですが、DataRobotは5分間の交差検定を適用します。

備考

Visual Artificial Intelligence (AI)プロジェクトのためのアーキテクチャ、オーグメンテーション、チューニングのオプションも参照してください。

高度なチューニングは、下記を除く全てのモデルで使用できます。

  • アンサンブルモデル
  • Primeモデル
  • オープンソース/Rモデル
  • ユーザー作成のモデル

また、ベースラインモデルなど、上記のカテゴリーに当てはまらないモデルもありますが、現時点ではチューニング可能なパラメーターはありません。

詳細なパラメーター設定を表示するには、リーダーボードリスト内のモデルを展開してから、評価 > 高度なチューニングをクリックします。 ウィンドウが開き、パラメーター設定が左側に、グラフが右側に表示されます。

下表では、高度なチューニングページのフィールドについて説明しています:

要素 説明
パラメーター(1) 検索された全てのパラメーター、または前処理あるいは最終予測モデルパラメーターに対して検索された全ての値の内の最適値のいずれかを表示します。 次の検索の値を設定するには、許容可能な値のガイダンスを参照してください。 画面右上部のドキュメントリンクをクリックして、モデルタイプ固有のドキュメントにアクセスできます。 Eureqaモデルのチューニングパラメーターの詳細については、Eureqa Advanced Tuning Guideを参照してください。
検索タイプ (2) スマート検索または総当たりのいずれかの検索タイプを定義します。 このタイプにより検索の詳細レベルが決まるので、リソースの使用量に影響を与えることになります。
ネーミング (3) チューニングに説明テキストをつけます。
グラフ (4) スコアに対するパラメーターをプロットします。
チューニングを開始 (5) 新しい検索パラメーターリストに表示されているパラメーターを元に新しいチューニングセッションを開始します。

表示オプションの定義や設定などの高度なチューニングの内容の情報は以下を参照してください。

予測に使用する最終モデルだけでなく、タスクの前処理でもパラメーターをチューニングできるようになりました。

高度なチューニングでは、多数の前処理タスクの値を設定できますが、使用可能かどうかはモデルとプロジェクトタイプに依存します。 一覧に示すいずれかのパラメーターをチューニングすると、その情報がリーダーボードのモデルの説明の下に追加されます。

高度なチューニングの使用

オプションの設定方法を理解したら、チューニングを作成することができます。 高度なチューニングには次の3つの手順があります。

  1. 新しいパラメーター値の決定と設定
  2. 検索タイプの設定(オプション)
  3. チューニングの実行

メモリーエラーの回避

次の状況ではメモリーエラーが発生することがあります。

  • グリッド検索で25以上のグリッドポイントが返されるような複数の値を受け入れる高度なチューニングパラメーターを設定した場合。 検索は追加的ではなく、倍数的であることに注意してください(たとえば、10ではなく25グリッドポイントの結果)。max_depth=1,2,3,4,5 learning_rate=.1,.2,.3,.4,.5

  • 検索対象のハイパーパラメーターの範囲を拡大して、モデルサイズが大きくなる場合(XGBoostモデルの推定器の数またはツリー深度を増やした場合など)。

パラメーターの設定

パラメーター値の1つを変更するには:

  1. パラメーター名の横にある下向きの矢印をクリックします。

  2. 次のいずれかの方法で値を入力フィールドに新しい値を入力します。

    • 事前入力された値の一つを選択します(オレンジでリストされているいずれかの値をクリックすると、その値が値フィールドに入力されます。)
    • フィールドに値を入力します。 許容可能な値フィールドを参照してください。このフィールドには、数値入力の制約またはカテゴリー入力(「selects」)の事前定義済みの許容値のいずれかがリストされます。 特定の数値を入力するには、許容値の条件を満たす値または範囲を入力します。

    備考

    その他のタイプ(「multis」)も受け入れるパラメーター内のカテゴリー値、および前処理パラメーターは調整できません。 この機能が導入される前に作成されたモデルの場合、selectsの追加インスタンスは調整できない場合があります。

    上記のスクリーンショットでは、0.00001から1の間の様々な値を入力できます。次に例を示します。

    • 0.2 個々の値を選択します。
    • 0.2, 0.4, 0.6範囲内の値を一覧表示します。リスト内の値を区切るにはカンマを使用します。
    • 0.2-0.6と入力すると、範囲が指定され、DataRobotによって高い値と低い値の間の間隔が選択されます。ハイフンを使用して範囲を指定します。

    複数の値を受け入れる浮動小数点パラメーターの場合、範囲(例:0.5-1.0)を入力すると、DataRobotはデフォルトでその範囲から10ポイントを線形的にサンプリングします。 しかし、サンプリングはカスタマイズできます。 たとえば、5つの値を線形空間ではなく対数空間でサンプリングするには0.1-0.9 sample(5) logspaceを使用します。

検索タイプの設定

詳細設定リンクをクリックして、以下にあるいずれかの検索タイプを設定します:

  • スマート検索(デフォルト)は、モデルのパフォーマンスが高いと思われる範囲に集中し、モデルに関連が薄いハイパーパラメーターポイントを無視する高度なパターン検索(最適化)を実行します。

  • 総当たりは、各データポイントを評価しますが、時間とリソースへの負荷が高い場合があります。

しかし、総当たりがスマート検索を上回る場合があります。 これは、スマート検索がヒューリスティックベースであるためです。つまり、精度を高めるためではなく、時間を節約するため(グリッド全体を検索しない)であることを意味します。

詳細:スマート検索ヒューリスティック

以下は、DataRobotがスマート検索を実行する方法について説明します。

  1. 指定した場合、開始値を使用します。 それ以外の場合は、最初のグリッドパスが、各パラメーターのグリッドポイントとスコアのうち25番目と75番目のパーセンタイルの外積であるように初期化します。
  2. 検索されたグリッドポイントの中から、パフォーマンスが最高のグリッドポイントを見つけます。
  3. 検索されていないグリッドポイントから、最もパフォーマンスの高い検索グリッドポイントの近傍のグリッドポイントを見つけ、それらのポイントをスコアリングします。
  4. これらの値を「検索済み」リストに追加し、手順2から繰り返します。
  5. 近傍が見つからない場合は、隣接するすべての近傍(edges)を検索します。 近傍が検出された場合は、手順2から繰り返します。
  6. それでも近傍が見つからない場合は、近傍の検索半径を小さくします。 近傍が検出された場合は、手順2から繰り返します。
  7. 検索する新しい近傍が存在しないか、最大反復数(max_iter)に達するまで、手順2~5を繰り返します。

チューニングの実行

チューニングを実行するには:

  1. (オプション)このチューニングを説明を使用してテキスト(名前やコメントなど)をチューニングに付加することができます。 DataRobotは、モデルが完了するとリーダーボードにあるモデル名の下に小さな文字でそのコメントを表示します。

  2. チューニングを開始をクリックします。

チューニングを開始をクリックすると、選択したパラメーターを使って新しいモデルの構築が開始されます。 DataRobotは、右ウィンドウにあるワーカーの使用状況欄に進捗状況を表示し、リーダーボードに新しいモデルを追加します。 リーダーボードのエントリーは、モデルの実行が完了するまでは完全な値ではありません。 モデル名の右側にチューニング済みバッジが表示され、このチューニングを説明ボックスの説明テキストがタイトルの下に表示されます。

グラフの解釈

高度なチューニング機能が表示するグラフは、あるスコアに対するパラメーターを表示したり、同時に実行された2つのパラメーター値を分析するパラメーター・ツー・パラメーターグラフを表示します。 モデルタイプによりグラフの数値と詳細は異なります。

詳しい情報...

以下のセクションでは、パラメーターのセクションについてより詳しく説明しています。また、高度なチューニンググラフについても説明しています。

高度なチューニングの内容

パラメーター領域には3つのタブがあります。既存のモデルのパラメーターを2つの異なる視点で表示するタブの他、3つ目のタブで新しいモデルを作成します。 パラメーターは、モデルの影響を受けますが、サンプルサイズの影響は受けません。 表示されるオプション:

  • 検索済み:現在のモデルを実行したときに使用したパラメーター値を一覧表示し、表示したグラフを作成し、リーダーボードに表示される検定スコアを取得します。

  • 最高の検索結果最適な検定スコアに寄与した各パラメーター値に1つの値を表示します。

  • 新しい検索:次の検索に使用するパラメーター値を変更できるよう各パラメーターに編集可能なフィールドを提供します。 このタブからチューニングを開始します。

ヒント

どのセクションからでも、下矢印をクリックしてパラメーターを変更すると、新しい検索が表示されます。

高度なチューニング ページの左側にモデルのパラメーターを表示されます(リストにあるパラメーターはモデル固有のものです)。 検索済み最高の検索結果をクリックすると、DataRobotで利用できるパラメーター情報を表示します。

以下の例では、max_featuresmax_leaf_nodesに表示された値が異なっているのがわかります。

検索では、検索した全ての値がリスト表示されます。最高の検索結果では、最適なモデルを作り出した値のみがリスト表示されます。このケースでは、max_featuresの場合に0.4で、max_leaf_nodesの場合に500です。

新しい検索をクリックして、次のチューニングで使用するパラメーター値を表示します。 新しい検索に入力される値は、デフォルトでBの場合と同じです。 DataRobotでは、最高の検索結果パラメーター値に変更があった場合、青で新しい検索画面に表示されます。

高度なチューニンググラフ情報

以下は、高度なチューニンググラフの例です:

DataRobotは、数値または小数値をとるこれらのパラメーターをグラフ化し、スコアに対して表示します。 上の例では、上の2つのグラフはそれぞれ現在のモデルを構築した際に使用されたパラメーターをそれぞれプロットしています。 グラフにある点は、DataRobotがそのパラメーターに対して試行した値を示しています。 最も大きな点は選択されている値を示し、点は暖色から寒色に変わるカラースキームで表示されます。

左下にある3つ目のグラフは、「パラメーター・ツー・パラメーター」グラフで、共起の分析を可視化します。 パラメーター値を互いに対してプロットします。 同じグラフ上の比較グラフは、Y軸にあるガンマとX軸にあるCを表しています。 比較グラフにある大きな点は、このパラメーターを組み合わせたときの最高スコアを示す点です。

最後に表示されるパラメーター・ツー・パラメーターグラフは、DataRobotが試行した値を可視化するため、パラメーターの選択を試すのに、役立つ場合があります。 たとえば、全く異なる試みとして、グラフの中の何もない領域を探し、その領域内のある部分に一致するパラメーター値を設定することができます。 または、以前によい結果を出したものを微調整したい場合、最高スコアを表す大きな点の近くの領域で値を特定することもできます。

メインのモデルで2ステージモデリングプロセス(頻度-強度eXtreme Gradient Boosted Treesなど)を使用する場合、ドロップダウンを使用してステージを選択できます。 選択したステージに対応するパラメーターがグラフ化されます。


更新しました March 3, 2024