CREATE MINING MODEL (DMX)

Crea un nuevo modelo de minería de datos y una estructura de minería de datos en la base de datos. Para crear un modelo, puede definir el nuevo modelo en la instrucción o usar el Lenguaje de marcado de modelos de predicción (PMML). Esta segunda opción es sólo para usuarios expertos.

Para asignar el nombre a la estructura de minería de datos, se anexa "_structure" al nombre de modelo, lo que garantiza que el nombre de la estructura sea distinto del nombre de modelo.

Para crear un modelo de minería de datos para una estructura existente, use la instrucción ALTER MINING STRUCTURE (DMX).

Sintaxis

CREATE [SESSION] MINING MODEL <model>
(
    [(<column definition list>)]
)
USING <algorithm> [(<parameter list>)] [WITH DRILLTHROUGH]
CREATE MINING MODEL <model> FROM PMML <xml string>

Argumentos

model

Nombre único del modelo.

column definition list

Lista delimitada por comas de definiciones de columna.

algorithm

Nombre definido por el proveedor de un proveedor de minería de datos.

parameter list

Opcional. Lista delimitada por comas de parámetros definidos por el proveedor para el algoritmo.

XML string

(Sólo para usuarios expertos.) Modelo XML codificado (PMML). La cadena debe estar entre comillas simples (').

Notas

La cláusula SESSION le permite crear un modelo de minería de datos que se quita automáticamente del servidor cuando se cierra la conexión o finaliza la sesión. Los modelos de minería de datos SESSION son útiles porque no requieren que el usuario sea administrador de base de datos y sólo usan espacio en disco mientras esté abierta la conexión.

La cláusula WITH DRILLTHROUGH permite la obtención de detalles del nuevo modelo de minería de datos. La obtención de detalles sólo se puede habilitar al crear el modelo.

La instrucción CREATE MINING MODEL crea un nuevo modelo de minería basado en la lista de definiciones de columna, el algoritmo y la lista de parámetros del algoritmo.

Lista de definiciones de columna

Para definir la estructura de un modelo que usa la lista de definiciones de columna, debe incluir la siguiente información para cada columna:

  • Nombre (obligatorio)
  • Tipo de datos (obligatorio)
  • Distribución
  • Lista de indicadores de modelado
  • Tipo de contenido (obligatorio)
  • Solicitud de predicción, que indica al algoritmo que debe predecir esta columna, indicada por la cláusula PREDICT o PREDICT_ONLY
  • Relación con una columna de atributos (obligatoria sólo si corresponde), indicada por la cláusula RELATED TO

Use la siguiente sintaxis en la lista de definición de columnas para definir una sola columna:

<column name>    <data type>    [<Distribution>]    [<Modeling Flags>]    <Content Type>    [<prediction>]    [<column relationship>] 

Use la siguiente sintaxis en la lista de definición de columnas para definir una columna de tabla anidada:

<column name>    TABLE    [<prediction>] ( <non-table column definition list> )

Excepto en el caso de los indicadores de modelado, sólo se puede usar una única cláusula de un grupo específico para definir una columna. Puede definir varios indicadores de modelado para una columna.

Para obtener una lista de los tipos de datos, tipos de contenido, distribuciones de columnas e indicadores de modelado que puede usar en la definición de una columna, vea los siguientes temas:

Puede agregar una cláusula a la instrucción para describir la relación existente entre dos columnas. Analysis Services admite el uso de la cláusula <Column relationship>.

RELATED TO

Indica una jerarquía de valores. El destino de una columna RELATED TO puede ser una columna de clave de una tabla anidada, una columna de valores discretos en la fila de escenario u otra columna con una cláusula RELATED TO, que indica una jerarquía de más niveles.

Use una cláusula de predicción para describir el uso de la columna de predicción. La siguiente tabla describe las dos cláusulas posibles.

Cláusula <prediction> Descripción

PREDICT

Esta columna puede predecirla el modelo y puede proporcionarse en escenarios de 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.

Lista de definiciones de parámetros

Puede usar la lista de parámetros para ajustar el rendimiento y la funcionalidad de un modelo de minería de datos. La sintaxis de la lista de parámetros es:

[<parameter> = <value>, <parameter> = <value>,…]

Para obtener una lista de los parámetros asociados con cada algoritmo, vea Algoritmos de minería de datos.

Ejemplo de Bayes naive

En el siguiente ejemplo se usa el algoritmo Bayes naive de Microsoft para crear un nuevo modelo de minería de datos. La columna Bike Buyer se define como atributo de predicción.

CREATE MINING MODEL [NBSample]
(
    CustomerKey LONG KEY, 
    Gender TEXT DISCRETE,
    [Number Cars Owned] LONG DISCRETE,
    [Bike Buyer] LONG DISCRETE PREDICT
)
Using Microsoft_Naive_Bayes

Ejemplo de modelo de asociación

En el siguiente ejemplo se usa el algoritmo de asociación de Microsoft para crear un nuevo modelo de minería de datos. La instrucción aprovecha la capacidad de usar una columna de tabla para anidar tablas dentro de la definición de modelo. El modelo se modifica con los parámetros Minimum_Probability y Minimum_Support.

CREATE MINING MODEL MyAssociationModel (
    OrderNumber TEXT KEY,
    [Products] TABLE PREDICT (
        [Model] TEXT KEY
    )
)
Using Microsoft_Association_Rules (Minimum_Probability = 0.1, Minimum_Support = 0.01)

Ejemplo de clústeres de secuencia

En el siguiente ejemplo se usa el algoritmo de clústeres de secuencia de Microsoft para crear un nuevo modelo de minería de datos. Se usan dos claves para definir el modelo. Order Number especifica pedidos individuales. Line Number indica la secuencia en que se agregaron los elementos a un pedido.

CREATE MINING MODEL BuyingSequence (
    [Order Number] TEXT KEY,
    [Products] TABLE (
        [Line Number] LONG KEY SEQUENCE,
        [Model] TEXT DISCRETE PREDICT
)
)
Using Microsoft_Sequence_Clustering

Ejemplo de serie temporal

En el siguiente ejemplo se usa el algoritmo de serie temporal de Microsoft para crear un nuevo modelo de minería de datos. Puesto que un modelo de serie temporal puede contener varias claves, se designan TimeIndex y ModelRegion como columnas de clave. En este ejemplo se supone que la periodicidad de los datos es cada 12 meses, por lo que el parámetro PERIODICITY_HINT está establecido en 12.

[!NOTA] Para especificar el parámetro PERIODICITY_HINT, debe usar llaves "{}".

CREATE MINING MODEL SalesForcast (
        TimeIndex LONG KEY TIME,
        ModelRegion TEXT KEY,
        Amount LONG CONTINUOUS PREDICT,
        Quantity LONG CONTINUOUS PREDICT
)
Using Microsoft_Time_Series (PERIODICITY_HINT = '{12}')

Vea también

Referencia

Instrucciones de definición de datos de Extensiones de minería de datos (DMX)
Instrucciones de manipulación de datos de Extensiones de minería de datos (DMX)
Referencia de instrucciones de Extensiones de minería de datos (DMX)

Ayuda e información

Obtener ayuda sobre SQL Server 2005