Algoritmo de asociación de Microsoft

Actualizado: 17 de noviembre de 2008

Este algoritmo de Microsoft es un algoritmo de asociación que proporciona Microsoft SQL Server 2005 Analysis Services (SSAS), útil para los motores de recomendación. Un motor de recomendación recomienda productos a los clientes basándose en los elementos que ya han adquirido o en los que tienen interés. El algoritmo de asociación de Microsoft también resulta útil para el análisis de la cesta de compra. Para obtener más información sobre el análisis de la cesta de compra, vea Lección 4: Crear el escenario de cesta de mercado en el tutorial de minería de datos.

Los modelos de asociación se generan basándose en conjuntos de datos que contienen identificadores para escenarios individuales y para los elementos que contienen los escenarios. Un grupo de elementos de un escenario se denomina un conjunto de elementos. Un modelo de asociación se compone de una serie de conjuntos de elementos y de las reglas que describen cómo estos elementos se agrupan dentro de los escenarios. Las reglas que el algoritmo identifica pueden utilizarse para predecir las probables compras de un cliente en el futuro, basándose en los elementos existentes en la cesta de compra actual del cliente. El siguiente diagrama muestra una serie de reglas en un conjunto de elementos.

Conjunto de reglas de un modelo de asociación

Como muestra el diagrama, el algoritmo de asociación de Microsoft puede encontrar potencialmente muchas reglas dentro de un conjunto de datos. El algoritmo usa dos parámetros, compatibilidad y probabilidad, para describir los conjuntos de elementos y las reglas que genera. Por ejemplo, si X e Y representan dos elementos que pueden formar parte de una cesta de compra, el parámetro de compatibilidad es el número de casos del conjunto de datos que contienen la combinación de elementos, X e Y. Mediante el uso del parámetro de compatibilidad en combinación con los parámetros MINIMUM_SUPPORT y MAXIMUM_SUPPORT definidos por el usuario, el algoritmo controla el número de conjuntos de elementos que se generan. El parámetro de probabilidad, denominado también confianza, representa la fracción de casos del conjunto de datos que contiene X y que también contiene Y. Mediante el uso del parámetro de probabilidad en combinación con el parámetro MINIMUM_PROBABILITY, el algoritmo controla el número de reglas que se generan.

Ejemplo

La empresa Adventure Works Cycles está rediseñando la funcionalidad de su sitio web. El objetivo del nuevo diseño es incrementar la venta directa de sus productos. Debido a que la empresa registra cada venta en una base de datos transaccional, se puede utilizar el algoritmo de asociación de Microsoft para identificar los conjuntos de productos que suelen adquirirse juntos. Así, se pueden predecir los elementos adicionales en los que un cliente puede interesarse, basándose en los elementos que ya se encuentran en su cesta de compra.

Cómo funciona el algoritmo

El algoritmo de asociación de Microsoft recorre un conjunto de datos para hallar elementos que aparezcan juntos en un escenario. A continuación, agrupa en conjuntos de elementos todos los elementos asociados que aparecen, como mínimo, en el número de casos especificado en el parámetro MINIMUM_SUPPORT. Por ejemplo, un conjunto de elementos podría ser "Mountain 200=Existing, Sport 100=Existing" y podría tener una compatibilidad de 710. A continuación, el algoritmo genera las reglas a partir de los conjuntos de elementos. Estas reglas se usan para predecir la presencia de un elemento en la base de datos, basándose en la presencia de otros elementos específicos que el algoritmo ha identificado como importantes. Por ejemplo, una regla puede ser "if Touring 1000=existing and Road bottle cage=existing, then Water bottle=existing", y puede tener una probabilidad de 0.812. En este ejemplo, el algoritmo identifica que la presencia en la cesta del neumático Touring 1000 y del soporte de la botella de agua predice que probablemente la cesta de compra incluirá también una botella de agua.

Usar el algoritmo

Un modelo de asociación debe contener una columna de clave, columnas de entradas y una columna de predicción. Las columnas de entrada deben ser discretas. Los datos de entrada de un modelo de asociación suelen encontrarse en dos tablas. Por ejemplo, una tabla puede contener la información del cliente y la otra las compras de ese cliente. Es posible incluir estos datos en el modelo mediante el uso de una tabla anidada. Para obtener más información sobre las tablas anidadas, vea Tablas anidadas.

El algoritmo de asociación de Microsoft admite tipos de contenido de columna de entrada, tipos de contenido de columna de predicción e indicadores de modelado específicos que aparecen en la tabla siguiente.

