例 - Qlik Predict 分析コネクタを使用した What-if 分析
この例では、異なる変数が調整されたときに予測値がどのように変化するかをシミュレートするために、What-if 分析を設定します。この例では、Qlik Predict でバイナリ分類モデルをトレーニングおよび展開し、Qlik Predict 分析コネクタを使用して予測を作成します。
What-if 分析アプリケーション

開始前の準備
サンプル資料のダウンロード
サンプル リソースを以下からダウンロードしてください。
資料には次のものが含まれています。
-
トレーニング データセット - data-turnover-employees.xlsx。このデータセットは、この例のトレーニングと予測の両方で使用されます。
-
アプリケーション - What-If Analysis.qvf。モデルを最初にトレーニングして展開しないと、アプリケーションを予測の生成には使用できません。
前提条件
開始する前に、次を確認してください。
-
Qlik Cloud サブスクリプションでリアルタイム予測が実行できること。 以下を参照するか、テナント サービス アカウントの所有者に連絡してください。
-
テナント管理者が機械学習エンドポイントを有効にしていること。
-
テナント管理者によって、次の必要な権限が割り当てられていること。
-
[データ接続] 権限が [許可] に設定されていること。
-
実験を操作するための権限。
-
展開および Qlik Predict 分析コネクタの操作に関する権限。
-
パート 1: データセットのアップロード
次の手順を実行します。
-
分析 アクティビティ センターの [作成] ページに移動し、 [データセット] を選択します。
-
[データ ファイルをアップロード] をクリックします。
-
data-turnover-employees.xlsx データファイルを [ファイルを追加] ダイアログにドラッグ アンド ドロップします。
-
ファイルの保存先スペースを選択します。個人スペースまたは共有スペースを選択できます。このチュートリアルのすべてのアセットで同じスペースを使用してください。
-
[アップロード] をクリックします。
パート 2: 実験のトレーニング
バイナリ分類モデルをトレーニングするための実験を作成、構成、実行します。既定では、利用可能なすべての特徴量が含まれます。
次の手順を実行します。
-
分析 アクティビティ センターの [作成] ページに移動し、 [ML 実験] を選択します。
-
実験の名前を入力します。例: Employee turnover analysis。
-
実験のスペースを選択します (パート 1: データセットのアップロード で使用したのと同じスペースを使用してください)。
-
[作成] をクリックします。
-
トレーニング データセット ファイル data-turnover-employees.xlsx を選択します。
-
left 列をターゲットとして選択します。これは、従業員が会社を退職したかどうかを示す列です。
-
[実験を実行] をクリックします。
パート3: もっともパフォーマンスが高いモデルの展開とアクティブ化
展開
実験のトレーニングが完了すると、 [モデル] タブが表示されます。もっともパフォーマンスが高いモデルを ML 展開として展開します。
次の手順を実行します。
-
アイコンが表示されているモデルの横にある
をクリックします。
-
[
展開] をクリックします。
-
モデルを [新しい展開] に展開するオプションを選択します。
-
展開の名前を入力します。例: Employee Turnover Predictions。
-
必要に応じて、スペース、説明、タグを調整します。
-
[リアルタイム API アクセスを有効化] をオンにします。Qlik Predict 分析コネクタを使用して予測を実行するために必要です。
-
[作成] をクリックします。
アクティブ化
新しく作成した展開を開きます。
ML 展開インターフェイスの上部には、モデル承認者が予測を実行するために既定のモデルをアクティブ化する必要があることを示すバナーが表示されます。
次の手順を実行します。
-
ML 展開の上部にあるバナーで、 [モデルをアクティブ化] をクリックします。
-
表示されるダイアログで、 [モデルをアクティブ化] をクリックして確認します。
パート4: Qlik Predict分析コネクタへの接続の作成
次に、Qlik Predict 分析コネクタへの接続を作成します。これにより、分析アプリケーション内で予測をリアルタイムで生成できます。
次の手順を実行します。
-
分析 アクティビティ センターの [作成] ページに移動し、 [データ接続] を選択します。
-
[スペース] で、パート 1: データセットのアップロード で使用したものと同じスペースを選択します。
-
Qlik Predict コネクタを選択します。
-
パート3: もっともパフォーマンスが高いモデルの展開とアクティブ化 で作成した [ML 展開] を選択します。
-
[名前] に「MLModel」と入力します。
-
[作成] をクリックします。
パート5: 分析アプリケーションのアップロード
サンプル資料のダウンロード でダウンロードした分析アプリケーションをアップロードします。
次の手順を実行します。
-
分析 アクティビティ センターの [作成] ページに移動します。
-
[データとアップロード] で、 [アップロード] を選択します。
-
ダイアログに What-If Analysis.qvf アプリケーションをドロップします。
-
[スペース] で、パート 1: データセットのアップロード および パート4: Qlik Predict分析コネクタへの接続の作成 で使用したものと同じスペースを選択します。
-
[アップロード] をクリックします。
アプリケーションをアップロードした後、それを開き、次に What-If Analysis シートを開きます。
結果の確認
アプリケーションで What-If Analysis シートが開かれた状態になりました。
次の手順を実行します。
-
employee_number 項目で特定の従業員を 1 名選択します。Risk of Turnover KPI に値が表示されます。
-
KPI の下にあるスライダーを調整します。スライダーを調整するたびにシミュレーションが実行され、従業員の離職リスクが予測されます。
特定の従業員を選択し、変数を調整した状態での What-If 分析。

