What-IfとOptimizer¶
What-ifとOptimizerウィジェットでは、予測結果を操作するための2つのツールを用意しています。
- What-if:最善の結果を提供するオプションを識別するために、複数の予測シミュレーションを作成して比較できる意思決定ツール。 予測を作成した後、1つまたは複数の入力を変更して新しいシミュレーションを作成し、その変更がターゲット特徴量にどのように影響するかを確認することもできます。
- 最適化:モデル内で選択した可変特徴量の値を変化させたことによって、ターゲットまたはカスタム式について予測される最大値または最小値を特定します。
What-Ifと最適化ウィジェットを編集するには、編集ページドロップダウンを開き、予測の詳細/最適化の詳細を選択します。
ウィジェットを選択した状態で、プロパティをクリックします。 このアプリには、より良いターゲットの予測値を得るための多くの設定があります。 表示される設定は、どのツールが有効化されているかと、プロジェクトタイプに基づきます。
多クラスプロジェクトから最適化アプリケーションを作成する場合は、予測クラス値から最適化のターゲットを選択する必要があります。 そのために、[プロパティ]タブをクリックし、ドロップダウンを使用してターゲットを選択します。 シナリオ最適化を有効にするをオンにする必要があります。
次の表は、設定可能な各パラメーターについて説明します。
パラメーター | 説明 |
---|---|
What-ifとOptimizerトグル | What-Ifシナリオを有効化:比較機能を有効または無効に切り替えます。 シナリオ最適化を有効化:最適化機能を有効または無効に切り替えます。 最適化が有効になっている場合は、最適なシナリオの結果でオプションを選択する必要があり、カスタムの最適化式を含めることができます。 |
最適化ドロップダウンのターゲットを選択(多クラスのみ) | シナリオ最適化を有効にするがオンになっている場合、予測されたクラス値から最適化のターゲットを設定します。 |
最適なシナリオの結果 | ターゲット特徴量の予測値を最小化するか、最大化するかを設定します。 最小化すると最低の出力(顧客の解約率など)を取得できます。最大化すると最大の出力(販売価格など)を取得できます。 |
最適化ターゲットのカスタム表記 | 中括弧で囲まれた式を作成し、{converted} * {renewal_price} のように1つ以上の特徴量を使用します。 |
最適化アルゴリズムを設定 | 有効にするとアルゴリズムが設定されます。有効にしない場合、最適化の選択はDataRobotに残ります。 アルゴリズムの一覧から選択して、シミュレーションの実行回数を決定します。 グリッド検索では、最大3つの可変特徴量に関するオプションを網羅的に総当たりで検索します。 以前の反復が強力な結果を示唆していない場合でも、多くの可能性を試すために長い時間がかかる場合があります。 Particle Swarmは、最大30の柔軟な特徴量で多数のオプションをテストするメタヒューリスティック戦略です。 これは柔軟な数値特徴量には効果的ですが、柔軟なカテゴリー特徴量には効果的でない場合があります。 Hyperoptでは、最大20の柔軟な特徴量で大幅に少ないオプションを効率的に探索します。 これは、カテゴリー特徴量および数値特徴量に効果的です。 このアルゴリズムでは、最大400のシミュレーションを設定できます。 反復が多いほど良い結果が得られますが、収束に多くの反復が必要になるため、実行時間が長くなる可能性があります。 |
特徴量の合計を制約 | 出力制約を設定します。 制約条件によって、各レコードの最適化の反復処理でターゲット特徴量の値を超える出力結果が取得されないよう制御されます。 たとえば、家屋の価格を最適化する場合、地下室をリフォームするか、寝室を追加することによって居室面積を拡張することが考えられます。 合計に関する制約条件を使用して、それぞれで占有できる床面積を制限します。 制約値に対して最大(選択肢が超過しない)または等しい(選択肢は等値)を選択します。 |
ビュー | 情報をチャート、テーブル、またはその両方で表示します。 |
備考
デフォルトの設定は、アプリの作成中に選択したテンプレートによって決定されます。 What-ifとOptimizerウィジェットは予測テンプレートで無効化されますが、目のアイコンをクリックして有効にできます。
予測の説明を無効にすることで実行時間を短縮
予測の説明を計算すると予測時間が長くなる可能性があるため、予測の説明の計算よりも速度が重要な場合は、予測の説明を有効にするトグルをオフにします。
カスタム最適化式¶
バッチ予測の最適化の場合、アプリがデプロイされたデータセットから特徴量を使用するのと同様に、カスタム最適化式の一部としてバッチアップロードで定義されたフィールドを使用します。 たとえば、スプレッドシートnet_profit
でフィールドにラベルを付け、プロジェクトの基盤となるデータセットにtime_to_market
特徴量がある場合、次の項目は有効なカスタム式となる場合があります。
{net_profit}/{time_to_market}
カスタム式への制約の追加
カスタム式を使用して(ターゲットの予測値を最小化または最大化するだけでなく)、ターゲット数までの距離を変更することで最適な結果を指定できるだけでなく、カスタム式を使用して他の柔軟な特徴量の条件に制約を追加することもできます。 これを行うには、ペナルティ項としてカスタム式に制約を追加する必要があります。
たとえば、ターゲット特徴量はsales
で、マーケティング(YouTubeやテレビ広告など)に費やされている金額を監視しながら、売上を最大化したいとします。 これを行うには、マーケティングへの過剰支出が適切にペナルティを受けるようにする必要があります。超過支出が1.00ドルの場合は、100万ドルの超過支出よりもペナルティが少なくなります。
100,000ドルのマーケティング予算をYouTube広告とテレビ広告に分割する場合、カスタム式は次のようになります。
Maximize
Sales
- (((youtube_spend + tv_spend) > 100000) * factor1)
- ((youtube_spend + tv_spend) * factor2)
factor1
は浪費に対してペナルティを課す金額を表し、factor2
は一般的な支出に対してペナルティを課す金額を表します。
factor2
はマーケティングROIと考えることができます。 業界がマーケティングに3%のROIを予想している場合、この値は1.03になります。
特徴量の合計を制約¶
合計について制約する対象とする特徴量を選択するには:
-
プロパティタブの下部にある特徴量の合計を制限するをオンにします。 合計特徴量の一部で選択をクリックします。
-
特徴量の管理ウィンドウで、少なくとも2つの固定または柔軟な特徴量の横にあるボックスを選択します。 選択した特徴量は数値である必要があります。Hyperoptアルゴリズムを使用する場合、このオプションは使用できません。
-
特徴量の選択が完了したら、保存をクリックします。
操作可能な特徴量¶
データタブでは、最適化された結果を検索するときに制御できる要因を表す特徴量を選択できます。 たとえば、家屋の価格を最適化する場合、キッチンの品質、住宅ローンの費用、駐車場のサイズなどが可変特徴量になります。
柔軟な特徴量を管理するには:
-
管理をクリックします。
-
オレンジ色の矢印を使用して、特徴量を追加または削除します。
-
保存をクリックすると、柔軟な特徴量を確定します。
制約¶
可変特徴量を選択したら制約条件を適用します。 数値制約の場合は指定された範囲内の値、カテゴリー特徴量の場合は特定の候補の値だけが対象になります。
特徴量に制約を適用するには、データタブで制約を設定をクリックします。
柔軟な特徴量を選択すると、特徴量の分布を表示するドロップダウンが拡張されます。
カテゴリー特徴量の場合、カテゴリーから検索ドロップダウンメニューを開き、対応するボックスにチェックを入れて、シミュレーションに含める特徴量を選択します。
数値特徴量の場合、最小値と最大値の数値範囲を個別に入力したり、ヒストグラム上で境界線をドラッグしたりすることができます。
整数値トグルボタンをオンにすると、整数値のみが含まれます(小数値は除外されます)。
保存をクリックすると、特徴量の制約を確定します。