Создание прогнозов для моделей Call Center (учебник по интеллектуальному анализу данных — средний уровень)
Теперь, когда вы в некоторой степени выяснили для себя взаимосвязи между сменами, днями недели, количеством операторов, вызовов, заказов и качеством обслуживания, можно создавать прогнозирующие запросы, которые будут использоваться в бизнес-аналитике и планировании. Вначале будут созданы прогнозы на исследовательской модели, чтобы проверить некоторые предположения. Затем будут созданы массовые прогнозы с помощью модели логистической регрессии.
На этом занятии предполагается, что пользователь уже знаком с построителем прогнозирующих запросов. Общие сведения об использовании построителя прогнозирующих запросов см. в разделе Создание прогнозирующих запросов расширений интеллектуального анализа данных.
Создание прогнозов с помощью модели нейронной сети
В следующем примере показано, как создать одноэлементный прогноз с помощью модели нейронной сети, созданной для исследования. Одноэлементные прогнозы служат хорошим способом проверить различные значения, чтобы оценить их воздействие на модель. В этом сценарии будет прогнозироваться уровень обслуживания для полуночной смены (без указания дня недели), если на дежурстве находятся шесть опытных операторов.
Создание одноэлементного запроса с помощью модели нейронной сети
В среде Business Intelligence Development Studio откройте решение, которое содержит нужную модель.
В конструкторе интеллектуального анализа данных перейдите на вкладку Прогноз модели интеллектуального анализа данных.
В области Модель интеллектуального анализа данных щелкните Выбор модели.
В диалоговом окне Выбор модели интеллектуального анализа данных представлен список структур интеллектуального анализа данных. Разверните структуру интеллектуального анализа данных, чтобы просмотреть список моделей интеллектуального анализа данных, связанных с этой структурой.
Разверните структуру интеллектуального анализа данных Call Center и выберите модель интеллектуального анализа данных Call Center - NN.
В меню Модель интеллектуального анализа данных выберите пункт Одноэлементный запрос.
Откроется диалоговое окно Ввод одноэлементного запроса, в котором столбцы сопоставлены со столбцами в модели интеллектуального анализа данных.
В диалоговом окне Ввод одноэлементного запроса щелкните строку, соответствующую Shift, и выберите midnight.
Щелкните строку, соответствующую Lvl 2 Operators, и введите 6.
В нижней половине вкладки Прогноз модели интеллектуального анализа данных щелкните первую строку в сетке.
Щелкните столбец Источник и выберите пункт Прогнозирующая функция. В столбце Поле выберите PredictHistogram.
В поле Критерий или аргументы автоматически появится список аргументов, которые можно использовать с этой прогнозирующей функцией.
Перетащите столбец ServiceGrade из списка столбцов в области Модель интеллектуального анализа данных в поле Критерии/аргументы.
Имя столбца автоматически вставляется в качестве аргумента. В это текстовое поле можно перетащить любой прогнозируемый атрибут.
Нажмите кнопку Переключиться в представление результатов запроса в верхнем углу построителя прогнозирующих запросов.
Ожидаемые результаты содержат возможные прогнозируемые значения для каждого уровня обслуживания при заданных входных данных, а также значения несущего множества и вероятности для каждого прогноза. В любой момент можно вернуться в режим конструктора, чтобы изменить входные данные или добавить дополнительные входные данные.
Создание прогнозов с помощью модели логистической регрессии
Прогнозы можно создавать с помощью модели нейронной сети, однако она чаще используется для исследования сложных связей. Если уже известны атрибуты, относящиеся к бизнес-задаче, можно использовать модель логистической регрессии для прогнозирования эффекта изменения определенных независимых переменных. Логистическая регрессия широко используется в сценариях финансовой оценки (например, чтобы прогнозировать поведение покупателей на основании их демографических данных или других атрибутов).
В этой задаче будет показано, как создать источник данных, который будет использоваться для прогнозов, а затем — как создавать прогнозы для ответов на несколько бизнес-вопросов.
Создание данных, используемых для массового прогноза
Для этого сценария сначала создается агрегированное представление исходных данных, которое можно использовать для создания массовых прогнозов, а затем эти данные соединяются с моделью интеллектуального анализа данных в прогнозирующем запросе. Существует множество способов предоставления входных данных. Например, можно импортировать кадровые показатели из электронной таблицы или передать эти значения программным способом. Чтобы создать именованный запрос, в целях упрощения здесь будет использоваться конструктор представлений источников данных. Этот именованный запрос является нестандартной инструкцией T-SQL, которая создает статистические выражения для каждой смены, например максимальное число операторов, минимальное количество принятых звонков или среднее количество созданных проблем.
Создание входных данных для массового прогнозирующего запроса
В обозревателе решений щелкните правой кнопкой мыши элемент Представления источников данных и выберите команду Создать представление источника данных.
В мастере представлений источников данных выберите в качестве источника данных базу AdventureWorks DW 2008 и нажмите кнопку Далее.
На странице Выбор таблиц и представлений нажмите кнопку Далее, не выбирая таблиц.
На странице Завершение работы мастера введите имя 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 (конструктор), а затем нажмите кнопку Сохранить, чтобы сохранить новое определение представления источника данных.
Прогнозирование метрик обслуживания для каждой смены
После создания нескольких значений для каждой смены, эти значения будут использоваться в качестве входных данных построенной модели логистической регрессии для создания нескольких прогнозов.
Использование нового представления источника данных в качестве входных данных для прогнозирующего запроса
В конструкторе интеллектуального анализа данных перейдите на вкладку Прогноз модели интеллектуального анализа данных.
В области Модель интеллектуального анализа данных щелкните Выбрать модель и выберите элемент Call Center - LR из списка доступных моделей.
В меню Модель интеллектуального анализа данных снимите флажок Одноэлементный запрос. Появится предупреждение о том, что входные данные одноэлементного запроса будут утеряны. Нажмите кнопку ОК.
Вместо диалогового окна Ввод одноэлементного запроса откроется окно Выбор входных таблиц.
Щелкните Выбор таблицы вариантов.
В диалоговом окне Выбор таблицы выберите ShiftsShifts из списка источников данных. В списке Имя таблицы или представления выберите элемент Shifts for Call Center (он может быть выбран автоматически), затем нажмите кнопку ОК.
Область конструктора Прогноз модели интеллектуального анализа данных обновится, отобразив сопоставления, созданные службами Analysis Services на основании имен и типов данных столбцов во входных данных и модели.
Щелкните правой кнопкой мыши одну из линий соединения и выберите команду Изменить соединения.
В этом диалоговом окне можно точно определить, какие столбцы сопоставлены, а какие — нет. Модель интеллектуального анализа данных содержит столбцы Calls, Orders, IssuesRaised и LvlTwoOperators, которые можно сопоставить с любыми статистическими функциями, созданными на основе этих столбцов в источнике данных. Для этого сценария сопоставление будет выполняться со средними значениями.
Щелкните пустую ячейку рядом с LevelTwoOperators и выберите Shifts for Call Center.AvgOperators.
Щелкните пустую ячейку рядом с Calls и выберите Shifts for Call Center.AvgCalls. Нажмите кнопку ОК.
Создание прогнозов для каждой смены
В сетке в нижней половине окна Построитель прогнозирующих запросов щелкните пустую ячейку под значением Источник и выберите Shifts for Call Center.
В пустой ячейке под значением Поле выберите Shift.
Щелкните следующую пустую линию в сетке и повторите описанную процедуру, чтобы добавить другую строку для WageType.
Щелкните следующую пустую строку в сетке. В поле Источник выберите пункт Прогнозирующая функция. В поле Поле выберите Прогноз.
Перетащите столбец ServiceGrade из области Модель интеллектуального анализа данных в ячейку сетки Критерий/аргумент. В поле Псевдоним введите Прогнозируемый уровень обслуживания.
Щелкните следующую пустую строку в сетке. В поле Источник выберите пункт Прогнозирующая функция. В поле Поле выберите PredictProbability.
Снова перетащите столбец ServiceGrade из области Модель интеллектуального анализа данных в ячейку сетки Критерий/аргумент. В поле Псевдоним введите Вероятность.
Выберите команду Переключиться в режим просмотра результата запроса, чтобы просмотреть прогнозы.
В следующей таблице показан пример результатов для каждой смены.
Shift |
WageType |
Прогнозируемый уровень обслуживания |
Вероятность |
---|---|---|---|
AM |
holiday |
0.109136059911771 |
0.988372093023256 |
midnight |
holiday |
0.102997190221556 |
0.988372093023256 |
PM1 |
holiday |
0.118717846218269 |
0.988372093023256 |
PM2 |
holiday |
0.129285352721855 |
0.988372093023256 |
AM |
weekday |
0.0818812064002576 |
0.988372093023256 |
midnight |
weekday |
0.0708461247735892 |
0.988372093023256 |
PM1 |
weekday |
0.0902827481812303 |
0.988372093023256 |
PM2 |
weekday |
0.101794450305237 |
0.988372093023256 |
Прогнозирование влияния времени звонка на уровень обслуживания
Исходной бизнес-задачей было определение способов для поддержания показателя прекращенных вызовов в целевом диапазоне 0,00–0,05. Модель нейронной сети, разработанная для изучения, продемонстрировала, что время ответа на вызов сильно влияет на уровень обслуживания. Поэтому отдел эксплуатации принимает решение составить несколько прогнозов, чтобы оценить, как снижение среднего времени ответа на вызов может повысить уровень обслуживания. Например, что произойдет, если снизить время ответа на звонок до 90 % или даже до 80 % от текущего значения?
Легко создать представление источника данных, которое вычисляет среднее время ответа для каждой смены, и добавить столбцы, которые вычисляют процентные составляющие этого среднего времени. Затем представление источника данных можно использовать в качестве входных данных для модели.
Например, в следующей таблице показаны результаты прогнозирующего запроса, получающего на входе три различных времени ответа: среднее значение фактических данных, значение, представляющее 90 % фактического значения, и значение, представляющее 80 % среднего времени отклика на вызов.
В этих результатах первый набор прогнозов в каждом столбце представляет прогнозируемый уровень обслуживания, а второй набор чисел (в скобках) представляет вероятность этого прогнозируемого значения. По этим результатам можно заключить, что наиболее экономичным решением будет снижение времени ответа до 90 % от исходного.
Shift |
WageType |
Среднее время ответа на вызов для смены |
Сокращение времени ответа до 90 % от текущего |
Сокращение времени ответа до 80 % от текущего |
---|---|---|---|---|
AM |
holiday |
0.165 (0.366079388) |
0.05 (0.457470875) |
0.05 (0.610514425) |
AM |
weekday |
0.05 (0.341218694) |
0.05 (0.475767776) |
0.05 (0.60083244) |
midnight |
holiday |
0.165 (0.337801273) |
0.05 (0.413774655) |
0.05 (0.545764101) |
midnight |
weekday |
0.05 (0.378241537) |
0.05 (0.471615415) |
0.05 (0.545614362) |
PM1 |
holiday |
0.165 (0.457871243) |
0.165 (0.376892925) |
0.05 (0.359440286) |
PM1 |
weekday |
0.08 (0.299182047) |
0.08 (0.363761441) |
0.08 (0.40686473) |
PM2 |
holiday |
0.105 (0.325921785) |
0.05 (0.392121793) |
0.05 (0.521558758) |
PM2 |
weekday |
0.105 (0.436051591) |
0.105 (0.342589832) |
0.05 (Y) |
Помимо передачи входных значений через представление источника данных, как показано здесь, можно вычислять входные данные программно и передавать их в модель. Проходя по всем возможным значениям, можно найти наименьшую величину, на которую нужно снизить время ответа, чтобы гарантированно достичь целевого уровня обслуживания для каждой смены.
На основе этой модели можно создать множество других прогнозирующих запросов. Например, можно спрогнозировать количество операторов, которое необходимо для достижения определенного уровня обслуживания или для ответа на заданное число входящих звонков. Поскольку в модель логистической регрессии можно включить несколько выходных значений, можно легко экспериментировать с различными независимыми переменными и результатами без необходимости создавать множество отдельных моделей.
Примечания
Надстройки интеллектуального анализа данных для Excel 2007 предоставляют мастера логистической регрессии, которые помогают получить ответы на сложные вопросы, например определение числа операторов второго уровня, которое необходимо для повышения показателя обслуживания до заданного уровня для определенной смены. Надстройки интеллектуального анализа данных загружаются бесплатно и содержат мастера, которые основаны на алгоритмах нейронной сети и логистической регрессии. Дополнительные сведения см. в следующих разделах.
Надстройки интеллектуального анализа данных SQL Server 2005 для Office 2007: Анализ сценария поиска решения и анализ гипотетических вариантов
Надстройки интеллектуального анализа данных SQL Server 2008 для Office 2007: Анализ сценария поиска решения, анализ гипотетических вариантов и калькулятор прогнозов
Заключение
Рассмотрены создание, настройка и интерпретация моделей интеллектуального анализа данных, основанных на алгоритме нейронной сети (Майкрософт) и алгоритме логистической регрессии (Майкрософт). Эти типы моделей являются сложными и дают практически безграничное разнообразие возможностей анализа, поэтому могут оказаться трудны в освоении. Различные средства, такие как диаграммы на основе Excel и сводные таблицы, предоставляемые в конструкторе представлений источников данных, могут обеспечить поддержку для самых выраженных трендов, обнаруженных алгоритмами, и помогут понять смысл обнаруженных трендов. Однако, чтобы полностью задействовать возможности модели, может понадобиться просмотреть аналитические данные, предоставляемые моделью, тщательно и глубоко изучить данные, неоднократно переключаясь между пользовательским средством просмотра модели интеллектуального анализа данных и другими средствами. Это позволит создать полное представление о трендах в данных.
См. также
Основные понятия
Журнал изменений
Обновленное содержимое |
---|
Имена моделей интеллектуального анализа данных в прогнозах и инструкциях DDL исправлены в соответствии с обновленным сценарием. |
Исправлено имя столбца Issues. Образец результатов изменен для использования модели, включающей столбец DayOfWeek. Добавлено пояснение для последнего сценария прогнозирования. |