Ejemplos de consultas de modelos de regresión lineal
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 de los nuevos datos. Por ejemplo, una consulta de contenido podría proporcionar detalles adicionales sobre la fórmula de regresión, mientras que una consulta de predicción podría indicar si un nuevo punto de datos se ajusta al modelo. También se pueden recuperar metadatos sobre el modelo mediante una consulta.
En esta sección se explica cómo crear consultas para los modelos que se basan en el algoritmo de regresión lineal de Microsoft.
[!NOTA]
Dado que la regresión lineal está basada en un caso especial del algoritmo de árboles de decisión de Microsoft, hay muchas similitudes y algunos modelos de árbol de decisión que utilizan atributos de predicción continuos pueden contener fórmulas de regresión. Para obtener más información, vea Referencia técnica del algoritmo de árboles de decisión de Microsoft.
Consultas de contenido
Usar el conjunto de filas de esquema de minería de datos para determinar los parámetros que se usan para un modelo
Usar DMX para devolver la fórmula de regresión del modelo
Devolver solo el coeficiente para el modelo
Consultas de predicción
Predecir los ingresos utilizando una consulta singleton
Usar funciones de predicción con un modelo de regresión
Buscar información sobre el modelo de regresión lineal
La estructura de un modelo de regresión lineal es sumamente simple: el modelo de minería de datos representa los datos como un nodo único, que define la fórmula de regresión. Para obtener más 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).
Volver al principio
Consulta de ejemplo 1: usar el conjunto de filas de esquema de minería de datos para determinar los parámetros que se usan para un modelo
Al consultar el conjunto de filas de esquema de minería de datos, puede buscar los metadatos acerca del modelo. Podría incluirse cuándo se creó el modelo, cuándo se procesó en último lugar, el nombre de la estructura de minería de datos en la que se basa y el nombre de la columna que se usa como atributo de predicción. También se pueden devolver los parámetros que se utilizaron cuando se creó el modelo por primera vez.
SELECT MINING_PARAMETERS
FROM $system.DMSCHEMA_MINING_MODELS
WHERE MODEL_NAME = 'TM_PredictIncome'
Resultados del ejemplo:
MINING_PARAMETERS |
---|
COMPLEXITY_PENALTY=0.9, MAXIMUM_INPUT_ATTRIBUTES=255, MAXIMUM_OUTPUT_ATTRIBUTES=255, MINIMUM_SUPPORT=10, SCORE_METHOD=4, SPLIT_METHOD=3, FORCE_REGRESSOR= |
[!NOTA]
La configuración del parámetro, "FORCE_REGRESSOR = ", indica que el valor actual del parámetro FORCE_REGRESSOR es NULL.
Volver al principio
Consulta de ejemplo 2: recuperar la fórmula de regresión del modelo
La consulta siguiente devuelve el contenido del modelo de minería de datos de un modelo de regresión lineal que se generó utilizando el mismo origen de datos que Targeted Mailing, que se utilizó en el Tutorial básico de minería de datos. Este modelo predice los ingresos de los clientes en función de la edad.
La consulta devuelve el contenido del nodo que contiene la fórmula de regresión. Cada variable y coeficiente están almacenados en una fila independiente de la tabla NODE_DISTRIBUTION anidada. Si desea ver la fórmula de regresión completa, utilice el Visor de árboles de Microsoft, haga clic en el nodo (Todos) y abra la Leyenda de minería de datos.
SELECT FLATTENED NODE_DISTRIBUTION as t
FROM LR_PredictIncome.CONTENT
[!NOTA]
Si hace referencia a columnas individuales de la tabla anidada utilizando una consulta como SELECT <column name> from NODE_DISTRIBUTION, algunas columnas, como SUPPORT o PROBABILITY, se deben incluir entre corchetes para distinguirlas de las palabras clave reservadas del mismo nombre.
Resultados esperados:
t.ATTRIBUTE_NAME |
t.ATTRIBUTE_VALUE |
t.SUPPORT |
t.PROBABILITY |
t.VARIANCE |
t.VALUETYPE |
---|---|---|---|---|---|
Yearly Income |
Missing |
0 |
0.000457142857142857 |
0 |
1 |
Yearly Income |
57220.8876687257 |
17484 |
0.999542857142857 |
1041275619.52776 |
3 |
Age |
471.687717702463 |
0 |
0 |
126.969442359327 |
7 |
Age |
234.680904692439 |
0 |
0 |
0 |
8 |
Age |
45.4269617936399 |
0 |
0 |
126.969442359327 |
9 |
|
35793.5477381267 |
0 |
0 |
1012968919.28372 |
11 |
En la comparación, en la Leyenda de minería de datos, la fórmula de regresión aparece como sigue:
Yearly Income = 57,220.919 + 471.688 * (Age - 45.427)
Puede ver que en la Leyenda de minería de datos, algunos números se redondean; sin embargo, la tabla NODE_DISTRIBUTION y la Leyenda de minería de datos contienen esencialmente los mismos valores.
Los valores de la columna VALUETYPE indican qué tipo de información contiene cada fila, lo que resulta útil si los resultados se procesan mediante programación. En la tabla siguiente se muestran los tipos de valores que se generan para una fórmula de regresión lineal.
VALUETYPE |
---|
1 (ausente) |
3 (continuo) |
7 (coeficiente) |
8 (ganancia de puntuación) |
9 (estadísticas) |
7 (coeficiente) |
8 (ganancia de puntuación) |
9 (estadísticas) |
11 (intersección) |
Para obtener más información sobre el significado de cada tipo de valor para los modelos de regresión, vea Contenido del modelo de minería de datos para los modelos de regresión lineal (Analysis Services - Minería de datos).
Volver al principio
Consulta de ejemplo 3: devolver solo el coeficiente para el modelo
Utilizando la enumeración VALUETYPE, puede devolver solo el coeficiente para la ecuación de regresión, como se muestra en la consulta siguiente:
SELECT FLATTENED MODEL_NAME,
(SELECT ATTRIBUTE_VALUE, VALUETYPE
FROM NODE_DISTRIBUTION
WHERE VALUETYPE = 11)
AS t
FROM LR_PredictIncome.CONTENT
Esta consulta devuelve dos filas, una del contenido del modelo de minería de datos y la fila de la tabla anidada que contiene el coeficiente. La columna ATTRIBUTE_NAME no está incluida aquí porque siempre está en blanco para el coeficiente.
MODEL_NAME |
t.ATTRIBUTE_VALUE |
t.VALUETYPE |
---|---|---|
LR_PredictIncome |
|
|
LR_PredictIncome |
35793.5477381267 |
11 |
Volver al principio
Realizar predicciones a partir de un modelo de regresión lineal
Puede generar consultas de predicción en modelos de regresión lineal utilizando la pestaña Predicción de modelo de minería de datos del Diseñador de minería de datos. El generador de consultas de predicción está disponible en SQL Server Management Studio y SQL Server Data Tools (SSDT).
[!NOTA]
También puede crear consultas en modelos de regresión utilizando los Complementos de minería de datos de SQL Server 2005 para Excel o los Complementos de minería de datos de SQL Server 2008 para Excel. Aunque los Complementos de minería de datos para Excel no crean modelos de regresión, puede examinar y consultar cualquier modelo de minería de datos que esté almacenado en una instancia de Analysis Services.
Volver al principio
Consulta de ejemplo 4: predecir los ingresos utilizando una consulta singleton
La manera más fácil de crear una sola consulta en un modelo de regresión es usar el cuadro de diálogo Entrada de consulta singleton. Por ejemplo, puede generar la consulta DMX siguiente seleccionando el modelo de regresión adecuado, eligiendo Consulta singleton y escribiendo a continuación 20 como valor de Age.
SELECT [LR_PredictIncome].[Yearly Income]
From [LR_PredictIncome]
NATURAL PREDICTION JOIN
(SELECT 20 AS [Age]) AS t
Resultados del ejemplo:
Yearly Income |
---|
45227.302092176 |
Volver al principio
Consulta de prueba 5: usar funciones de predicción con un modelo de regresión
Puede utilizar muchas de las funciones de predicción estándar con modelos de regresión lineal. En el ejemplo siguiente se muestra cómo agregar algunas estadísticas descriptivas a los resultados de las consultas de predicción. A partir de estos resultados, puede que haya una desviación considerable de la media para este modelo.
SELECT
([LR_PredictIncome].[Yearly Income]) as [PredIncome],
(PredictStdev([LR_PredictIncome].[Yearly Income])) as [StDev1]
From
[LR_PredictIncome]
NATURAL PREDICTION JOIN
(SELECT 20 AS [Age]) AS t
Resultados del ejemplo:
Yearly Income |
StDev1 |
---|---|
45227.302092176 |
31827.1726561396 |
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 lineal de Microsoft admite las funciones adicionales que se enumeran en la siguiente tabla.
Función de predicción |
Uso |
Determina si un nodo es un elemento secundario de otro nodo del modelo. |
|
Indica si el nodo especificado contiene el caso actual. |
|
Devuelve un valor o un conjunto de valores predichos para una columna especificada. |
|
Devuelve el Node_ID de cada caso. |
|
Devuelve la desviación estándar del valor predicho. |
|
Devuelve el valor de soporte de un estado especificado. |
|
Devuelve la varianza de una columna especificada. |
Para consultar una lista de las funciones comunes a todos los algoritmos de Microsoft, vea Algoritmos de minería de datos (Analysis Services: Minería de datos). Para obtener más información acerca del modo de utilizar estas funciones, vea Referencia de funciones de Extensiones de minería de datos (DMX).
Vea también
Referencia
Referencia técnica del algoritmo de regresión lineal de Microsoft