Создание прогнозов для моделей Call Center (учебник по интеллектуальному анализу данных — средний уровень)
Когда выявлены некоторые взаимосвязи между сменами, числом операторов, звонками и качеством обслуживания, можно создавать прогнозирующие запросы, которые будут использоваться в бизнес-аналитике и планировании. Вначале будут созданы прогнозы на исследовательской модели, чтобы проверить некоторые предположения. Затем с помощью модели логистической регрессии будут созданы массовые прогнозы.
На этом занятии предполагается, что пользователю уже известно, что такое прогнозирующий запрос.
Создание прогнозов с помощью модели нейронной сети
В следующем примере показано, как создать одноэлементный прогноз с помощью модели нейронной сети, созданной для исследования. Одноэлементные прогнозы служат хорошим способом проверить различные значения, чтобы оценить их воздействие на модель. В этом сценарии будет прогнозироваться уровень обслуживания для полуночной смены (без указания дня недели), если на дежурстве находятся шесть опытных операторов.
Создание одноэлементного запроса с помощью модели нейронной сети
В SQL Server Data Tools (SSDT) откройте решение, содержащее модель, которую вы хотите использовать.
В Designer интеллектуального анализа данных перейдите на вкладку Прогнозирование модели интеллектуального анализа данных.
В области Модель интеллектуального анализа данных щелкните Выбрать модель.
В диалоговом окне Выбор модели интеллектуального анализа данных отображается список структур интеллектуального анализа данных. Разверните структуру интеллектуального анализа данных, чтобы просмотреть список моделей интеллектуального анализа данных, связанных с этой структурой.
Разверните структуру интеллектуального анализа данных Call Center Default и выберите модель нейронной сети — Call Center-LR.
В меню Модель интеллектуального анализа данных выберите пункт Одноэлементный запрос.
Откроется диалоговое окно Входные данные одноэлементного запроса со столбцами в модели интеллектуального анализа данных.
В диалоговом окне Входные данные одноэлементного запроса щелкните строку Shift и выберите полночь.
Щелкните строку Операторы Lvl 2 и введите
6
.В нижней части вкладки Прогноз модели интеллектуального анализа данных щелкните первую строку в сетке.
В столбце Источник щелкните стрелку вниз и выберите Функция прогнозирования. В столбце Поле выберите PredictHistogram.
Список аргументов, которые можно использовать с этой функцией прогнозирования, автоматически отображается в поле Условия/Аргументы .
Перетащите столбец ServiceGrade из списка столбцов на панели Модель интеллектуального анализа данных в поле Условия и аргументы .
Имя столбца автоматически вставляется в качестве аргумента. В это текстовое поле можно перетащить любой прогнозируемый атрибут.
Нажмите кнопку Переключиться в представление результатов запроса в верхнем углу построителя прогнозирующих запросов.
Ожидаемые результаты содержат возможные прогнозируемые значения для каждого уровня обслуживания при заданных входных данных, а также значения несущего множества и вероятности для каждого прогноза. В любой момент можно вернуться в режим конструктора, чтобы изменить входные данные или добавить дополнительные входные данные.
Создание прогнозов с помощью модели логистической регрессии
Если уже известны атрибуты, относящиеся к бизнес-задаче, можно использовать модель логистической регрессии для прогнозирования эффекта изменения определенных независимых переменных. Логистическая регрессия — это статистический метод, который обычно используется для прогнозирования на основе изменений в независимых переменных. Например, он используется в финансовой оценке для прогнозирования поведения клиентов на основе демографических данных клиентов.
В этой задаче вы узнаете, как создать источник данных, который будет использоваться для прогнозов, и сделать прогнозы, которые помогут ответить на несколько вопросов для бизнеса.
Создание данных, используемых для массового прогноза
Существует множество способов предоставления входных данных: например, можно импортировать уровни кадров из электронной таблицы и запустить эти данные с помощью модели, чтобы спрогнозировать качество обслуживания на следующий месяц.
На этом занятии вы будете использовать конструктор представлений источников данных для создания именованного запроса. Этот именованный запрос представляет собой нестандартную инструкцию Transact-SQL, которая вычисляет для каждой смены в графике максимальное число операторов, минимальное количество принятых звонков и среднее количество возникших проблем. Затем эти данные будут присоединены к модели интеллектуального анализа данных для получения прогнозов на ближайшее время.
Создание входных данных для массового прогнозирующего запроса
В Обозреватель решений щелкните правой кнопкой мыши Представления источников данных, а затем выберите Создать представление источника данных.
В мастере представления источников данных выберите Источник данных Adventure Works DW Multidimensional 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 (конструктор) и выберите команду Сохранить , чтобы сохранить новое определение представления источника данных.
Прогнозирование метрик обслуживания для каждой смены
Теперь, когда для каждой смены создано несколько значений, эти значения будут использоваться в качестве входных данных для вашей модели логистической регрессии для получения некоторых прогнозов, необходимых для планирования.
Использование нового представления источников данных в качестве входных данных для прогнозирующего запроса
В Designer интеллектуального анализа данных перейдите на вкладку Прогнозирование модели интеллектуального анализа данных.
В области Модель интеллектуального анализа данных щелкните Выбрать модель и выберите Центр обработки вызовов — LR в списке доступных моделей.
В меню Модель интеллектуального анализа данных снимите флажок Singleton Query (Одноэлементный запрос). Появится предупреждение о том, что входные данные одноэлементного запроса будут утеряны. Нажмите кнопку ОК.
Диалоговое окно Входные данные одноэлементного запроса заменяется диалоговым окном Выбор входных таблиц .
Щелкните Выбор таблицы вариантов.
В диалоговом окне Выбор таблицы выберитеShifts в списке источников данных. В списке Имя таблицы или представления выберите Смены для центра обработки вызовов (он может быть выбран автоматически) и нажмите кнопку ОК.
Область конструктора прогнозирования модели интеллектуального анализа данных обновляется для отображения сопоставлений, созданных на основе имен и типов данных столбцов во входных данных и в модели.
Щелкните правой кнопкой мыши одну из строк соединения и выберите Изменить подключения.
В этом диалоговом окне можно точно определить, какие столбцы сопоставлены, а какие — нет. Модель интеллектуального анализа данных содержит столбцы Calls, Orders, IssuesRaised и LvlTwoOperators, которые можно сопоставить с любым статистическим выражением, созданным на основе этих столбцов в исходных данных. В этом сценарии сопоставление будет выполняться со средними значениями.
Щелкните пустую ячейку рядом с элементом LevelTwoOperators и выберите Смены для Call Center.AvgOperators.
Щелкните пустую ячейку рядом с пунктом Звонки и выберите Смены для центра обработки вызовов.AvgCalls. а затем нажмите кнопку ОК.
Создание прогнозов для каждой смены
В сетке в нижней части построителя прогнозирующих запросов щелкните пустую ячейку в разделе Источник и выберите Смены для центра обработки вызовов.
В пустой ячейке в разделе Поле выберите Shift.
Щелкните следующую пустую линию в сетке и повторите описанную выше процедуру, чтобы добавить другую строку для WageType.
Щелкните следующую пустую строку в сетке. В столбце Источник выберите Функция прогнозирования. В столбце Поле выберите Прогнозировать.
Перетащите столбец ServiceGrade из области Модель интеллектуального анализа данных вниз в сетку и в ячейку Условия/Аргумент . В поле Псевдоним введите Прогнозируемый уровень обслуживания.
Щелкните следующую пустую строку в сетке. В столбце Источник выберите Функция прогнозирования. В столбце Поле выберите PredictProbability.
Перетащите столбец ServiceGrade из области Модель интеллектуального анализа данных вниз в сетку и в ячейку Условия/Аргумент . В поле Псевдоним введите Вероятность.
Щелкните Переключиться в представление результатов запроса , чтобы просмотреть прогнозы.
В следующей таблице показан образец результатов для каждой смены.
Сдвиг | WageType | Прогнозируемый уровень обслуживания | Вероятность |
---|---|---|---|
AM | выходной | 0.165 | 0.377520666 |
midnight | выходной | 0.105 | 0.364105573 |
PM1 | выходной | 0.165 | 0.40056055 |
PM2 | выходной | 0.165 | 0.338532973 |
AM | weekday | 0.165 | 0.370847617 |
midnight | weekday | 0,08 | 0.352999173 |
PM1 | weekday | 0.165 | 0.317419177 |
PM2 | weekday | 0.105 | 0.311672027 |
Прогнозирование влияния уменьшения времени ответа на уровень обслуживания
Для каждой смены были созданы некоторые средние значения, использующиеся в качестве входных данных для модели логистической регрессии. Но учитывая то, что бизнес-задачей является поддержание показателя прекращенных вызовов в диапазоне 0,00–0,05, результаты не впечатляют.
Поэтому на основе исходной модели, которая показала сильное влияние времени ответа на уровень обслуживания, команда операторов принимает решение сделать несколько прогнозов, чтобы определить, может ли уменьшение среднего времени ответа на звонок повысить качество обслуживания. Например, что произойдет с уровнями обслуживания, если снизить время ответа на звонок до 90 процентов или даже до 80 процентов от текущего?
Легко создать представление источника данных, которое вычисляет среднее время ответа для каждой смены, а затем добавить столбцы, которые вычисляют 80 или 90 процентов среднего времени ответа. Затем представление источника данных можно использовать в качестве входных данных для модели.
Хотя конкретные шаги здесь не показаны, в следующей таблице сравниваются изменения в уровне обслуживания в случае уменьшения времени ответа до 80 и 90 процентов от текущего.
Из этих результатов можно сделать вывод, что для повышения качества обслуживания следует уменьшить время ответа для конкретных смен до 90 процентов от текущего.
Смена, ставка и день | Прогнозируемое качество обслуживания с текущим средним временем ответа. | Прогнозируемое качество обслуживания с сокращением времени отклика на 90 процентов | Прогнозируемое качество обслуживания при уменьшении времени ответа до 80 процентов от текущего. |
---|---|---|---|
Выходной до полудня | 0.165 | 0,05 | 0,05 |
Выходной после полудня 1 | 0,05 | 0,05 | 0,05 |
Полночь выходного | 0.165 | 0,05 | 0,05 |
На основе этой модели можно создать множество других прогнозирующих запросов. Например, можно спрогнозировать количество операторов, требуемое для достижения определенного уровня обслуживания или для ответа на заданное число входящих звонков. Поскольку в модель логистической регрессии можно включить несколько выходных значений, можно легко экспериментировать с различными независимыми переменными и результатами без необходимости создавать множество отдельных моделей.
Комментарии
В надстройках интеллектуального анализа данных для Excel 2007 имеются мастера логистической регрессии, которые помогают получить ответы на сложные вопросы, например определение числа операторов второго уровня, требуемого для повышения показателя обслуживания до заданного уровня для определенной смены. Надстройки интеллектуального анализа данных загружаются бесплатно и содержат мастера на базе алгоритмов нейронной сети или логистической регрессии. Дополнительные сведения см. по следующим ссылкам:
SQL Server 2005 Add-Ins интеллектуального анализа данных для Office 2007: поиск цели и анализ сценариев "Что если"
SQL Server 2008 Add-Ins интеллектуального анализа данных для Office 2007: анализ сценариев поиска целей, анализ сценариев What If и калькулятор прогнозов
Заключение
Рассмотрены создание, настройка и интерпретация моделей интеллектуального анализа данных, основанных на алгоритме нейронной сети (Майкрософт) и алгоритме логистической регрессии (Майкрософт). Эти типы моделей являются сложными и дают практически безграничное разнообразие возможностей анализа, поэтому могут оказаться трудны в освоении.
Однако эти алгоритмы позволяют выполнять итерации с множеством комбинаций факторов и автоматически выявляют сильные корреляции, обеспечивая важную статистическую поддержку, которую было бы трудно получить, исследуя данные вручную с помощью Transact-SQL и даже PowerPivot.
См. также:
Примеры запросов модели логистической регрессии
Алгоритм логистической регрессии (Майкрософт)
Microsoft Neural Network Algorithm
Примеры запросов к модели нейронной сети