共用方式為


建立用於話務中心模型的預測 (中繼資料採礦教學課程)

現在您已經了解排班、星期幾、電話和訂單數,以及服務等級之間的互動關係,接著就可以準備建立一些用來進行商務分析和規劃的預測查詢。您將先針對探勘模型建立一些預測,以測試一些假設。接著您將使用羅吉斯迴歸模型建立大量預測。

本課程假設您已熟悉如何使用預測查詢產生器。如需有關如何使用「預測查詢產生器」的一般資訊,請參閱<建立 DMX 預測查詢>。

使用類神經網路模型建立預測

下列範例示範如何使用為了探索資料所建立的類神經網路模型進行單一預測。單一預測可以讓您嘗試不同的值,是觀察在模型中會產生何種效果的好方法。在這個案例中,您將預測如果有六個經驗豐富的操作員值班,大夜班 (未指定星期幾) 的服務等級將是哪個等級。

若要使用類神經網路模型建立單一查詢

  1. 在 Business Intelligence Development Studio 中,開啟包含您要使用之模型的方案。

  2. 按一下資料採礦設計師中的 [採礦模型預測] 索引標籤。

  3. [採礦模型] 窗格中,按一下 [選取模型]

  4. [選取採礦模型] 對話方塊會顯示採礦結構的清單。展開採礦結構,檢視與該結構相關聯之採礦模型的清單。

  5. 展開採礦結構 Call Center,然後選取採礦模型 Call Center - NN。

  6. [採礦模型] 功能表中選取 [單一查詢]

    [單一查詢輸入] 對話方塊隨即顯示,其中的資料行會對應到採礦模型中的資料行。

  7. [單一查詢輸入] 對話方塊中,按一下 Shift 的資料列,然後選取 midnight。

  8. 按一下 Lvl 2 Operators 的資料列,然後輸入 6。

  9. [採礦模型預測] 索引標籤的下半部,按一下方格中的第一個資料列。

  10. 按一下 [來源] 資料行,然後選取 [預測函數]。在 [欄位] 資料行中,選取 [PredictHistogram]

    您可以搭配此預測函數使用的引數清單會自動出現在 [準則/引數] 方塊中。

  11. 將 ServiceGrade 資料行從 [採礦模型] 窗格的資料行清單拖曳到 [準則/引數] 方塊中。

    資料行的名稱會自動插入做為引數。您可以將任何可預測的屬性資料行拖曳至此文字方塊中。

  12. 按一下預測查詢產生器上方角落的 [切換到查詢結果檢視] 按鈕。

結果應該會包含每個服務等級在這些輸入條件下可能產生的預測值,以及每個預測的支援和機率。您可以隨時返回設計檢視並變更輸入,或加入更多輸入。

使用羅吉斯迴歸模型建立預測

雖然您可以使用類神經網路模型建立預測,但是類神經網路更常用於探索複雜的關聯性。如果您已經知道與商務問題相關的屬性,則可以使用羅吉斯迴歸模型,預測變更特定獨立變數所造成的效果。羅吉斯迴歸通常用於如財務計分等狀況,例如,根據客戶人口統計或其他屬性預測客戶行為。

在此工作中,您將學習如何建立用於預測的資料來源,然後進行預測以協助回答數個商務問題。

產生用於大量預測的資料

在這個案例中,您將先建立可用於進行大量預測之來源資料的彙總檢視,然後將該資料加入到預測查詢的採礦模型中。您可以利用許多方式提供輸入資料:例如,您可以從試算表匯入人員雇用層級,或以程式設計的方式提供值。在此,為了簡單起見,您將使用資料來源檢視設計師來建立具名查詢。這個具名查詢是一個自訂 T-SQL 陳述式,可建立每個排班的彙總,例如,操作員人數上限、接聽電話下限,或所產生的平均問題數目。

