Compartir a través de


Consultar un modelo de regresión logística (Analysis Services - Minería de datos)

Cuando se crea una consulta en un modelo de minería de datos, puede tratarse de una consulta de contenido, que proporciona detalles de los patrones detectados durante el análisis, o de una consulta de predicción, que utiliza los patrones del modelo para realizar predicciones con los nuevos datos.

En esta sección se explica cómo crear consultas para los modelos que se basan en el algoritmo de regresión logística de Microsoft.

Consultas de contenido

Recuperar parámetros para el modelo mediante el conjunto de filas de esquema de minería de datos

Buscar detalles adicionales acerca del modelo mediante DMX

Consultas de predicción

Realizar predicciones para un valor continuo

Realizar predicciones para un valor discreto

Obtener información sobre el modelo de regresión logística

Los modelos de regresión logística se crean utilizando el algoritmo de red neuronal de Microsoft con un conjunto especial de parámetros; por consiguiente, contienen parte de la misma información que los modelos de redes neuronales, pero son menos complejos. Para entender la estructura del contenido del modelo y qué tipos de nodo almacenan qué tipo de información, vea Contenido del modelo de minería de datos para los modelos de regresión logística (Analysis Services - Minería de datos).

Para continuar con los escenarios de la consulta, puede crear un modelo de regresión logística como se describe en la siguiente sección del tutorial intermedio sobre minería de datos: Lección 5: Generar modelos de red neuronal y de regresión logística (Tutorial intermedio de minería de datos).

También puede utilizar la estructura de minería de datos Targeted Mailing de Tutorial básico de minería de datos. A continuación, agregue un modelo de regresión logística ejecutando el siguiente script de DMX:

ALTER MINING STRUCTURE [Targeted Mailing]
ADD MINING MODEL [TM_Logistic Regression]
([Customer Key],
[Age],
[Bike Buyer] PREDICT,
[Yearly Income] PREDICT,
[Commute Distance],
[English Education],
Gender,
[House Owner Flag],
[Marital Status],
[Number Cars Owned],
[Number Children At Home],
[Region],
[Total Children]
)
USING Microsoft_Logistic_Regression

Ejemplo de consulta 1: recuperar parámetros para el modelo mediante el conjunto de filas del esquema de minería de datos

Al consultar el conjunto de filas de esquema de minería de datos, se pueden encontrar metadatos sobre el modelo, como cuándo se creó, cuándo se procesó por última vez, el nombre de la estructura de minería de datos en que se basa el modelo, y el nombre de la columna que se usa como atributo de predicción. El ejemplo siguiente devuelve los parámetros que se utilizaron cuando se creó por primera vez el modelo, junto con el nombre y el tipo del modelo, y la fecha en que se creó.

SELECT MODEL_NAME, SERVICE_NAME, DATE_CREATED, MINING_PARAMETERS 
FROM $system.DMSCHEMA_MINING_MODELS
WHERE MODEL_NAME = 'Call Center_LR'

Resultados del ejemplo:

MODEL_NAME

SERVICE_NAME

DATE_CREATED

MINING_PARAMETERS

Call Center_LR

Microsoft_Logistic_Regression

04/07/2009 20:38:33

HOLDOUT_PERCENTAGE=30, HOLDOUT_SEED=1, MAXIMUM_INPUT_ATTRIBUTES=255, MAXIMUM_OUTPUT_ATTRIBUTES=255, MAXIMUM_STATES=100, SAMPLE_SIZE=10000

Volver al principio

Ejemplo de consulta 2: buscar detalles adicionales acerca del modelo mediante DMX

La consulta siguiente devuelve información básica sobre el modelo de regresión logística. Un modelo de regresión logística es similar a un modelo de red neuronal en muchos sentidos, por ejemplo en la presencia de un nodo estadístico marginal (NODE_TYPE = 24) que describe los valores que se usan como entradas. En esta consulta de ejemplo se utiliza el modelo de distribución de correo directo y se obtienen los valores de todas las posibles entradas recuperándolos de la tabla anidada NODE_DISTRIBUTION.

