Compartir a través de


Crear predicciones para los modelos de centro de llamadas (Tutorial intermedio de minería de datos)

Después de haber aprendido algo acerca de las interacciones entre los turnos, el día de la semana, el número de llamadas y pedidos, y el grado de servicio, está en disposición de crear algunas consultas de predicción que se puedan usar en el análisis y el planeamiento empresarial. Primero, creará algunas predicciones en el modelo de exploración para probar varias suposiciones. Después, creará predicciones masivas usando el modelo de regresión logística.

En esta lección se presupone que ya está familiarizado con el modo en que se usa el Generador de consultas de predicción. Para obtener información general acerca de cómo utilizar el Generador de consultas de predicción, vea Crear consultas de predicción DMX.

Crear predicciones utilizando el modelo de red neuronal

En el ejemplo siguiente se demuestra cómo crear una predicción singleton usando el modelo de red neuronal que se creó para la exploración. Las predicciones singleton constituyen un buen modo de probar valores diferentes para comprobar el efecto en el modelo. En este escenario, predecirá el grado de servicio para el turno de medianoche (no se especifica el día de la semana) si hay seis operadores experimentados de servicio.

Para crear una consulta singleton con el modelo de red neuronal

  1. En Business Intelligence Development Studio, abra la solución que contenga el modelo que desee.

  2. En el Diseñador de minería de datos, haga clic en la ficha Predicción de modelo de minería de datos.

  3. En el panel Modelo de minería de datos, haga clic en Seleccionar modelo.

  4. El cuadro de diálogo Seleccionar modelo de minería de datos representa una lista de estructuras de minería de datos. Expanda la estructura de minería de datos para ver una lista de modelos de minería de datos asociados a esa estructura.

  5. Expanda la estructura de minería de datos Call Center y seleccione el modelo de minería de datos Call Center - NN.

  6. En el menú Modelo de minería de datos, seleccione Consulta singleton.

    Aparece el cuadro de diálogo Entrada de consulta singleton con las columnas asignadas a las columnas del modelo de minería de datos.

  7. En el cuadro de diálogo Entrada de consulta singleton, haga clic en la fila correspondiente a Shift y seleccione midnight.

  8. Haga clic en la fila correspondiente a Lvl 2 Operators y escriba 6.

  9. En la mitad inferior de la ficha Predicción de modelo de minería de datos, haga clic en la primera fila de la cuadrícula.

  10. Haga clic en la columna Origen y seleccione Función de predicción. En la columna Campo, seleccione PredictHistogram.

    En el cuadro Criterios o argumento aparece automáticamente una lista de los argumentos que puede usar con esta función de predicción.

  11. Arrastre la columna ServiceGrade de la lista de columnas del panel Modelo de minería de datos y colóquela en el cuadro Criterios o argumento.

    El nombre de la columna se inserta automáticamente como argumento. Puede arrastrar cualquier columna de atributo de predicción a este cuadro de texto.

  12. Haga clic en el botón Cambiar a vista de resultado de consulta situado en la esquina superior del Generador de consultas de predicción.

Los resultados esperados contienen los posibles valores de predicción de cada grado de servicio, dadas estas entradas, junto con los valores de compatibilidad y probabilidad de cada predicción. Puede volver a la vista de diseño en cualquier momento y cambiar las entradas o agregar más.

Crear predicciones con un modelo de regresión logística

Aunque puede crear predicciones usando un modelo de red neuronal, este modelo se suele usar más para la exploración de relaciones complejas. Si ya conoce los atributos que son pertinentes para el problema empresarial, puede usar un modelo de regresión logística con el fin de predecir el efecto que tiene cambiar variables independientes concretas. La regresión logística se suele usar en escenarios como la evaluación financiera, por ejemplo para predecir el comportamiento del cliente según la demografía de clientes u otros atributos.

En esta tarea aprenderá a crear un origen de datos que se usará en las predicciones y hará que estas sirvan de ayuda para responder varias cuestiones empresariales.

Generar datos usados para la predicción masiva

En este escenario, primero creará una vista agregada del origen de datos que se pueda usar para hacer predicciones masivas y después unirá los datos a un modelo de minería de datos de una consulta de predicción. Hay muchas formas de proporcionar los datos de entrada, por ejemplo, podría importar los niveles de personal de una hoja de cálculo o proporcionar los valores mediante programación. Aquí, por simplicidad, se usará el diseñador de vistas del origen de datos para crear una consulta con nombre. Esta consulta con nombre es una instrucción de T-SQL personalizada que crea agregados para cada turno, por ejemplo, el número máximo de operadores, el número mínimo de llamadas recibidas o el número promedio de problemas generados.