若要產生用於大量預測查詢的輸入資料

  1. 在 [方案總管] 中,以滑鼠右鍵按一下 [資料來源檢視],再選取 [新增資料來源檢視]

  2. 在 [資料來源檢視精靈] 中,選取 AdventureWorks DW 2008 做為資料來源,然後按 [下一步]

  3. [選取資料表和檢視] 頁面上,按 [下一步],但不選取任何資料表。

  4. [正在完成精靈] 頁面上,輸入名稱排班。

    這個名稱會顯示在 [方案總管] 中,做為資料來源檢視的名稱。

  5. 以滑鼠右鍵按一下空的設計窗格,然後選取 [新增具名查詢]

  6. [建立具名查詢] 對話方塊的 [名稱] 中,輸入話務中心的排班。

    這個名稱會顯示在 [資料來源檢視設計師] 中,但只會做為具名查詢的名稱。

  7. 將下列查詢陳述式貼到對話方塊下半部的 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
    
  8. 按一下 [確定]

  9. 在設計窗格中,以滑鼠右鍵按一下資料表 Shifts for Call Center,然後選取 [瀏覽資料] 來預覽 T-SQL 查詢所傳回的資料。

  10. 以滑鼠右鍵按一下 [Shifts.dsv (Design)] 索引標籤,然後按一下 [儲存] 來儲存新的資料來源檢視定義。

預測每個排班的服務標準

現在您已經為每個排班產生一些值,您將使用這些值做為您所建立之羅吉斯迴歸模型的輸入,以產生多個預測。

若要使用新的 DSV 做為預測查詢的輸入

  1. 按一下資料採礦設計師中的 [採礦模型預測] 按鈕索引標籤。

  2. [採礦模型] 窗格中,按一下 [選取模型],然後從可用模型的清單中選擇 Call Center - LR。

  3. [採礦模型] 功能表取消選取 [單一查詢] 選項。此時會出現一個警告,告知您將會失去單一查詢輸入。按一下 [確定]

    [選取輸入資料表] 對話方塊便會取代 [單一查詢輸入] 對話方塊。

  4. 按一下 [選取案例資料表]

  5. [選取資料表] 對話方塊中,從資料來源清單選取 Shifts。在 [資料表/檢視表名稱] 清單中,選取 Shifts for Call Center (可能會自動選取),然後按一下 [確定]

    [採礦模型預測] 設計介面經過更新,以顯示 Analysis Services 根據輸入資料和模型中之資料行名稱與資料類型所建立的對應。

  6. 以滑鼠右鍵按一下其中一條聯結線,然後選取 [修改連接]

    在此對話方塊中,您可以清楚地看到對應的資料行以及沒有對應的資料行。採礦模型包含 Calls、Orders、IssuesRaised,以及 LvlTwoOperators 的資料行,您可以將這些資料行對應到您在來源資料中根據這些資料行所建立的任何彙總。在這個案例中,您將對應到平均值。

  7. 按一下 LevelTwoOperators 旁邊的空資料格,然後選取 [Shifts for Call Center.AvgOperators]

  8. 按一下 Calls 旁邊的空資料格,然後選取 [Shifts for Call Center.AvgCalls]。按一下 [確定]

若要建立每個排班的預測

  1. [預測查詢產生器] 下半部的方格中,按一下 [來源] 下的空資料格,然後選取 Shifts for Call Center。

  2. [欄位] 下的空資料格中,選取 Shift。

  3. 按一下方格中的下一個空行,然後重複剛才所描述的程序,為 WageType 加入另一個資料列。

  4. 在方格中,按下一個空行。在 [來源] 中,選取 [預測函數]。在 [欄位] 中,選取 [預測]

  5. 將 ServiceGrade 資料行從 [採礦模型] 窗格向下拖曳到方格中,然後將資料行放到 [準則/引數] 資料格中。在 [別名] 欄位中,輸入預測的服務等級。

  6. 在方格中,按下一個空行。在 [來源] 中,選取 [預測函數]。在 [欄位] 中選取 [PredictProbability]

  7. 再次將 ServiceGrade 資料行從 [採礦模型] 窗格向下拖曳到方格中,然後將此資料行放到 [準則/引數] 資料格中。在 [別名] 欄位中,輸入機率。

  8. 按一下 [切換到查詢結果檢視] 來檢視預測。

下表顯示每個排班的結果範例。

排班

薪資類型

預測的服務等級

機率

AM

假日

0.109136059911771

0.988372093023256

midnight

假日

0.102997190221556

0.988372093023256

PM1

假日

0.118717846218269

0.988372093023256

PM2

假日

0.129285352721855

0.988372093023256

AM

工作日

0.0818812064002576

0.988372093023256

midnight