アプリケーションについて
ロードされたデータ
パート 2: 実験のトレーニング で使用されるトレーニング データセットは、アプリケーション データとして使用されます。実際のシナリオでは、必ずしもこの通りになるとは限りません。
シート変数
以下の変数が作成されており、それぞれ既定の定義は空白となっています。変数値は分析中にその場で更新されるため、定義は空白のままになっています。
| 変数名 | 対応するモデル特徴量 | 変数の既定の定義 |
|---|---|---|
| vSatisfactionLevel | satisfaction_level | - |
| vTimeSpent | time_spend_company | - |
| vNumberOfProjects | number_project | - |
| vAvgMonthlyHoursWorked | average_monthly_hours | - |
KPI と数式
KPI がシートに追加されました。次のチャートの数式が使用されます。
endpoints.ScriptEvalStr('{"RequestType":"endpoint", "endpoint":{"connectionname":":MLModel","column":"left_yes"}}',
vSatisfactionLevel as satisfaction_level,
vTimeSpent as time_spend_company,
last_evaluation,
vNumberOfProjects as number_project,
vAvgMonthlyHoursWorked as average_monthly_hours)この計算は、選択された従業員の離職リスクを表します。
以下のセクションでは、この数式がサーバーサイド拡張構文を使用して Machine Learning API を呼び出し、リアルタイム予測を行う方法について説明します。
数式の詳細
この数式は、サーバーサイド拡張 (SSE) 構文を使用して、リアルタイムで予測を生成します。
変数入力オブジェクト
シートには、各変数に対応する 4 つの変数入力コントロールが追加されています。次の構成が行われています。
-
使用する変数の選択。
-
入力タイプとして [スライダー] が選択。
-
元のデータに基づいて、合理的に発生し得る値に応じた各変数の最小および最大範囲の構成。
変数入力オブジェクトの詳細については、「変数入力コントロールの作成」を参照してください。
フィルター パネル
対象とする従業員を簡単に選択できるよう、フィルター パネルが追加されています。
元のデータを含むテーブル
What-if 分析によって値が変更される前の元のデータを簡単に確認できるよう、シートの下部にはストレートテーブルも追加されています。
![クリックしてフル サイズを表示 ML 展開における [展開の概要] の [モデル スキーマ]](../../Resources/Images/what-if-analysis-model-schema.png)