SELECT FLATTENED NODE_DISTRIBUTION AS t
FROM [TM_Logistic Regression].CONTENT 

Resultados parciales:

t.ATTRIBUTE_NAME

t.ATTRIBUTE_VALUE

t.SUPPORT

t.PROBABILITY

t.VARIANCE

t.VALUETYPE

Age

Missing

0

0

0

1

Age

45.43491192

17484

1

126.9544114

3

Bike Buyer

Missing

0

0

0

1

Bike Buyer

0

8869

0.507263784

0

4

Bike Buyer

1

8615

0.492736216

0

4

Commute Distance

Missing

0

0

0

1

Commute Distance

5-10 Miles

3033

0.173472889

0

4

La consulta real devuelve muchas más filas; sin embargo, este ejemplo muestra el tipo de información que se proporciona sobre las entradas. Por ejemplo, cada valor posible de un valor discreto se muestra en la tabla, mientras que las entradas continuas son de datos discretos. Para obtener más información acerca de cómo utilizar la información en el nodo de estadísticas marginales, vea Contenido del modelo de minería de datos para los modelos de regresión logística (Analysis Services - Minería de datos).

[!NOTA]

Los resultados se muestran sin una estructura jerárquica para facilitar la visualización, pero se puede devolver la tabla anidada en una sola columna si el proveedor admite conjuntos de filas jerárquicos. Para obtener más información, vea el tema sobre conjuntos de filas jerárquicos en la Guía del programador de OLE DB.

Volver al principio

Realizar predicciones mediante un modelo de regresión logística

Puede utilizar la función Predict (DMX) con cada tipo de modelo de minería de datos para proporcionar nuevos datos y realizar predicciones. También puede utilizar funciones para devolver información adicional sobre la predicción, como la probabilidad de que una predicción sea correcta. En esta sección se proporcionan algunos ejemplos de consultas de predicción en un modelo de regresión logística.

Ejemplo de consulta 3: realizar predicciones para un valor continuo

Dado que la regresión logística admite el uso de atributos continuos tanto para entrada como para predicción, es fácil crear modelos que pongan en correlación diversos factores de los datos. Puede utilizar las consultas de predicción para explorar la relación entre estos factores.

El ejemplo de consulta siguiente está basado en el modelo Call Center y crea una consulta singleton que predice el grado de servicio para el turno de la mañana del viernes. La función PredictHistogram (DMX) devuelve una tabla anidada que proporciona las estadísticas pertinentes para conocer la validez del valor previsto.

SELECT
  Predict([Call Center_LR].[Service Grade]) as Predicted ServiceGrade,
  PredictHistogram([Call Center_LR].[Service Grade]) as [Results],
FROM
  [Call Center_LR]
NATURAL PREDICTION JOIN
(SELECT 'Friday' AS [Day Of Week],
  'AM' AS [Shift]) AS t

Resultados del ejemplo:

Grado de servicio previsto

Resultados

0.102601830123659

Grado de servicio$SUPPORT$PROBABILITY$ADJUSTEDPROBABILITY$VARIANCE$STDEV
0.10260183012365983.02325581395350.98837209302325600.001205526606000870.034720694203902
0.9767441860465120.01162790697674420.011627906976744200

Para obtener más información acerca de los valores de probabilidad, compatibilidad y desviación estándar en la tabla anidada NODE_DISTRIBUTION, vea Contenido del modelo de minería de datos para los modelos de regresión logística (Analysis Services - Minería de datos).

Volver al principio

Ejemplo de consulta 4: realizar predicciones para un valor discreto

