ALTER MINING STRUCTURE (DMX)
Crea un nuevo modelo de minería de datos basado en una estructura de minería de datos existente. Cuando se utiliza la instrucción ALTER MINING STRUCTURE para crear un nuevo modelo de minería de datos, la estructura ya debe existir. Por el contrario, cuando se utiliza la instrucción CREATE MINING MODEL (DMX), se crea un modelo y al mismo tiempo se genera su estructura de minería de datos subyacente automáticamente.
Sintaxis
ALTER MINING STRUCTURE <structure>
ADD MINING MODEL <model>
(
<column definition list>
[(<nested column definition list>) [WITH FILTER (<nested filter criteria>)]]
)
USING <algorithm> [(<parameter list>)]
[WITH DRILLTHROUGH]
[,FILTER(<filter criteria>)]
Argumentos
structure
Nombre de la estructura de minería de datos a la que se agregará el modelo de minería de datos.model
Nombre único del modelo de minería de datos.column definition list
Lista delimitada por comas de definiciones de columna.nested column definition list
Lista delimitada por comas de columnas de una tabla anidada, si procede.nested filter criteria
Expresión de filtro que se aplica a las columnas de una tabla anidada.algorithm
Nombre de un algoritmo de minería de datos definido por el proveedor.Nota
La lista de los algoritmos admitidos por el proveedor actual se puede recuperar utilizando Conjunto de filas DMSCHEMA_MINING_SERVICES. Para ver los algoritmos admitidos en la instancia actual de Analysis Services, vea Propiedades de minería de datos.
parameter list
Opcional. Lista delimitada por comas de parámetros definidos por el proveedor para el algoritmo.filter criteria
Expresión de filtro que se aplica a las columnas de la tabla de casos.
Comentarios
Si la estructura de minería de datos contiene claves compuestas, el modelo de minería debe incluir todas las columnas de clave que están definidas en la estructura.
Si el modelo no requiere una columna de predicción, como ocurre con los modelos que se generan mediante los algoritmos de clústeres de Microsoft y de clústeres de secuencia de Microsoft, no es necesario incluir una definición de columna en la instrucción. Todos los atributos del modelo resultante se tratarán como entradas.
En la cláusula WITH que se aplica a la tabla de casos, se pueden especificar las opciones para el filtrado y la obtención de detalles:
Agregue la palabra clave FILTER y una condición de filtro. El filtro se aplica a los casos del modelo de minería de datos.
Agregue la palabra clave DRILLTHROUGH para permitir a los usuarios del modelo de minería de datos explorar en profundidad los datos de los casos partiendo de los resultados del modelo. En Extensiones de minería de datos (DMX), sólo se puede habilitar la obtención de detalles al crear el modelo de minería de datos.
Para utilizar tanto el filtrado de casos como la obtención de detalles, combine las palabras clave en una sola cláusula WITH utilizando la sintaxis que se muestra en el ejemplo siguiente:
WITH DRILLTHROUGH, FILTER(Gender = 'Male')
Lista de definiciones de columna
Para definir la estructura de un modelo, especifique una lista de definiciones de columna que incluya la información siguiente para cada columna:
Nombre (obligatorio)
Alias (opcional)
Indicadores de modelado
Solicitud de predicción que, mediante la cláusula PREDICT o PREDICT_ONLY, indica al algoritmo si la columna contiene un valor de predicción.
Use la siguiente sintaxis en la lista de definiciones de columna para definir una sola columna:
<structure column name> [AS <model column name>] [<modeling flags>] [<prediction>]
Nombre y alias de la columna
El nombre de columna que se utiliza en la lista de definiciones de columna debe ser el nombre de la columna tal como se utiliza en la estructura de minería de datos. Sin embargo, también se puede definir un alias para representar la columna de estructura en el modelo de minería de datos. Asimismo, se pueden crear varias definiciones de columna para la misma columna de estructura y asignar a cada copia de la columna un alias y uso de predicción diferentes. De forma predeterminada, se utiliza el nombre de la columna de estructura si no se define un alias. Para obtener más información, vea Cómo crear un alias para una columna de modelo.
Para las columnas de tablas anidadas, especifique el nombre de la tabla anidada, especifique el tipo de datos como TABLE y, a continuación, proporcione la lista de las columnas anidadas que se deben incluir en el modelo, encerrada entre paréntesis.
Para definir una expresión de filtro que se aplique a la tabla anidada, adjunte una expresión de criterios de filtro después de la definición de columna de la tabla anidada.
Marcadores de modelado
Analysis Services admite los marcadores de modelado siguientes en las columnas del modelo de minería de datos:
Nota
El marcador de modelado NOT_NULL se aplica a la columna de estructura de minería de datos. Para obtener más información, vea CREATE MINING STRUCTURE (DMX).
Término |
Definición |
REGRESSOR |
Indica que el algoritmo puede usar la columna especificada en la fórmula de regresión de algoritmos de regresión. |
MODEL_EXISTENCE_ONLY |
Indica que los valores de la columna de atributos no son tan importantes como la presencia del atributo. |
Puede definir varios indicadores de modelado para una columna. Para obtener más información sobre cómo utilizar los marcadores de modelado, vea Marcas de modelado (DMX).
Cláusula de predicción
La cláusula de predicción describe cómo se usa la columna de predicción. En la tabla siguiente se enumeran las cláusulas posibles.
PREDICT |
Esta columna puede predecirla el modelo y sus valores se pueden usar como entrada para predecir el valor de otras columnas de predicción. |
PREDICT_ONLY |
Esta columna puede predecirla el modelo, pero sus valores no se pueden utilizar en escenarios de entrada para predecir el valor de otras columnas de predicción. |
Expresiones de criterios de filtro
Puede definir un filtro que restrinja los casos que se utilizan en el modelo de minería de datos. El filtro se puede aplicar a las columnas de la tabla de casos, a las filas de la tabla anidada, o a ambas.
Las expresiones de criterios de filtro son predicados DMX simplificados, similares a una cláusula WHERE. Las expresiones de filtro se reducen a fórmulas que utilizan operadores matemáticos básicos, escalares y nombres de columna. La excepción la constituye el operador EXISTS; se evalúa como TRUE si la subconsulta devuelve al menos una fila. Los predicados se pueden combinar mediante los operadores lógicos comunes: AND, OR y NOT.
Para obtener más información acerca de los filtros que se utilizan con los modelos de minería de datos, vea Crear filtros para modelos de minería de datos (Analysis Services - Minería de datos).
Nota
Las columnas de un filtro deben ser columnas de estructura de minería de datos. No se puede crear un filtro para una columna del modelo ni para una columna con alias.
Para obtener más información sobre los operadores y la sintaxis de DMX, vea Columnas del modelo de minería de datos.
Lista de definiciones de parámetros
Para ajustar el rendimiento y la funcionalidad de un modelo, se pueden agregar parámetros del algoritmo a la lista de parámetros. Los parámetros que se pueden utilizar dependen del algoritmo que se especifique en la cláusula USING. Para obtener una lista de los parámetros asociados con cada algoritmo, vea Algoritmos de minería de datos (Analysis Services: Minería de datos).
La sintaxis de la lista de parámetros es:
[<parameter> = <value>, <parameter> = <value>,…]
Ejemplo 1: agregar un modelo a una estructura
En el ejemplo siguiente se agrega un modelo de minería de datos Bayes naive a la estructura de minería de datos New Mailing y se limita el número máximo de estados de atributo a 50.
ALTER MINING STRUCTURE [New Mailing]
ADD MINING MODEL [Naive Bayes]
(
CustomerKey,
Gender,
[Number Cars Owned],
[Bike Buyer] PREDICT
)
USING Microsoft_Naive_Bayes (MAXIMUM_STATES = 50)
Ejemplo 2: agregar un modelo filtrado a una estructura
En el ejemplo siguiente se agrega el modelo de minería de datos Naive Bayes Women a la estructura de minería de datos New Mailing. El nuevo modelo tiene la misma estructura básica que el modelo de minería de datos que se agregó en el ejemplo 1; sin embargo, este modelo restringe los casos de la estructura de minería de datos a las clientas con una edad superior a 50 años.
ALTER MINING STRUCTURE [New Mailing]
ADD MINING MODEL [Naive Bayes Women]
(
CustomerKey,
Gender,
[Number Cars Owned],
[Bike Buyer] PREDICT
)
USING Microsoft_Naive_Bayes
WITH FILTER([Gender] = 'F' AND [Age] >50)
Ejemplo 3: agregar un modelo filtrado a una estructura con una tabla anidada
En el ejemplo siguiente se agrega un modelo de minería de datos a una versión modificada de la estructura de minería de datos Market Basket. La estructura de minería de datos utilizada en el ejemplo se ha modificado para agregar una columna Region, que contiene atributos para la región del cliente, y una columna Income Group, que clasifica los ingresos de los clientes mediante valores como High, Moderate o Low.
La estructura de minería de datos también incluye una tabla anidada que contiene los artículos comprados por el cliente.
Dado que la estructura de minería de datos contiene una tabla anidada, es posible definir un filtro para la tabla de casos, la tabla anidada, o ambas. En este ejemplo se combinan un filtro de casos y uno de filas anidadas para restringir los casos a los clientes europeos adinerados que compraron uno de los modelos con neumáticos de carretera.
ALTER MINING STRUCTURE [Market Basket with Region and Income]
ADD MINING MODEL [Decision Trees]
(
CustomerKey,
Region,
[Income Group],
[Product] PREDICT (Model)
WITH FILTER (EXISTS (SELECT * FROM [v Assoc Seq Line Items] WHERE
[Model] = 'HL Road Tire' OR
[Model] = 'LL Road Tire' OR
[Model] = 'ML Road Tire' )
)
) WITH FILTER ([Income Group] = 'High' AND [Region] = 'Europe')
USING Microsoft_Decision Trees