Compartir a través de


Ejemplos de consultas del modelo de red neuronal

Al crear una consulta en un modelo de minería de datos, puede crear una consulta de contenido, que proporciona detalles sobre los patrones detectados en el análisis o una consulta de predicción, que usa los patrones del modelo para realizar predicciones para nuevos datos. Por ejemplo, una consulta de contenido para un modelo de red neuronal podría recuperar metadatos del modelo, como el número de capas ocultas. Como alternativa, una consulta de predicción podría sugerir clasificaciones basadas en una entrada y, opcionalmente, proporcionar probabilidades para cada clasificación.

En esta sección se explica cómo crear consultas para modelos basados en el algoritmo de red neuronal de Microsoft.

Consultas de contenido

Obtención de metadatos del modelo mediante DMX

Recuperación de metadatos de modelo desde el conjunto de filas de esquema

Recuperación de los atributos de entrada para el modelo

Recuperar pesos de la capa oculta

Consultas de predicción

Creación de una predicción única

Búsqueda de información sobre un modelo de red neuronal

Todos los modelos de minería de datos exponen el contenido aprendido por el algoritmo según un esquema estandarizado, el conjunto de filas del esquema del modelo de minería de datos. Esta información proporciona detalles sobre el modelo e incluye los metadatos básicos, las estructuras detectadas en el análisis y los parámetros que se usan al procesar. Puede crear consultas en el contenido del modelo mediante instrucciones de extensión de minería de datos (DMX).

Consulta de ejemplo 1: Obtención de metadatos del modelo mediante DMX

La consulta siguiente devuelve algunos metadatos básicos sobre un modelo que se creó mediante el algoritmo de red neuronal de Microsoft. En un modelo de red neuronal, el nodo primario del modelo contiene solo el nombre del modelo, el nombre de la base de datos donde se almacena el modelo y el número de nodos secundarios. Sin embargo, el nodo de estadísticas marginales (NODE_TYPE = 24) proporciona tanto estos metadatos básicos como algunas estadísticas derivadas sobre las columnas de entrada usadas en el modelo.

La consulta de ejemplo siguiente se basa en el modelo de minería de datos que se crea en el Tutorial intermedio de minería de datos, denominado Call Center Default NN. El modelo usa datos de un centro de llamadas para explorar posibles correlaciones entre el personal y el número de llamadas, pedidos y problemas. La instrucción DMX recupera datos del nodo de estadísticas marginales del modelo de red neuronal. La consulta incluye la palabra clave FLATTENED, ya que las estadísticas de atributos de entrada de interés se almacenan en una tabla anidada, NODE_DISTRIBUTION. Sin embargo, si el proveedor de consultas admite conjuntos de filas jerárquicos, no es necesario usar la palabra clave FLATTENED.

SELECT FLATTENED MODEL_CATALOG, MODEL_NAME,   
(    SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE,  
     [SUPPORT], [PROBABILITY], VALUETYPE   
     FROM NODE_DISTRIBUTION  
) AS t  
FROM [Call Center Default NN].CONTENT  
WHERE NODE_TYPE = 24  

Nota:

Debe incluir entre corchetes el nombre de las columnas de tabla anidadas [SUPPORT] y [PROBABILITY] para distinguirlas de las palabras clave reservadas del mismo nombre.

Resultados de ejemplo:

CATÁLOGO_DE_MODELOS MODEL_NAME t.ATTRIBUTE_NAME t.ATTRIBUTE_VALUE t.SOPORTE t.PROBABILIDAD t.TIPODEVALOR
Adventure Works DW Multidimensional 2012 Centro de llamadas NN Promedio de tiempo por problema Desaparecido 0 0 1
Adventure Works DW Multidimensional 2012 Centro de llamadas NN Promedio de tiempo por problema < 64.7094100096 11 0.407407407 5

Para obtener una definición de lo que significan las columnas del conjunto de filas de esquema en el contexto de un modelo de red neuronal, vea Contenido del modelo de minería de datos para modelos de red neuronal (Analysis Services - Minería de datos).

