シフト間の相互作用、演算子の数、呼び出し、サービス グレードについて学習したら、ビジネス分析と計画で使用できる予測クエリを作成する準備ができました。 最初に、探索的モデルにいくつかの予測を作成して、いくつかの前提条件をテストします。 次に、ロジスティック回帰モデルを使用して一括予測を作成します。
このレッスンでは、予測クエリの概念を既に理解していることを前提としています。
ニューラル ネットワーク モデルを使用した予測の作成
次の例では、探索用に作成されたニューラル ネットワーク モデルを使用してシングルトン予測を行う方法を示します。 シングルトン予測は、さまざまな値を試してモデルの効果を確認するのに適した方法です。 このシナリオでは、6 人の経験豊富なオペレーターが勤務している場合、午前 0 時シフト (曜日指定なし) のサービス グレードを予測します。
ニューラル ネットワーク モデルを使用してシングルトン クエリを作成するには
SQL Server Data Tools (SSDT) で、使用するモデルを含むソリューションを開きます。
データ マイニング デザイナーで、[ マイニング モデルの予測 ] タブをクリックします。
[ マイニング モデル ] ウィンドウで、[ モデルの選択] をクリックします。
[ マイニング モデルの選択 ] ダイアログ ボックスには、マイニング構造の一覧が表示されます。 マイニング構造を展開して、その構造に関連付けられているマイニング モデルの一覧を表示します。
マイニング構造のコール センターの既定値を展開し、ニューラル ネットワーク モデルの [コール センター - LR] を選択します。
[ マイニング モデル ] メニューの [シングルトン クエリ] を選択します。
[Singleton Query Input]\(シングルトン クエリ入力\) ダイアログ ボックスが表示され、マイニング モデルの列にマップされた列が表示されます。
[ シングルトン クエリ入力 ] ダイアログ ボックスで、[Shift] の行をクリックし、[ 午前 0 時] を選択します。
レベル 2 演算子の行をクリックし、「
6
」と入力します。[ マイニング モデル予測 ] タブの下半分で、グリッドの最初の行をクリックします。
[ ソース ] 列で下矢印をクリックし、[ 予測関数] を選択します。 [フィールド] 列で、[PredictHistogram] を選択します。
この予測関数で使用できる引数の一覧が、[ 抽出条件/引数 ] ボックスに自動的に表示されます。
[ マイニング モデル ] ペインの列の一覧から [ 抽出条件/引数 ] ボックスに ServiceGrade 列をドラッグします。
列の名前は、引数として自動的に挿入されます。 このテキスト ボックスにドラッグする予測可能な属性列を選択できます。
予測クエリ ビルダーの右上隅にある [ クエリ結果ビューに切り替える] ボタンをクリックします。
予想される結果には、これらの入力を指定した各サービス グレードの予測可能な値と、各予測のサポート値と確率値が含まれます。 デザイン ビューにいつでも戻って入力を変更したり、入力を追加することができます。
ロジスティック回帰モデルを使用した予測の作成
ビジネス上の問題に関連する属性が既にわかっている場合は、ロジスティック回帰モデルを使用して、一部の属性に変更を加える効果を予測できます。 ロジスティック回帰は、独立変数の変更に基づいて予測を行うために一般的に使用される統計的方法です。たとえば、財務スコアリングで使用され、顧客の人口統計に基づいて顧客の行動を予測します。
このタスクでは、予測に使用されるデータ ソースを作成し、いくつかのビジネス上の質問に答えるために予測を行う方法について説明します。
一括予測に使用されるデータの生成
入力データを提供する方法は多数あります。たとえば、スプレッドシートからスタッフレベルをインポートし、そのデータをモデルを通じて実行して、翌月のサービス品質を予測することができます。
このレッスンでは、データ ソース ビュー デザイナーを使用して、名前付きクエリを作成します。 この名前付きクエリは、スケジュールのシフトごとに、スタッフのオペレーターの最大数、受信した最小呼び出し数、生成された問題の平均数を計算するカスタム Transact-SQL ステートメントです。 その後、そのデータをマイニング モデルに結合して、一連の今後の日付に関する予測を行います。
一括予測クエリの入力データを生成するには
ソリューション エクスプローラーで、[ データ ソース ビュー] を右クリックし、[ 新しいデータ ソース ビュー] を選択します。
データ ソース ビュー ウィザードで、データ ソースとして Adventure Works DW 多次元 2012 を選択し、[ 次へ] をクリックします。
[ テーブルとビューの選択 ] ページで、テーブルを選択せずに [次へ ] をクリックします。
[ ウィザードの完了 ] ページで、名前を入力
Shifts
。この名前は、データ ソース ビューの名前としてソリューション エクスプローラーに表示されます。
空のデザイン ウィンドウを右クリックし、[ 新しい名前付きクエリ] を選択します。
[ 名前付きクエリの作成 ] ダイアログ ボックスの [ 名前] に「
Shifts for Call Center
」と入力します。この名前は、名前付きクエリの名前としてのみ、データ ソース ビュー デザイナーに表示されます。
ダイアログ ボックスの下半分にある SQL テキスト ペインに、次のクエリ ステートメントを貼り付けます。
SELECT DISTINCT WageType, Shift, AVG(Orders) as AvgOrders, MIN(Orders) as MinOrders, MAX(Orders) as MaxOrders, AVG(Calls) as AvgCalls, MIN(Calls) as MinCalls, MAX(Calls) as MaxCalls, AVG(LevelTwoOperators) as AvgOperators, MIN(LevelTwoOperators) as MinOperators, MAX(LevelTwoOperators) as MaxOperators, AVG(IssuesRaised) as AvgIssues, MIN(IssuesRaised) as MinIssues, MAX(IssuesRaised) as MaxIssues FROM dbo.FactCallCenter GROUP BY Shift, WageType
デザイン ウィンドウで、テーブルの Shifts for Call Center を右クリックし、[ データの探索 ] を選択して、T-SQL クエリによって返されるデータをプレビューします。
タブ Shifts.dsv (デザイン) を右クリックし、[ 保存 ] をクリックして新しいデータ ソース ビュー定義を保存します。
各シフトのサービス メトリックの予測
シフトごとにいくつかの値が生成されたので、これらの値を構築したロジスティック回帰モデルへの入力として使用して、ビジネス計画で使用できるいくつかの予測を生成します。
新しい DSV を予測クエリへの入力として使用するには
データ マイニング デザイナーで、[ マイニング モデルの予測 ] タブをクリックします。
[ マイニング モデル ] ウィンドウで、[ モデルの選択] をクリックし、使用可能なモデルの一覧から [コール センター - LR] を選択します。
[ マイニング モデル ] メニューの [ シングルトン クエリ] オプションをオフにします。 シングルトン クエリの入力が失われることを示す警告が表示されます。 OK をクリックします。
[シングルトン クエリ入力] ダイアログ ボックスは、[入力テーブルの選択] ダイアログ ボックスに置き換えられます。
[ ケース テーブルの選択] をクリックします。
[ テーブルの選択 ] ダイアログ ボックスで、データ ソースの一覧から [Shifts] を選択します。 [テーブル/ビュー名] ボックスの一覧で、[コール センターのシフト] を選択し (自動的に選択される場合があります)、[OK] をクリックします。
マイニング モデル予測デザイン 画面が更新され、入力データおよびモデル内の列の名前とデータ型に基づいて作成されたマッピングが表示されます。
結合線のいずれかを右クリックし、[ 接続の変更] を選択します。
このダイアログ ボックスでは、マップされている列とマップされていない列を正確に確認できます。 マイニング モデルには、Calls、Orders、IssuesRaised、LvlTwoOperators の列が含まれています。この列は、ソース データ内のこれらの列に基づいて作成した集計のいずれかにマップできます。 このシナリオでは、平均に合わせてマッピングします。
LevelTwoOperatorsの横にある空のセルをクリックし、Call Center.AvgOperatorsのShiftsを選択します。
[通話] の横にある空のセルをクリックし、[コールセンター.AvgCalls のシフト] を選択します。 [OK] をクリックします。
各シフトの予測を作成するには
予測クエリ ビルダーの下半分にあるグリッドで、[ソース] の下にある空のセルをクリックし、[コール センターのシフト] を選択します。
[フィールド] の下の空のセルで、[Shift] を選択します。
グリッド内の次の空の行をクリックし、上記の手順を繰り返して、WageType に別の行を追加します。
グリッド内の次の空の行をクリックします。 [ ソース ] 列で、[ 予測関数] を選択します。 [フィールド] 列で、[予測] を選択します。
[ マイニング モデル ] ペインから列 ServiceGrade をグリッドにドラッグし、[ 抽出条件/引数 ] セルにドラッグします。 [ エイリアス ] フィールドに「 Predicted Service Grade」と入力します。
グリッド内の次の空の行をクリックします。 [ ソース ] 列で、[ 予測関数] を選択します。 [フィールド] 列で、[PredictProbability] を選択します。
[ マイニング モデル ] ペインから列 ServiceGrade をグリッドにドラッグし、[ 抽出条件/引数 ] セルにドラッグします。 [ エイリアス ] フィールドに「 確率」と入力します。
[ 切り替え] をクリックしてクエリ結果ビュー を表示し、予測を表示します。
次の表は、各シフトのサンプル結果を示しています。
シフト | 賃金タイプ | 予測されるサービス グレード | 確率 |
---|---|---|---|
午前 | 休日 | 0.165 | 0.377520666 |
真夜中 | 休日 | 0.105 | 0.364105573 |
PM1 | 休日 | 0.165 | 0.40056055 |
PM2 | 休日 | 0.165 | 0.338532973 |
午前 | ウィークデー | 0.165 | 0.370847617 |
真夜中 | ウィークデー | 0.08 | 0.352999173 |
PM1 | ウィークデー | 0.165 | 0.317419177 |
PM2 | ウィークデー | 0.105 | 0.311672027 |
応答時間の短縮がサービス グレードに及ぼす影響の予測
シフトごとにいくつかの平均値を生成し、それらの値をロジスティック回帰モデルへの入力として使用しました。 ただし、破棄率を 0.00 から 0.05 の範囲内に維持することがビジネス目標であることを考えると、結果は奨励されません。
そのため、応答時間がサービス グレードに大きく影響した元のモデルに基づいて、運用チームは、通話への応答の平均時間を短縮することでサービス品質が向上するかどうかを評価するために、いくつかの予測を実行することにしました。 たとえば、通話応答時間を現在の通話応答時間の 90% または 80% に短縮した場合、サービス グレードの値はどうなるでしょうか。
各シフトの平均応答時間を計算するデータ ソース ビュー (DSV) を簡単に作成し、平均応答時間の 80% または 90% を計算する列を追加できます。 その後、モデルへの入力として DSV を使用できます。
ここでは正確な手順を示していませんが、次の表は、応答時間を 80% または現在の応答時間の 90% に短縮した場合のサービス グレードへの影響を比較しています。
これらの結果から、目標シフトでは、サービス品質を向上させるために、応答時間を現在のレートの 90% に短縮する必要があると結論付けることができます。
シフト、賃金、日 | 現在の平均応答時間で予測されるサービス品質 | 応答時間が 90% 削減された予測されたサービス品質 | 応答時間が 80% 短縮された場合に予測されるサービス品質 |
---|---|---|---|
休日の午前 | 0.165 | 0.05 | 0.05 |
休日 PM1 | 0.05 | 0.05 | 0.05 |
休日の真夜中 | 0.165 | 0.05 | 0.05 |
このモデルでは、他にもさまざまな予測クエリを作成できます。 たとえば、特定のサービス レベルを満たすか、特定の数の着信呼び出しに応答するために必要なオペレーターの数を予測できます。 ロジスティック回帰モデルには複数の出力を含めることができるため、多数の個別のモデルを作成しなくても、さまざまな独立した変数と結果を簡単に実験できます。
注釈
Excel 2007 のデータ マイニング Add-Ins には、特定のシフトのターゲット レベルにサービス グレードを向上させるために必要なレベル 2 演算子の数など、複雑な質問に簡単に回答できるロジスティック回帰ウィザードが用意されています。 データ マイニング アドインは無料でダウンロードでき、ニューラル ネットワークまたはロジスティック回帰アルゴリズムに基づくウィザードが含まれています。 詳細については、次のリンクを参照してください。
SQL Server 2005 Data Mining Add-Ins for Office 2007: ゴール シークと What If シナリオ分析
SQL Server 2008 Data Mining Add-Ins for Office 2007: ゴール シーク シナリオ分析、What If シナリオ分析、予測計算ツール
結論
Microsoft ニューラル ネットワーク アルゴリズムと Microsoft ロジスティック回帰アルゴリズムに基づくマイニング モデルを作成、カスタマイズ、解釈する方法について学習しました。 これらのモデルの種類は高度であり、分析でほぼ無限の多様性を可能にするため、複雑で習得が困難な場合があります。
ただし、これらのアルゴリズムでは、多くの要因の組み合わせを反復処理し、最も強い相関関係を自動的に特定できるため、Transact-SQL や PowerPivot を使用したデータの手動探索では検出が非常に困難な分析情報を統計的にサポートできます。
こちらもご覧ください
ロジスティック回帰モデルクエリの例
Microsoft ロジスティック回帰アルゴリズム
Microsoft ニューラル ネットワーク アルゴリズム
ニューラル ネットワーク モデルクエリの例