Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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 bien puede crear una consulta de predicción, que usa los patrones del modelo para realizar predicciones para nuevos datos. También puede recuperar metadatos sobre el modelo mediante una consulta en el conjunto de filas del esquema de minería de datos. En esta sección se explica cómo crear estas consultas para los modelos basados en el algoritmo Bayes naive de Microsoft.
Consultas de contenido
Obtención de metadatos del modelo mediante DMX
Recuperación de un resumen de los datos de entrenamiento
Búsqueda de más información sobre atributos
Uso de procedimientos almacenados del sistema
Consultas de predicción
Predicción de resultados mediante una consulta singleton
Obtención de predicciones con valores de probabilidad y soporte
Búsqueda de información sobre un modelo bayes naive
El contenido del modelo de un modelo Bayes naive proporciona información agregada sobre la distribución de valores en los datos de entrenamiento. También puede recuperar información sobre los metadatos del modelo mediante la creación de consultas en los conjuntos de filas del esquema de minería de datos.
Consulta de ejemplo 1: Obtención de metadatos del modelo mediante DMX
Al consultar el conjunto de filas del esquema de minería de datos, puede encontrar metadatos para el modelo. Esto puede incluir cuándo se creó el modelo, cuando se procesó por última vez el modelo, el nombre de la estructura de minería de datos en la que se basa el modelo y el nombre de las columnas usadas como atributo de predicción. También puede devolver los parámetros que se usaron cuando se creó el modelo.
SELECT MODEL_CATALOG, MODEL_NAME, DATE_CREATED, LAST_PROCESSED,
SERVICE_NAME, PREDICTION_ENTITY, FILTER
FROM $system.DMSCHEMA_MINING_MODELS
WHERE MODEL_NAME = 'TM_NaiveBayes_Filtered'
Resultados de ejemplo:
| CATÁLOGO_DE_MODELOS | AdventureWorks |
| MODEL_NAME | TM_NaiveBayes_Filtered |
| Fecha de creación | 3/1/2008 19:15 |
| ÚLTIMO_PROCESADO | 3/2/2008 20:00 |
| SERVICE_NAME | Microsoft_Naive_Bayes |
| PREDICTION_ENTITY | Comprador de Bicicletas, Ingreso Anual |
| FILTRO | [Región] = 'Europa' OR [Región] = 'Norteamérica' |
El modelo usado para este ejemplo se basa en el modelo Bayes naive que se crea en el Tutorial básico de minería de datos, pero se modificó agregando un segundo atributo de predicción y aplicando un filtro a los datos de entrenamiento.
Consulta de ejemplo 2: Recuperar un resumen de los datos de entrenamiento
En un modelo Bayes naive, el nodo de estadísticas marginales almacena información agregada sobre la distribución de valores en los datos de entrenamiento. Este resumen es cómodo y le ahorra tener que crear consultas SQL en los datos de entrenamiento para encontrar la misma información.
En el ejemplo siguiente se usa una consulta de contenido DMX para recuperar los datos del nodo (NODE_TYPE = 24). Dado que las estadísticas se almacenan en una tabla anidada, la palabra clave FLATTENED se usa para facilitar la visualización de los resultados.
SELECT FLATTENED MODEL_NAME,
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE, [SUPPORT], [PROBABILITY], VALUETYPE FROM NODE_DISTRIBUTION) AS t
FROM TM_NaiveBayes.CONTENT
WHERE NODE_TYPE = 26
Nota:
Debe encerrar entre corchetes los nombres de las columnas, SUPPORT y PROBABILITY, para distinguirlas de las palabras clave reservadas de Expresiones Multidimensionales (MDX) con los mismos nombres.
Resultados parciales:
| MODEL_NAME | t.ATTRIBUTE_NAME | t.ATTRIBUTE_VALUE | t.SOPORTE | t.PROBABILIDAD | t.TIPODEVALOR |
|---|---|---|---|---|---|
| TM_NaiveBayes | Comprador de Bicicletas | Desaparecido | 0 | 0 | 1 |
| TM_NaiveBayes | Comprador de Bicicletas | 0 | 8869 | 0.507263784 | 4 |
| TM_NaiveBayes | Comprador de Bicicletas | 1 | 8615 | 0.492736216 | 4 |
| TM_NaiveBayes | Género | Desaparecido | 0 | 0 | 1 |
| TM_NaiveBayes | Género | F | 8656 | 0.495081217 | 4 |
| TM_NaiveBayes | Género | M | 8828 | 0.504918783 | 4 |
Por ejemplo, estos resultados indican el número de casos de entrenamiento para cada valor discreto (VALUETYPE = 4), junto con la probabilidad calculada, ajustada para los valores que faltan (VALUETYPE = 1).
Para obtener una definición de los valores proporcionados en la tabla NODE_DISTRIBUTION en un modelo Bayes naive, vea Contenido del modelo de minería de datos para los modelos Bayes naive (Analysis Services - Minería de datos). Para obtener más información sobre cómo los cálculos de compatibilidad y probabilidad se ven afectados por los valores que faltan, vea Valores que faltan (Analysis Services - Minería de datos).
Consulta de ejemplo 3: Buscar más información sobre los atributos
Dado que un modelo Bayes naive suele contener información compleja sobre las relaciones entre distintos atributos, la manera más fácil de ver estas relaciones es usar el Visor bayes naive de Microsoft. Sin embargo, puede crear consultas DMX para devolver los datos.
En el ejemplo siguiente se muestra cómo devolver información del modelo sobre un atributo determinado, Region.
SELECT NODE_TYPE, NODE_CAPTION,
NODE_PROBABILITY, NODE_SUPPORT, MSOLAP_NODE_SCORE
FROM TM_NaiveBayes.CONTENT
WHERE ATTRIBUTE_NAME = 'Region'
Esta consulta devuelve dos tipos de nodos: el nodo que representa el atributo de entrada (NODE_TYPE = 10) y los nodos para cada valor del atributo (NODE_TYPE = 11). El título del nodo se usa para identificar el nodo, en lugar del nombre del nodo, porque el título muestra el nombre del atributo y el valor del atributo.
| TIPO_DE_NODO | Etiqueta de nodo | Probabilidad de Nodo | SOPORTE_DE_NODO | MSOLAP_NODE_SCORE | TIPO_DE_NODO |
|---|---|---|---|---|---|
| 10 | Comprador de Bicicletas -> Región | 1 | 17484 | 84.51555875 | 10 |
| 11 | Comprador de bicicletas -> Región = Falta | 0 | 0 | 0 | 11 |
| 11 | Bike Buyer -> Región = América del Norte | 0.508236102 | 8886 | 0 | 11 |
| 11 | Bike Buyer -> Región = Pacifico | 0.193891558 | 3390 | 0 | 11 |
| 11 | Comprador de bicicletas -> Región = Europa | 0.29787234 | 5208 | 0 | 11 |
Algunas de las columnas almacenadas en los nodos son las mismas que se pueden obtener de los nodos de estadísticas marginales, como la puntuación de probabilidad del nodo y los valores de compatibilidad del nodo. Sin embargo, el MSOLAP_NODE_SCORE es un valor especial proporcionado solo para los nodos de atributo de entrada e indica la importancia relativa de este atributo en el modelo. Puede ver gran parte de la misma información en el panel Red de dependencias del visor; sin embargo, el visor no proporciona puntuaciones.
La consulta siguiente devuelve las puntuaciones de importancia de todos los atributos del modelo:
SELECT NODE_CAPTION, MSOLAP_NODE_SCORE
FROM TM_NaiveBayes.CONTENT
WHERE NODE_TYPE = 10
ORDER BY MSOLAP_NODE_SCORE DESC
Resultados de ejemplo:
| Etiqueta de nodo | MSOLAP_NODE_SCORE |
|---|---|
| Comprador de Bicicletas -> Total de Niños | 181.3654836 |
| Bike Buyer -> Distancia del trayecto | 179.8419482 |
| Bike Buyer -> Educación en Inglés | 156.9841928 |
| Comprador de Bicicletas -> Número de hijos en casa | 111.8122599 |
| Comprador de Bicicletas -> Región | 84.51555875 |
| Bike Buyer -> Estado civil | 23.13297354 |
| Comprador de bicicletas -> Ocupación en inglés | 2.832069191 |
Al examinar el contenido del modelo en el Visor de árbol de contenido genérico de Microsoft, obtendrá una mejor idea de qué estadísticas podrían ser interesantes. Aquí se muestran algunos ejemplos sencillos; con más frecuencia, es posible que tenga que ejecutar varias consultas o almacenar los resultados y procesarlos en el cliente.
Consulta de ejemplo 4: Uso de procedimientos almacenados del sistema
Además de escribir sus propias consultas de contenido, puede usar algunos procedimientos almacenados del sistema de Analysis Services para explorar los resultados. Para usar un procedimiento almacenado del sistema, prefijo el nombre del procedimiento almacenado con la palabra clave CALL:
CALL GetPredictableAttributes ('TM_NaiveBayes')
Resultados parciales:
| NOMBRE_DEL_ATRIBUTO | NODO_NOMBRE_UNICO |
|---|---|
| Comprador de Bicicletas | 100000001 |
Nota:
Estos procedimientos almacenados del sistema son para la comunicación interna entre el servidor de Analysis Services y el cliente y solo se deben usar para mayor comodidad al desarrollar y probar modelos de minería de datos. Al crear consultas para un sistema de producción, es recomendable que siempre escriba sus propias consultas mediante DMX.
Para obtener más información sobre los procedimientos almacenados del sistema de Analysis Services, vea Procedimientos almacenados de minería de datos (Analysis Services - Minería de datos).
Uso de un modelo bayes naive para realizar predicciones
Normalmente, el algoritmo Bayes naive de Microsoft se usa menos para la predicción que para la exploración de relaciones entre los atributos de entrada y predicción. Sin embargo, el modelo admite el uso de funciones de predicción para la predicción y la asociación.
Consulta de ejemplo 5: Predicción de resultados mediante una consulta Singleton
La consulta siguiente usa una consulta singleton para proporcionar un nuevo valor y predecir, en función del modelo, si es probable que un cliente con estas características compre una bicicleta. La manera más fácil de crear una consulta singleton en un modelo de regresión es mediante el cuadro de diálogo Entrada de consulta singleton . Por ejemplo, puede crear la siguiente consulta DMX seleccionando el TM_NaiveBayes modelo, seleccionando Singleton Query y seleccionando valores en las listas desplegables de [Commute Distance] y Gender.
SELECT
Predict([TM_NaiveBayes].[Bike Buyer])
FROM
[TM_NaiveBayes]
NATURAL PREDICTION JOIN
(SELECT '5-10 Miles' AS [Commute Distance],
'F' AS [Gender]) AS t
Resultados de ejemplo:
| Expresión |
|---|
| 0 |
La función de predicción devuelve el valor más probable, en este caso, 0, lo que significa que es poco probable que este tipo de cliente compre una bicicleta.
Consulta de ejemplo 6: Obtención de predicciones con valores de probabilidad y soporte
Además de predecir un resultado, a menudo quiere saber lo seguro que es la predicción. La consulta siguiente usa la misma consulta singleton que el ejemplo anterior, pero agrega la función de predicción PredictHistogram (DMX) para devolver una tabla anidada que contiene estadísticas compatibles con la predicción.
SELECT
Predict([TM_NaiveBayes].[Bike Buyer]),
PredictHistogram([TM_NaiveBayes].[Bike Buyer])
FROM
[TM_NaiveBayes]
NATURAL PREDICTION JOIN
(SELECT '5-10 Miles' AS [Commute Distance],
'F' AS [Gender]) AS t
Resultados de ejemplo:
| Comprador de Bicicletas | $SOPORTE | $PROBABILITY | $PROBABILIDADAJUSTADA | $VARIANCE | $STDEV |
|---|---|---|---|---|---|
| 0 | 10161.5714 | 0.581192599 | 0.010530981 | 0 | 0 |
| 1 | 7321.428768 | 0.418750215 | 0.008945684 | 0 | 0 |
| 0.999828444 | 5.72E-05 | 5.72E-05 | 0 | 0 |
La fila final de la tabla muestra los ajustes para soporte y la probabilidad para el valor perdido. Los valores de varianza y desviación estándar siempre son 0, ya que los modelos Bayes naive no pueden modelar valores continuos.
Consulta de ejemplo 7: Predicción de asociaciones
El algoritmo Bayes naive de Microsoft se puede usar para el análisis de asociaciones, si la estructura de minería de datos contiene una tabla anidada con el atributo de predicción como clave. Por ejemplo, podría crear un modelo Bayes naive mediante la estructura de minería de datos creada en la lección 3: Creación de un escenario de cesta de mercado (Tutorial intermedio de minería de datos) del tutorial de minería de datos. El modelo usado en este ejemplo se modificó para agregar información sobre los ingresos y la región del cliente en la tabla de casos.
En el ejemplo de consulta siguiente se muestra una consulta singleton que predice productos relacionados con las compras del producto, 'Road Tire Tube'. Puede usar esta información para recomendar productos a un tipo específico de cliente.
SELECT PredictAssociation([Association].[v Assoc Seq Line Items])
FROM [Association_NB]
NATURAL PREDICTION JOIN
(SELECT 'High' AS [Income Group],
'Europe' AS [Region],
(SELECT 'Road Tire Tube' AS [Model])
AS [v Assoc Seq Line Items])
AS t
Resultados parciales:
| Modelo |
|---|
| Shorts de montaña para mujer |
| Botella de agua |
| Touring-3000 |
| Touring-2000 |
| Touring-1000 |
Lista de funciones
Todos los algoritmos de Microsoft admiten un conjunto común de funciones. Sin embargo, el algoritmo Bayes naive de Microsoft admite las funciones adicionales 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 del modelo. |
| Predicción (DMX) | Devuelve un valor predicho, o un conjunto de valores, para una columna especificada. |
| PredictAdjustedProbability (DMX) | Devuelve la probabilidad ponderada. |
| PredictAssociation (DMX) | Predice la pertenencia a un conjunto de datos asociativo. |
| PredictNodeId (DMX) | Devuelve el Node_ID para cada caso. |
| PredictProbability (DMX) | Devuelve la probabilidad del valor previsto. |
| PredictSupport (DMX) | Devuelve el valor de compatibilidad para un estado especificado. |
Para ver la sintaxis de funciones específicas, consulte Referencia de funciones de extensiones de minería de datos (DMX).
Véase también
Referencia técnica del algoritmo Bayes naive de Microsoft
Algoritmo bayes naive de Microsoft
Contenido del modelo de minería para modelos Naive Bayes (Analysis Services - Data Mining)