工作日

0.0708461247735892

0.988372093023256

PM1

工作日

0.0902827481812303

0.988372093023256

PM2

工作日

0.101794450305237

0.988372093023256

預測通話時間對於服務等級的影響

您的原始商務目標是要判斷將放棄率保持在 0.00-0.05 的目標範圍內的方式。您為了探索所開發的類神經網路模型指出,來電回應時間對於服務等級有極大的影響力。因此,操作小組決定執行某些預測來評估降低平均來電回應時間是否可能會提高服務等級。例如,如果您將來電回應時間縮短為目前來電回應時間的 90% 甚至 80%,會發生什麼情況?

建立計算每個排班之平均回應時間的資料來源檢視 (DSV),並新增資料行來計算該平均回應時間的某個百分比是相當容易的工作。接著,您就可以使用 DSV 做為模型的輸入。

例如,下表會顯示預測查詢的結果,此查詢會使用三個不同的回應時間當做輸入:實際資料的平均值、代表實際值之 90% 的值,以及代表平均來電回應時間之 80% 的值。

在這些結果中,每一個資料行中的第一組預測代表預測的服務等級,而第二組數字 (括號中) 則代表該預測值的機率。您可以從這些結果得出結論,最具成本效益的方案會嘗試將回應時間減少為 90%。

排班

薪資類型

每一排班的平均來電回應時間

將回應時間降低為目前時間的 90%

將回應時間降低為目前時間的 80%

AM

假日

0.165 (0.366079388)

0.05 (0.457470875)

0.05 (0.610514425)

AM

工作日

0.05 (0.341218694)

0.05 (0.475767776)

0.05 (0.60083244)

midnight

假日

0.165 (0.337801273)

0.05 (0.413774655)

0.05 (0.545764101)

midnight

工作日

0.05 (0.378241537)

0.05 (0.471615415)

0.05 (0.545614362)

PM1

假日

0.165 (0.457871243)

0.165 (0.376892925)

0.05 (0.359440286)

PM1

工作日

0.08 (0.299182047)

0.08 (0.363761441)

0.08 (0.40686473)

PM2

假日

0.105 (0.325921785)

0.05 (0.392121793)

0.05 (0.521558758)

PM2

工作日

0.105 (0.436051591)

0.105 (0.342589832)

0.05 (Y)

除了透過資料來源檢視提供輸入值 (如此處所示) 之外,您還可以利用程式設計的方式計算輸入,並將這些輸入提供給模型。您可以透過反覆運算所有可能的值,找出最少的回應時間縮減量,且同時確保每個排班的目標服務等級。

您還可以在此模型上建立各種其他的預測查詢。例如,您可以預測需要多少位操作員,才能達到特定的服務等級或者回應特定的來電數目。因為在羅吉斯迴歸模型中可以加入多個輸出,所以您可以輕鬆地試驗不同的獨立變數與結果,而不需要建立許多個別的模型。

備註

適用於 Excel 2007 的資料採礦增益集提供羅吉斯迴歸精靈,可讓您輕鬆回應複雜的問題,例如,需要多少位二級操作員,才能將某個排班的服務等級提升至目標等級。您可以免費下載資料採礦增益集,其中包含類神經網路和/或羅吉斯迴歸演算法的精靈。如需詳細資訊,請參閱下列連結:

結論

您已經學到如何建立、自訂與解譯以 Microsoft 類神經網路演算法和 Microsoft 羅吉斯迴歸演算法為基礎的採礦模型。這些模型類型相當複雜,在分析方式上也可以有無限的變化,因此可能相當複雜且難以上手。資料來源檢視設計師中提供的工具,例如 Excel 型圖表和樞紐資料表,都可以支援演算法所偵測到的強力趨勢,並協助您了解所探索到的趨勢。不過,若要充分運用從模型中獲得的資訊,您可能需要探索模型所提供的分析,並且深入檢閱資料,在自訂採礦模型檢視器和其他工具之間來回探索,徹底地了解資料中的趨勢。

變更記錄

更新的內容

已更正預測和 DDL 陳述式中的採礦模型名稱,使其符合更新的案例。

已更正 Issues 的資料行名稱。已更新範例結果,這些結果會使用包含 DayOfWeek 的模型。已新增最後預測狀況的說明。