Para generar los datos de entrada de una consulta de predicción masiva

  1. En el Explorador de soluciones, haga clic con el botón secundario en Vistas del origen de datos y seleccione Nueva vista del origen de datos.

  2. En el Asistente para vistas del origen de datos, seleccione AdventureWorks DW 2008 como origen de datos y haga clic en Siguiente.

  3. En la página, Seleccionar tablas y vistas, haga clic en Siguiente sin seleccionar ninguna tabla.

  4. En la página Finalización del asistente, escriba el nombre, Turnos.

    Este nombre aparecerá en el Explorador de soluciones como nombre de la vista del origen de datos.

  5. Haga clic con el botón secundario en el panel de diseño y seleccione Nueva consulta con nombre.

  6. En el cuadro de diálogo Crear consulta con nombre, en Nombre, escriba Turnos del centro de llamadas.

    Este nombre aparecerá en el diseñador de vistas del origen de datos como nombre de la consulta con nombre.

  7. Pegue la instrucción de consulta siguiente en el panel de texto SQL en la mitad inferior del cuadro de diálogo.

    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. Haga clic en Aceptar.

  9. En el panel de diseño, haga clic con el botón secundario en la tabla Shifts for Call Center y seleccione Explorar datos para obtener una vista previa de los datos devueltos por la consulta de T-SQL.

  10. Haga clic con el botón secundario en la ficha Turnos.dsv (Diseño) y haga clic en Guardar para guardar la definición de la nueva vista del origen de datos.

Predecir la métrica de servicio de cada turno

Ahora que ha generado algunos valores para cada turno, los usará como entrada del modelo de regresión logística que ha creado, con el fin de generar varias predicciones.

Para utilizar el nuevo DSV como entrada de una consulta de predicción

  1. En el Diseñador de minería de datos, haga clic en la ficha del botón Predicción de modelo de minería de datos.

  2. En el panel Modelo de minería de datos, haga clic en Seleccionar modelo y elija Call Center - LR en la lista de modelos disponibles.

  3. En el menú Modelo de minería de datos, anule la selección de la opción Consulta singleton. Una advertencia indica que se perderán las entradas de la consulta singleton. Haga clic en Aceptar.

    El cuadro de diálogo Entrada de consulta singleton se sustituye con el cuadro de diálogo Seleccionar tabla(s) de entrada.

  4. Haga clic en Seleccionar tabla de casos.

  5. En el cuadro de diálogo Seleccionar tabla, seleccione Shifts en la lista de orígenes de datos. En la lista Nombre de tabla o vista, seleccione Shifts for Call Center (puede que se seleccione automáticamente) y, a continuación, haga clic en Aceptar.

    La superficie de diseño Predicción de modelo de minería de datos se actualiza para mostrar las asignaciones que Analysis Services crea en función de los nombres y tipos de datos de las columnas de los datos de entrada y el modelo.

  6. Haga clic con el botón secundario en una de las líneas de unión y seleccione Modificar conexiones.

    En este cuadro de diálogo puede ver exactamente qué columnas se asignan y cuáles no. El modelo de minería de datos contiene las columnas Calls, Orders, IssuesRaised y LvlTwoOperators, que puede asignar a cualquiera de los agregados que creó basándose en estas columnas del origen de datos. En este escenario, asignará los promedios.

  7. Haga clic en la celda vacía situada junto a LevelTwoOperators y seleccione Shifts for Call Center.AvgOperators.

  8. Haga clic en la celda vacía situada junto a Calls y seleccione Shifts for Call Center.AvgCalls. Haga clic en Aceptar.

Para crear las predicciones de cada turno

  1. En la cuadrícula de la mitad inferior del Generador de consultas de predicción, haga clic en la celda vacía situada debajo de Origen y seleccione Shifts for Call Center.

  2. En la celda vacía situada debajo de Campo, seleccione Shift.

  3. Haga clic en la siguiente línea vacía de la cuadrícula y repita el procedimiento que se acaba de describir para agregar otra fila para WageType.

  4. Haga clic en la siguiente línea vacía de la cuadrícula. En Origen, seleccione Función de predicción. En Campo, seleccione Predict.

  5. Arrastre la columna ServiceGrade desde el panel Modelo de minería de datos hacia abajo en la cuadrícula y coloque la columna en la celda Criterios o argumento. En el campo Alias, escriba Grado de servicio predicho.

  6. Haga clic en la siguiente línea vacía de la cuadrícula. En Origen, seleccione Función de predicción. En Campo, seleccione PredictProbability.

  7. De nuevo, arrastre la columna ServiceGrade desde el panel Modelo de minería de datos hacia abajo en la cuadrícula y coloque la columna en la celda Criterios o argumento. En el cuadro Alias, escriba Probabilidad.

  8. Haga clic en Cambiar a vista de resultado de consulta para ver las predicciones.

