高度なチューニング¶
「高度なチューニング」タブでは、手動でモデルパラメーターを設定でき、DataRobotが各モデルに選択した設定を上書きでき、名前付きのチューニングパラメーターとして保存することができます。場合によっては、パラメーター設定を試行することでモデルパフォーマンスを改善することも可能です。 高度なチューニングでモデルを作成すると、DataRobotは、新たに追加でリーダーボードモデルを生成します。新しく追加されたモデルをアンサンブル化したり、さらにチューニングをかけたりすることができます。 チューニングされたモデル用にスコアを計算するには、トレーニングデータセット内の内部「グリッド検索」パーティションを使用します。 一般的なパーティションは80/20のトレーニング/検定分布ですが、DataRobotは5分間の交差検定を適用します。
備考
Visual Artificial Intelligence (AI)プロジェクトのためのアーキテクチャ、オーグメンテーション、チューニングのオプションも参照してください。
高度なチューニングは、下記を除く全てのモデルで使用できます。
- アンサンブルモデル
- Primeモデル
- オープンソース/Rモデル
- ユーザー作成のモデル
高度なチューニング機能をサポートしても、現時点でチューニング可能なパラメーターを提供しない上記のカテゴリーに分類されないモデルもあります。
本機能の提供について
マネージドAIプラットフォームユーザーは、チューニングに使用できる可能性のある前処理パラメーターの一部にアクセスできます。 DataRobotの前処理のステップの独自のパラメーターは、高度なチューニングタブに表示されません。
詳細なパラメーター設定を表示するには、リーダーボードリスト内のモデルを展開してから、評価 > 高度なチューニングをクリックします。 ウィンドウが開き、パラメーター設定が左側に、グラフが右側に表示されます。
下表では、高度なチューニングページのフィールドについて説明しています:
要素 | 説明 |
---|---|
パラメーター(1) | 検索された全てのパラメーター、または前処理あるいは最終予測モデルパラメーターに対して検索された全ての値の内の最適値のいずれかを表示します。 次の検索の値を設定するには、許容可能な値のガイダンスを参照してください。 画面右上部のドキュメントリンクをクリックして、モデルタイプ固有のドキュメントにアクセスできます。 Eureqaモデルのチューニングパラメーターの詳細については、Eureqa Advanced Tuning Guideを参照してください。 |
検索タイプ (2) | スマート検索または総当たりのいずれかの検索タイプを定義します。 このタイプにより検索の詳細レベルが決まるので、リソースの使用量に影響を与えることになります。 |
ネーミング (3) | チューニングに説明テキストをつけます。 |
グラフ (4) | スコアに対するパラメーターをプロットします。 |
チューニングを開始 (5) | 新しい検索パラメーターリストに表示されているパラメーターを元に新しいチューニングセッションを開始します。 |
表示オプションの定義や設定などの高度なチューニングの内容の情報は以下を参照してください。
高度なチューニングのパラメータータイプ¶
予測に使用する最終モデルだけでなく、タスクの前処理でもパラメーターをチューニングできるようになりました。
高度なチューニングでは、以下の前処理タスクの値を設定できます。
- K平均法クラスタリングでのクラスターの数
- PCA(主成分分析)での主成分の数
- 補完値の任意の値
- ExtraTrees特徴量選択での特徴量の有用性しきい値
- Elastic NetモデルのNグラムの数
一覧に示すいずれかのパラメーターをチューニングすると、その情報がリーダーボードのモデルの説明の下に追加されます。
チューニングによるプロジェクト共有¶
前処理パラメーターをチューニングできる範囲は、組織の有効化された機能に応じて異なります。 完全なアクセス権があって、前処理パラメーターをチューニングするプロジェクトを作成する場合、必ずしも全てのユーザーにそれらのパラメーターが表示されないことがあります。 権限の異なるユーザーとプロジェクトを共有すると、チューニングされた特定のパラメーターが制限ユーザーに表示されないことがあります。 プロジェクトをチューニングする際、DataRobotはリーダーボード上に視覚的なインジケーターを提供するので、そのようなユーザーはパラメーターが変更されているとわかります。
高度なチューニングの使用¶
オプションの設定方法を理解したら、チューニングを作成することができます。 高度なチューニングには次の3つの手順があります。
注意
次の状況ではメモリーエラーが発生することがあります。
max_depth=1,2,3,4,5
learning_rate=.1,.2,.3,.4,.5
パラメーターの設定¶
パラメーター値の1つを変更するには:
-
パラメーター名の横にある下向きの矢印をクリックします。
-
次のいずれかの方法で値を入力フィールドに新しい値を入力します。
- 事前入力された値の一つを選択します(オレンジでリストされているいずれかの値をクリックすると、その値が値フィールドに入力されます。)
- フィールドに値を入力します。 許容可能な値フィールドを参照してください。このフィールドには、数値入力の制約またはカテゴリー入力(「selects」)の事前定義済みの許容値のいずれかがリストされます。 特定の数値を入力するには、許容値の条件を満たす値または範囲を入力します。
備考
その他のタイプ(「multis」)も受け入れるパラメーター内のカテゴリー値、および前処理パラメーターは調整できません。 この機能が導入される前に作成されたモデルの場合、selectsの追加インスタンスは調整できない場合があります。
上記のスクリーンショットでは、0.00001から1の間の様々な値を入力できます。次に例を示します。
0.2
個々の値を選択します。0.2, 0.4, 0.6
範囲内の値を一覧表示します。リスト内の値を区切るにはカンマを使用します。0.2-0.6
と入力すると、範囲が指定され、DataRobotによって高い値と低い値の間の間隔が選択されます。ハイフンを使用して範囲を指定します。
検索タイプの設定¶
詳細設定リンクをクリックして、以下にあるいずれかの検索タイプを設定します:
-
スマート検索(デフォルト)は、モデルのパフォーマンスが高いと思われる範囲に集中し、モデルに関連が薄いハイパーパラメーターポイントを無視する高度なパターン検索(最適化)を実行します。
-
総当たりは、各データポイントを評価しますが、時間とリソースへの負荷が高い場合があります。
There are situations, however, in which Brute Force will outperform Smart Search. This is because Smart Search is heuristic-based—meaning it's about saving time not increasing accuracy (it doesn’t search the whole grid).
Deep dive: Smart Search heuristics
The following describes how DataRobot performs Smart Search:
- Use a start value if specified. Otherwise, initialize the first grid pass to be the cross-product of the 25th and 75th percentile among each parameter's grid points and score.
- Find the best-performing grid points among those that were searched.
- From the unsearched grid points, find the neighbor grid points of the best-performing searched grid point and score for those points.
- Add those values to the "searched" list and repeat from Step 2.
- If no neighbors are found, search all adjacent neighbors (
edges
). If neighbors are found, repeat from Step 2. - If still no neighbors are found, reduce the search radius for neighbors. If neighbors are found, repeat from Step 2.
- Repeat Steps 2-5 until there are no new neighbors to search or the maximum number of iterations (
max_iter
) is reached.
チューニングの実行¶
チューニングを実行するには:
-
オプションとして、このチューニングを説明を使用してテキスト(名前やコメントなど)をチューニングに付加することができます。 DataRobotは、モデルが完了するとリーダーボードにあるモデル名の下に小さな文字でそのコメントを表示します。
-
チューニングを開始をクリックします。
チューニングを開始をクリックすると、選択したパラメーターを使って新しいモデルの構築が開始されます。 DataRobotは、右ウィンドウにあるワーカーの使用状況欄に進捗状況を表示し、リーダーボードに新しいモデルを追加します。 リーダーボードのエントリーは、モデルの実行が完了するまでは完全な値ではありません。 モデル名の右側にチューニング済みバッジが表示され、このチューニングを説明ボックスの説明テキストがタイトルの下に表示されます。
グラフの解釈¶
高度なチューニング機能が表示するグラフは、あるスコアに対するパラメーターを表示したり、同時に実行された2つのパラメーター値を分析するパラメーター・ツー・パラメーターグラフを表示します。 モデルタイプによりグラフの数値と詳細は異なります。
詳しい情報…¶
以下のセクションでは、パラメーターのセクションについてより詳しく説明しています。また、高度なチューニンググラフについても説明しています。
高度なチューニングの内容¶
パラメーター領域には3つのタブがあります。既存のモデルのパラメーターを2つの異なる視点で表示するタブの他、3つ目のタブで新しいモデルを作成します。 パラメーターは、モデルの影響を受けますが、サンプルサイズの影響は受けません。 表示されるオプション:
-
検索済み:現在のモデルを実行したときに使用したパラメーター値を一覧表示し、表示したグラフを作成し、リーダーボードに表示される検定スコアを取得します。
-
最高の検索結果最適な検定スコアに寄与した各パラメーター値に1つの値を表示します。
-
新しい検索:次の検索に使用するパラメーター値を変更できるよう各パラメーターに編集可能なフィールドを提供します。 このタブからチューニングを開始します。
ヒント
どのセクションからでも、下矢印をクリックしてパラメーターを変更すると、新しい検索が表示されます。
高度なチューニング ページの左側にモデルのパラメーターを表示されます(リストにあるパラメーターはモデル固有のものです)。 検索済みと最高の検索結果をクリックすると、DataRobotで利用できるパラメーター情報を表示します。
以下の例では、max_features
とmax_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など)を使用する場合、ドロップダウンを使用してステージを選択できます。 選択したステージに対応するパラメーターがグラフ化されます。