Consulta de ejemplo 2: Recuperación de metadatos del modelo del conjunto de filas de esquema

Puede encontrar la misma información que se devuelve en una consulta de contenido DMX consultando el conjunto de filas del esquema de minería de datos. Sin embargo, el conjunto de filas de esquema proporciona algunas columnas adicionales. La consulta de ejemplo siguiente devuelve la fecha en que se creó el modelo, la fecha en que se modificó y la fecha en que se procesó por última vez el modelo. La consulta también devuelve las columnas de predicción, que no están fácilmente disponibles en el contenido del modelo y los parámetros que se usaron para compilar el modelo. Esta información puede ser útil para documentar el modelo.

SELECT MODEL_NAME, DATE_CREATED, LAST_PROCESSED, PREDICTION_ENTITY, MINING_PARAMETERS   
from $system.DMSCHEMA_MINING_MODELS  
WHERE MODEL_NAME = 'Call Center Default NN'  

Resultados de ejemplo:

MODEL_NAME NN predeterminado del centro de llamadas
Fecha de creación 10/10/2008 5:07:38 p. m.
ÚLTIMO_PROCESADO 10/10/2008 5:24:02 p. m.
PREDICTION_ENTITY Promedio de tiempo por problema,

Grado de servicio,

Número de pedidos
PARÁMETROS_DE_MINERÍA HOLDOUT_PERCENTAGE=30, HOLDOUT_SEED=0,

MAXIMUM_INPUT_ATTRIBUTES=255, MAXIMUM_OUTPUT_ATTRIBUTES=255

MAXIMUM_STATES=100, SAMPLE_SIZE=10000, HIDDEN_NODE_RATIO=4

Consulta de ejemplo 3: Recuperación de los atributos de entrada para el modelo

Puede recuperar los pares de atributo-valor de entrada que se usaron para crear el modelo consultando los nodos secundarios (NODE_TYPE = 20) de la capa de entrada (NODE_TYPE = 18). La consulta siguiente devuelve una lista de atributos de entrada de las descripciones del nodo.

SELECT NODE_DESCRIPTION  
FROM [Call Center Default NN].CONTENT  
WHERE NODE_TYPE = 2  

Resultados de ejemplo:

DESCRIPCIÓN_DEL_NODO
Promedio de tiempo por problema=64.7094100096 - 77.4002099712
Día de la semana=Fri.
Operadores de nivel 1

Aquí solo se muestran algunas filas representativas de los resultados. Sin embargo, puede ver que el NODE_DESCRIPTION proporciona información ligeramente diferente en función del tipo de datos del atributo de entrada.

  • Si el atributo es un valor discreto o discretizado, se devuelve el atributo y su valor o su intervalo discretizado.

  • Si el atributo es un tipo de datos numérico continuo, el NODE_DESCRIPTION solo contiene el nombre del atributo. Sin embargo, puede recuperar la tabla anidada NODE_DISTRIBUTION para obtener la media o devolver el NODE_RULE para obtener los valores mínimo y máximo del intervalo numérico.

En la consulta siguiente se muestra cómo consultar la tabla anidada NODE_DISTRIBUTION para devolver los atributos de una columna y sus valores en otra columna. En el caso de los atributos continuos, el valor del atributo se representa mediante su media.

SELECT FLATTENED   
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE  
FROM NODE_DISTRIBUTION) as t  
FROM [Call Center Default NN -- Predict Service and Orders].CONTENT  
WHERE NODE_TYPE = 21  

Resultados de ejemplo:

t.ATTRIBUTE_NAME t.ATTRIBUTE_VALUE
Promedio de tiempo por problema 64.7094100096 - 77.4002099712
Día de la semana Vie.
Operadores de nivel 1 3.2962962962963

Los valores de intervalo mínimo y máximo se almacenan en la columna NODE_RULE y se representan como un fragmento XML, como se muestra en el ejemplo siguiente:

<NormContinuous field="Level 1 Operators">    
  <LinearNorm orig="2.83967303681711" norm="-1" />    
  <LinearNorm orig="3.75291955577548" norm="1" />    
</NormContinuous>    

Consulta de ejemplo 4: Recuperación de pesos de la capa oculta

El contenido del modelo de un modelo de red neuronal está estructurado de una manera que facilita la recuperación de detalles sobre cualquier nodo de la red. Además, los números de identificador de los nodos proporcionan información que le ayuda a identificar las relaciones entre los tipos de nodo.

En la consulta siguiente se muestra cómo recuperar los coeficientes almacenados en un nodo determinado de la capa oculta. La capa oculta consta de un nodo organizador (NODE_TYPE = 19), que contiene solo metadatos y varios nodos secundarios (NODE_TYPE = 22), que contienen los coeficientes de las distintas combinaciones de atributos y valores. Esta consulta devuelve solo los nodos de coeficiente.

SELECT FLATTENED TOP 1 NODE_UNIQUE_NAME,   
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE, VALUETYPE  
FROM NODE_DISTRIBUTION) as t  
FROM  [Call Center Default NN -- Predict Service and Orders].CONTENT  
WHERE NODE_TYPE = 22  
AND [PARENT_UNIQUE_NAME] = '40000000200000000' FROM [Call Center Default NN].CONTENT  

Resultados de ejemplo:

NODO_NOMBRE_UNICO t.ATTRIBUTE_NAME t.ATTRIBUTE_VALUE t.TIPODEVALOR
70000000200000000 6000000000000000a -0.178616518 7
70000000200000000 6000000000000000b -0.267561918 7
70000000200000000 6000000000000000c 0.11069497 7
70000000200000000 6000000000000000d 0.123757712 7
70000000200000000 6000000000000000e 0.294565343 7
70000000200000000 6000000000000000f 0.22245318 7
70000000200000000 0.188805045 7

Los resultados parciales que se muestran aquí muestran cómo el contenido del modelo de red neuronal relaciona el nodo oculto con los nodos de entrada.

  • Los nombres únicos de los nodos de la capa oculta siempre comienzan por 700000000.

  • Los nombres únicos de los nodos de la capa de entrada siempre comienzan con 600000000.

Por lo tanto, estos resultados indican que el nodo indicado por el identificador 70000000200000000 tenía seis coeficientes diferentes (VALUETYPE = 7) pasados a él. Los valores de los coeficientes están en la columna ATTRIBUTE_VALUE. Puede determinar exactamente qué atributo de entrada es para el coeficiente mediante el identificador de nodo de la columna ATTRIBUTE_NAME. Por ejemplo, el identificador de nodo 6000000000000000a hace referencia al atributo y el valor de entrada, Day of Week = 'Tue.' puede usar el identificador de nodo para crear una consulta, o bien puede ir al nodo mediante el Visor de árbol de contenido genérico de Microsoft.

Del mismo modo, si consulta la tabla NODE_DISTRIBUTION de los nodos en la capa de salida (NODE_TYPE = 23), puede ver los coeficientes de cada valor de salida. Sin embargo, en la capa de salida, los punteros hacen referencia a los nodos de la capa oculta. Para obtener más información, vea Contenido del modelo de minería para modelos de red neuronal (Analysis Services - Data Mining).

Uso de un modelo de red neuronal para realizar predicciones

El algoritmo de red neuronal de Microsoft admite la clasificación y la regresión. Puede utilizar funciones de predicción con estos modelos para proporcionar nuevos datos y crear predicciones únicas (singleton) o por lotes.

Ejemplo de consulta 5: Creación de una predicción única

