Métodos de discretización (minería de datos)
Algunos de los algoritmos que se utilizan para crear modelos de minería de datos en SQL ServerAnalysis Services requieren tipos de contenido específicos para poder funcionar correctamente. Por ejemplo, el algoritmo Bayes naive de Microsoft no puede utilizar columnas continuas como entrada ni predecir valores continuos. Además, algunas columnas pueden contener tal cantidad de valores que el algoritmo no puede identificar con facilidad patrones de interés en los datos para crear un modelo a partir de los mismos.
En estos casos, puede discretizar los datos en las columnas de modo que pueda utilizar los algoritmos para producir un modelo de minería de datos. La discretización es el proceso mediante el cual los valores se incluyen en depósitos para que haya un número limitado de estados posibles. Los depósitos se tratan como si fueran valores ordenados y discretos. Puede discretizar tanto columnas numéricas como de cadena.
Pueden utilizarse varios métodos para discretizar datos. Si la solución de minería de datos usa datos relacionales, puede controlar el número de depósitos que se deben usar para agrupar los datos estableciendo el valor de la propiedad DiscretizationBucketCount. El número predeterminado de depósitos es 5.
Si la solución de minería de datos usa datos de un cubo OLAP (Procesamiento analítico en línea), el algoritmo de minería de datos calcula automáticamente el número de depósitos que se deben generar mediante la siguiente ecuación, donde n es el número de valores de datos distintos existentes en la columna:
Number of Buckets = sqrt(n)
Si no desea que Analysis Services calcule el número de depósitos, puede utilizar la propiedad DiscretizationBucketCount para especificar manualmente el número de depósitos.
La siguiente tabla describe los métodos que puede utilizar para discretizar datos en Analysis Services.
Método de discretización |
Descripción |
---|---|
AUTOMATIC |
Analysis Services determina el método de discretización que se va a utilizar. |
CLUSTERS |
El algoritmo divide los datos en grupos mediante el muestreo de los datos de entrenamiento, inicializa en un número de puntos aleatorios y, a continuación, ejecuta varias iteraciones del algoritmo de clústeres de Microsoft utilizando el método de agrupación en clústeres EM (Expectation Maximization). El método CLUSTERS resulta útil porque funciona en cualquier curva de distribución. Sin embargo, requiere más tiempo de procesamiento que otros métodos de discretización. Este método sólo puede utilizarse con columnas numéricas. |
EQUAL_AREAS |
El algoritmo divide los datos en grupos que contienen el mismo número de valores. Este método es la mejor opción para las curvas de distribución normales, pero no se obtendrán resultados óptimos si la distribución incluye grandes cantidades de valores en un grupo pequeño de los datos continuos. Por ejemplo, si la mitad de los productos tiene un costo de 0, la mitad de los datos se encontrarán bajo un solo punto de la curva. En esta distribución, este método divide los datos en un intento de establecer una discretización igual en varias áreas. Esto produce una representación inexacta de los datos. |
Notas
Puede utilizar el método EQUAL_AREAS para discretizar cadenas.
El método CLUSTERS usa una muestra aleatoria de 1000 registros para discretizar los datos. Utilice el método EQUAL_AREAS si no desea que el algoritmo realice un muestreo de datos.
El tutorial del modelo de minería de datos de redes neuronales proporciona un ejemplo de cómo se puede personalizar la discretización. Para obtener más información, vea Lección 5: Generar modelos de red neuronal y de regresión logística (Tutorial intermedio de minería de datos).
Vea también