La regresión logística se suele usar en escenarios en los que se desea analizar los factores que contribuyen a un resultado binario. Aunque el modelo original utilizado en el tutorial intermedio predice un valor continuo, grado de servicio, en la vida real podría ser deseable predecir si el grado de servicio cumple un valor de destino discreto. También se podrían generar las predicciones utilizando valores continuos para después agrupar los resultados previstos en Buenos, Aceptables o Malos.

En el siguiente ejemplo se muestra cómo cambiar la manera en que se agrupa el atributo predecible. Para ello, debe realizar una copia de la estructura de minería de datos y, a continuación, cambiar el método de discretization de la columna de destino. En el siguiente procedimiento se describe cómo cambiar la agrupación de los valores de Service Grade en los datos del centro de llamadas.

Para crear una versión de datos discretos de los modelos y la estructura de minería de datos del centro de llamadas

  1. En Business Intelligence Development Studio, en el Explorador de soluciones, expanda Estructuras de minería de datos.

  2. Haga clic con el botón secundario en Call Center.dmm y seleccione Copiar.

  3. Haga clic con el botón secundario en Estructuras de minería de datos y seleccione Pegar. Se agrega una nueva estructura de minería de datos, con el nombre Call Center 1.

  4. Haga clic con el botón secundario en la nueva estructura de minería de datos y seleccione Cambiar nombre. Escriba el nuevo nombre, Centro de llamadas de datos discretos.

  5. Haga doble clic en la nueva estructura de minería de datos para abrirla en el diseñador. Observe que también se han copiado todos los modelos de minería de datos y que todos ellos tienen la extensión 1. No cambie los nombres por el momento.

  6. En la ficha Estructura de minería de datos, haga clic con el botón secundario en la columna de Service Grade y seleccione Properties.

  7. Cambie el valor de la propiedad Content de Continuous a Discretized. Cambie el valor de la propiedad DiscretizationMethod a Clusters. Para Discretization BucketCount, escriba 3.

    [!NOTA]

    Estos parámetros se usan únicamente para ilustrar el proceso y no producen necesariamente un modelo válido.

  8. En el menú Modelo de minería de datos, seleccione Procesar estructura de minería de datos y todos los modelos.

La consulta de ejemplo siguiente se basa en este modelo de datos discretos y predice el grado de servicio para el día especificado de la semana, junto con las probabilidades de cada resultado previsto.

SELECT
  (PredictHistogram([Call Center_LR 1].[Service Grade])) as [Predictions]
FROM
  [Call Center_LR 1]
NATURAL PREDICTION JOIN
(SELECT 'Saturday' AS [Day Of Week]) AS t  

Resultados esperados:

Predicciones

Grado de servicio$SUPPORT$PROBABILITY$ADJUSTEDPROBABILITY$VARIANCE$STDEV
0.1087271838312535.72465047706410.4252934580602870.017016836003029300
0.0585576923062531.70988808007030.3774986676198850.02088202006045400
0.17016949152515.61091598832020.1858442379561920.066138657138604900
0.9545454545454550.01136363636363640.011363636363636400

Observe que los resultados previstos se han agrupado en tres categorías según se ha especificado; no obstante, estos agrupamientos se basan en la agrupación en clústeres de los valores reales de los datos, no de los valores arbitrarios que puedan establecerse como objetivos empresariales.

Volver al principio

Lista de funciones de predicción

Todos los algoritmos de Microsoft son compatibles con un conjunto común de funciones. No obstante, el algoritmo de regresión logística de Microsoft admite las funciones adicionales que se enumeran en la siguiente tabla.

Para consultar una lista de las funciones comunes a todos los algoritmos de Microsoft, vea Asignar funciones a tipos de consulta (DMX). Para obtener más información acerca de la sintaxis de funciones específicas, vea Referencia de funciones de Extensiones de minería de datos (DMX).

[!NOTA]

En los modelos de regresión logística y red neuronal, la función PredictSupport (DMX) devuelve un valor único que representa el tamaño del conjunto de entrenamiento para todo el modelo.