La manera más fácil de crear una consulta de predicción en un modelo de red neuronal es usar el Prediction Query Builder, disponible en la pestaña Mining Prediction del Diseñador de Minería de Datos en SQL Server Management Studio y SQL Server Data Tools (SSDT). Puede examinar el modelo en el Visor de redes neuronales de Microsoft para filtrar atributos de interés y ver tendencias y, a continuación, cambiar a la pestaña Predicción de minería de datos para crear una consulta y predecir nuevos valores para esas tendencias.

Por ejemplo, puede examinar el modelo del centro de llamadas para ver las correlaciones entre los volúmenes de pedidos y otros atributos. Para ello, abra el modelo en el visor y, en Entrada, seleccione <Todo>. A continuación, en Salida, seleccione Número de pedidos. En Valor 1, seleccione el intervalo que representa la mayoría de los pedidos y, en Valor 2, seleccione el intervalo que representa los pedidos más pequeños. A continuación, puede ver de un vistazo todos los atributos que el modelo correlaciona con el volumen de pedidos.

Al examinar los resultados en el visor, se observa que determinados días de la semana tienen volúmenes de pedidos bajos y que un aumento en el número de operadores parece estar correlacionado con mayores ventas. Después, podría usar una consulta de predicción en el modelo para probar una hipótesis "what if" y preguntar si aumentar el número de operadores de nivel 2 en un día de bajo volumen aumentaría los pedidos. Para ello, cree una consulta como la siguiente:

SELECT Predict([Call Center Default NN].[Number of Orders]) AS [Predicted Orders],  
PredictProbability([Call Center Default NN].[Number of Orders]) AS [Probability]  
FROM [Call Center Default NN]  
NATURAL PREDICTION JOIN   
(SELECT 'Tue.' AS [Day of Week],  
13 AS [Level 2 Operators]) AS t  

Resultados de ejemplo:

Pedidos previstos Probabilidad
364 0.9532...

El volumen de ventas previsto es mayor que el intervalo actual de ventas del martes y la probabilidad de la predicción es muy alta. Sin embargo, es posible que quiera crear varias predicciones mediante un proceso por lotes para probar una variedad de hipótesis en el modelo.

Nota:

La minería de datos Add-Ins para Excel 2007 proporciona asistentes para regresión logística que facilitan la respuesta a preguntas complejas, tales como cuántos operadores de nivel dos serían necesarios para mejorar la calidad del servicio a un nivel objetivo durante un turno específico. Los complementos de minería de datos son una descarga gratuita e incluyen asistentes basados en la red neuronal o algoritmos de regresión logística. Para obtener más información, vea el sitio web de complementos de minería de datos para Office 2007 .

Lista de funciones de predicción

Todos los algoritmos de Microsoft admiten un conjunto común de funciones. No hay funciones de predicción específicas del algoritmo de red neuronal de Microsoft; Sin embargo, el algoritmo admite las funciones que se enumeran en la tabla siguiente.

Función de predicción Uso
IsDescendant (DMX) Determina si un nodo es un elemento secundario de otro nodo en el gráfico de red neuronal.
PredictAdjustedProbability (DMX) Devuelve la probabilidad ponderada.
PredictHistogram (DMX) Devuelve una tabla de valores relacionados con el valor previsto actual.
PredictVariance (DMX) Devuelve la varianza del valor previsto.
PredictProbability (DMX) Devuelve la probabilidad del valor previsto.
PredictStdev (DMX) Devuelve la desviación estándar para el valor previsto.
PredictSupport (DMX) En el caso de los modelos de regresión logística y de red neuronal, devuelve un valor único que representa el tamaño del conjunto de entrenamiento para todo el modelo.

Para obtener la sintaxis de funciones específicas, vea Referencia de funciones de Extensiones de Minería de Datos (DMX).

Véase también

Algoritmo de red neuronal de Microsoft
Referencia técnica del algoritmo de red neuronal de Microsoft
Contenido del modelo de minería de datos para modelos de red neuronal (Analysis Services - Minería de datos)
Lección 5: Creación de modelos de red neuronal y regresión logística (Tutorial intermedio de minería de datos)