Tipos de contenido de columna de entrada

Cyclical, Discrete, Discretized, Key, Table y Ordered

Tipos de contenido de columna de predicción

Cyclical, Discrete, Discretized, Table y Ordered

Indicadores de modelado

MODEL_EXISTENCE_ONLY y NOT NULL

Todos los algoritmos de Microsoft son compatibles con un conjunto común de funciones. Sin embargo, el algoritmo de asociación Microsoft admite funciones adicionales, que aparecen en la tabla siguiente.

IsDescendant

PredictHistogram

IsInNode

PredictNodeId

PredictAdjustedProbability

PredictProbability

PredictAssociation

PredictSupport

Para consultar una lista de las funciones comunes a todos los algoritmos de Microsoft, vea Algoritmos de minería de datos. Para obtener más información sobre cómo usar estas funciones, vea Referencia de funciones de Extensiones de minería de datos (DMX).

El algoritmo de asociación de Microsoft no admite el uso del lenguaje de marcado de modelos de predicción (PMML) para crear modelos de minería de datos.

El algoritmo de asociación de Microsoft admite varios parámetros que afectan al rendimiento y la precisión del modelo de minería de datos resultante. En la siguiente tabla se describen estos parámetros.

Parámetro

Descripción

MINIMUM_SUPPORT

Especifica el número mínimo de escenarios que deben contener el conjunto de elementos antes de que el algoritmo genere una regla. Si se establece un valor inferior a 1, se especifica el número mínimo de escenarios como un porcentaje de los escenarios totales. Si se establece un número entero mayor que 1, se especifica el número mínimo de escenarios como el número absoluto de escenarios que debe contener el conjunto de elementos. Si la memoria es limitada, el algoritmo puede incrementar el valor de este parámetro.

El valor predeterminado es 0.03.

MAXIMUM_SUPPORT

Especifica el número máximo de escenarios en los que un conjunto de elementos puede ser compatible. Si este valor es menor que 1, el valor representa un porcentaje del total de escenarios. Los valores mayores que 1 representan el número absoluto de escenarios que puede contener el conjunto de elementos.

El valor predeterminado es 1.

MINIMUM_ITEMSET_SIZE

Especifica el número mínimo de elementos que se admiten en un conjunto de elementos.

El valor predeterminado es 1.

MAXIMUM_ITEMSET_SIZE

Especifica el número máximo de elementos que se admiten en un conjunto de elementos. Si se establece un valor de 0, se indica que no hay límite para el tamaño del conjunto de elementos.

El valor predeterminado es 3.

MAXIMUM_ITEMSET_COUNT

Especifica el número máximo de conjuntos de elementos que se van a generar. Si no se especifica ningún número, se utiliza el valor predeterminado. El valor predeterminado es 200000.

ms174916.note(es-es,SQL.90).gifNota:

Los conjuntos de elementos se clasifican únicamente por compatibilidad. Entre los conjuntos de elementos que tengan la misma compatibilidad, la ordenación es arbitraria.

MINIMUM_PROBABILITY

Especifica la probabilidad mínima de que se cumpla una regla. Por ejemplo, si se establece este valor en 0.5, se determina que no se genera ninguna regla con menos del cincuenta por ciento de probabilidad.

El valor predeterminado es 0.4.

OPTIMIZED_PREDICTION_COUNT

Define el número de elementos que se van a almacenar en caché u optimizar para la predicción.

El valor predeterminado es 0. Cuando se utiliza el valor predeterminado, el algoritmo generará tantas predicciones como se solicite en la consulta.

Historial de cambios

Versión Historial

17 de noviembre de 2008

Contenido nuevo:
  • Se agregó la descripción del valor predeterminado y del comportamiento predeterminado de OPTIMIZED_PREDICTION_COUNT.

15 de septiembre de 2007

Contenido modificado:
  • Se corrigió la descripción del comportamiento predeterminado de MAXIMUM_ITEMSET_COUNT.
  • Para obtener información sobre los problemas relacionados con el valor predeterminado de MINIMUM_SUPPORT, vea Microsoft Knowledge Base.

Vea también

Conceptos

Algoritmos de minería de datos
Asistente para minería de datos
Usar las herramientas de minería de datos
Ver un modelo de minería de datos con el Visor de reglas de asociación de Microsoft

Otros recursos

CREATE MINING MODEL (DMX)

Ayuda e información

Obtener ayuda sobre SQL Server 2005