La siguiente tabla muestra un ejemplo de los resultados de cada turno.

Mayús

WageType

Grado de servicio predicho

Probabilidad

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

Predecir el efecto del tiempo de las llamadas en el grado de servicio

Su objetivo comercial original era determinar maneras de mantener la tasa de abandono dentro del intervalo pretendido de 0,00-0,05. El modelo de red neuronal que desarrolló para la exploración indicaba que el tiempo de respuesta de las llamadas influye en gran medida en el grado de servicio. Por consiguiente, el equipo de operaciones decide ejecutar algunas predicciones para evaluar si al reducir el tiempo promedio de respuesta de las llamadas, se podría mejorar grado de servicio. Por ejemplo, ¿qué ocurriría si se recorta el tiempo de respuesta en un 90% o incluso un 80% del tiempo actual de respuesta de las llamadas?

Es fácil crear una vista del origen de datos (DSV) que calcule el tiempo de respuesta promedio de cada cambio y agregar columnas que calculen un porcentaje de ese tiempo de respuesta promedio. A continuación, puede utilizar la vista del origen de datos para el modelo.

Por ejemplo, la tabla siguiente muestra los resultados de una consulta de predicción que toma como entrada tres tiempos de respuesta diferentes: el promedio de los datos reales, un valor que representa el 90% del valor real y un valor que representa el 80% del tiempo de respuesta promedio de las llamadas.

En estos resultados, el primer conjunto de predicciones de cada columna representa el grado de servicio predicho y el segundo conjunto de números (entre paréntesis) representa la probabilidad de ese valor predicho. Con estos resultados podría concluir que la solución más rentable sería intentar reducir el tiempo de respuesta al 90%.

Mayús

WageType

Tiempo de respuesta promedio de las llamadas por turno

Reducir el tiempo de respuesta al 90 por ciento del tiempo actual

Reducir el tiempo de respuesta al 80 por ciento del tiempo actual

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)

Además de proporcionar los valores de entrada a través de una vista del origen de datos, como se muestra aquí, podría calcular las entradas mediante programación y facilitárselas al modelo. Al recorrer todos los valores posibles, puede hallar la menor reducción en el tiempo de respuesta que garantiza el nivel de servicio de destino de cada turno.

Hay varias consultas de predicción diferentes que puede crear en este modelo. Por ejemplo, podría predecir cuántos operadores se necesitan para cumplir un cierto nivel de servicio o para responder a un cierto número de llamadas entrantes. Dado que puede incluir varias salidas en un modelo de regresión logística, es fácil experimentar con variables independientes y resultados diferentes sin tener que crear varios modelos distintos.

Observaciones

Los Complementos de minería de datos para Excel 2007 ofrecen asistentes de regresión logística que facilitan la respuesta a cuestiones complejas, como cuántos operadores de nivel dos se necesitarían para mejorar el grado de servicio a un nivel determinado para un turno concreto. Los complementos de minería de datos se pueden descargar de forma gratuita e incluyen asistentes que se basan en los algoritmos de red neuronal y/o de regresión logística. Para obtener más información, vea los siguientes vínculos:

Conclusión

Ha aprendido a crear, personalizar e interpretar los modelos de minería de datos que se basan en los algoritmos de red neuronal y/o de regresión logística de Microsoft. Estos tipos de modelos son sofisticados y permiten una variedad casi infinita de análisis, y, por tanto, pueden ser complejos y difíciles de dominar. Herramientas como los gráficos basados en Excel y las tablas dinámicas que se proporcionan en el diseñador de vistas del origen de datos pueden ofrecer compatibilidad con las tendencias más marcadas que revelan los algoritmos y servir de ayuda para entender las tendencias que se detecten. Sin embargo, para apreciar completamente las características del modelo, tiene que explorar el análisis proporcionado por este y revisar los datos a fondo, yendo y viniendo entre el visor del modelo de minería de datos y otras herramientas para desarrollar completamente el conocimiento de las tendencias de los datos.

Historial de cambios

Contenido actualizado

Se han corregido los nombres del modelo de minería de datos en las predicciones y las instrucciones DDL para que coincidan con el escenario actualizado.

Se ha corregido el nombre de columna de Problemas. Se han actualizado los resultados del ejemplo para usar un modelo que incluye DayOfWeek. Se ha agregado una explicación del último escenario de predicción.