Share via


Validación cruzada (Analysis Services - Minería de datos)

La validación cruzada es una herramienta estándar de análisis que resulta muy útil a la hora de desarrollar y ajustar los modelos de minería de datos. La validación cruzada se usa después de crear una estructura de minería de datos y los modelos de minería de datos relacionados para determinar la validez del modelo. La validación cruzada tiene las aplicaciones siguientes:

  • Validar la solidez de un modelo de minería de datos determinado.

  • Evaluar varios modelos de una instrucción única.

  • Generar varios modelos e identificar a continuación el mejor modelo basándose en estadísticas.

En esta sección se describe cómo usar las características de validación cruzada proporcionadas en SQL Server 2008 y cómo interpretar los resultados de validación cruzada para un modelo o un conjunto de datos determinado. Puede ejecutar la validación cruzada como un conjunto de procedimientos almacenados. También puede usar la validación cruzada del Diseñador de minería de datos, en Business Intelligence Development Studio.

Información general sobre el proceso de validación cruzada

La validación cruzada consta de dos fases, entrenamiento y generación de resultados. En estas fases se incluyen los pasos siguientes:

  • Seleccionar una estructura de minería de datos de destino

  • Especificar los modelos que desea probar.

  • Especificar el número de plegamientos en los que desea crear particiones de los datos de la estructura

  • Analysis Services crea y entrena tantos modelos como plegamientos.

  • Para generar los resultados, debe especificar los parámetros de pruebas para los modelos entrenados.

  • Especificación del origen de los datos de pruebas. (Esta característica solo está disponible cuando se usan los procedimientos almacenados).

  • Especificar el atributo de predicción, el valor de predicción y el umbral de precisión.

  • A continuación, Analysis Services devuelve un conjunto de métricas de precisión para cada uno de los plegamientos de cada modelo. También puede devolver métricas de precisión para el conjunto de datos como un todo.

Usar la validación cruzada en el Diseñador de minería de datos

Si realiza la validación cruzada mediante la ficha Validación cruzada de la vista Gráfico de precisión de minería de datos en Business Intelligence Development Studio, puede configurar los parámetros de los resultados de precisión y entrenamiento en un formulario único. Esto facilita la configuración y la visualización de resultados. Puede medir la precisión de todos los modelos de minería datos relacionados con una estructura de minería de datos única y, a continuación, ver inmediatamente los resultados en un informe HTML.

Para obtener más información sobre el formato del informe y las métricas de precisión proporcionadas por la validación cruzada, vea Informe de validación cruzada (Analysis Services - Minería de datos).

Para obtener información sobre cómo configurar los parámetros de validación cruzada en Business Intelligence Development Studio, vea Ficha Validación cruzada (vista Gráfico de precisión de minería de datos).

Usar los procedimientos almacenados de validación cruzada

Para los usuarios expertos, la validación cruzada también está disponible como cuatro procedimientos almacenados de sistema. Puede ejecutar los procedimientos almacenados si se conecta a una instancia de Analysis Services 2008 desde SQL Server Management Studio o desde cualquier aplicación de código administrado.

Los procedimientos almacenados se agrupan por tipo de modelo de minería de datos. El primer par de procedimientos funciona solo con modelos de agrupación en clústeres. El segundo par de procedimientos funciona con otros modelos de minería de datos.

[!NOTA]

La validación cruzada no se puede usar con ningún modelo que contenga una columna KEY TIME o una columna KEY SEQUENCE.

Para cada tipo de modelo de minería de datos, hay dos procedimientos almacenados. El primer procedimiento crea tantas particiones como especifique dentro del conjunto de datos y devuelve los resultados de precisión para cada partición. Para cada métrica, Analysis Services calcula las desviaciones media y estándar para las particiones.

El segundo procedimiento almacenado no crea particiones del conjunto de datos, pero genera resultados de precisión para el conjunto de datos especificados como un todo. También puede usar el segundo procedimiento almacenado si ya se han realizado particiones y se han procesado tanto la estructura de minería de datos como sus modelos.

Realizar particiones de datos y generar métricas para particiones

SystemGetCrossValidationResults (Analysis Services - Minería de datos)

SystemGetClusterCrossValidationResults (Analysis Services - Minería de datos)

Generar métricas para todo el conjunto de datos

SystemGetAccuracyResults (Analysis Services - Minería de datos)

SystemGetClusterAccuracyResults (Analysis Services - Minería de datos)

Configurar la validación cruzada

Puede personalizar el modo de funcionamiento de la validación cruzada para controlar el número de secciones cruzadas, los modelos probados y la barra de precisión para las predicciones. Si usa los procedimientos almacenados de validación cruzada, también puede especificar el conjunto de datos que se usa para validar los modelos. Esta variedad de opciones implica que puede producir con facilidad muchos conjuntos de resultados diferentes que a continuación se deben comparar y analizar.

En esta sección se proporciona información para ayudarle a configurar la validación cruzada correctamente.

Establecer el número de particiones

Al especificar el número de particiones, se determina cuántos modelos temporales se van a crear. Para cada partición se marca una sección transversal de los datos para su uso como conjunto de pruebas y se crea un nuevo modelo mediante entrenamiento en los datos restantes y no en la partición. Este proceso se repite hasta que Analysis Services ha creado y probado el número de modelos especificado. Los datos especificados como disponibles para validación cruzada se distribuyen uniformemente entre todas las particiones.

El ejemplo del diagrama muestra el uso de los datos si se especifican tres plegamientos.

Cómo segmenta la validación cruzada los datos

En el escenario del diagrama, la estructura de minería de datos contiene un conjunto de datos de exclusión que se usa para pruebas, pero el conjunto de datos de pruebas no se ha incluido para la validación cruzada. Como resultado, todos los datos del conjunto de datos de aprendizaje, el 70 por ciento de los datos de la estructura de minería de datos, se usan para validación cruzada. El informe de validación cruzada muestra el número total de casos usados en cada partición.

También puede especificar la cantidad de datos que se usan durante la validación cruzada si especifica el número de casos totales que se van a usar. Los casos se distribuyen de forma uniforme en todos los plegamientos.

Si la estructura de minería de datos está almacenada en una instancia de SQL Server Analysis Services, el valor máximo que puede establecer para el número de plegamientos es 256, o el número de casos, lo que sea menor. Si utiliza una estructura de minería de datos de sesión, el número máximo de plegamientos es 10.

[!NOTA]

A medida que aumenta el número de plegamientos, aumenta en consecuencia el tiempo necesario para realizar la validación cruzada porque se debe generar y probar un modelo para cada plegamiento. Puede experimentar problemas de rendimiento si el número de plegamientos es demasiado alto.

Definir los datos de prueba

Al ejecutar los procedimientos almacenados que calculan precisión, SystemGetAccuracyResults (Analysis Services - Minería de datos) o SystemGetClusterAccuracyResults (Analysis Services - Minería de datos), puede especificar el origen de los datos que se usan para realizar pruebas durante la validación cruzada mediante combinaciones de las opciones siguientes:

  • Usar solo los datos de aprendizaje.

  • Incluir un conjunto de datos de pruebas existente.

  • Usar solo el conjunto de datos de pruebas.

  • Aplicar los filtros existentes a cada modelo.

  • Cualquier combinación del conjunto de entrenamiento, conjunto de pruebas y filtros de modelos.

Puede controlar la composición del conjunto de datos de pruebas si proporciona un valor para el parámetro DataSet.

Si realiza una validación cruzada mediante el informe Validación cruzada en el Diseñador de minería de datos, no puede cambiar el conjunto de datos que se usa. De forma predeterminada, se usan los casos de entrenamiento para cada modelo. Si un filtro está asociado a un modelo, se aplica dicho filtro.

Validación cruzada de modelos de minería de datos filtrados

Si prueba varios modelos de minería de datos y éstos tienen filtros, cada modelo se filtra por separado. No se puede agregar a un modelo un nuevo filtro o cambiar uno existente durante la validación cruzada.

Dado que la validación cruzada prueba de manera predeterminada todos los modelos de minería de datos asociados a una estructura, puede recibir resultados incoherentes si algunos modelos tienen un filtro y otros no. Para asegurarse de que compara solo los modelos que tienen el mismo filtro, debería usar los procedimientos almacenados y especificar una lista de modelos de minería de datos. O bien, use solo el conjunto de pruebas de la estructura de minería de datos sin filtros para asegurarse de que se usa un conjunto coherente de datos para todos los modelos.

Establecer el umbral de precisión

El umbral de estado le permite establecer la barra de precisión para las predicciones. Para cada caso, el modelo calcula una probabilidad, denominada probabilidad de predicción, de que el estado de predicción es correcto. Si la probabilidad de predicción supera la barra de precisión, la predicción se considera correcta; de no ser así, la predicción se cuenta como incorrecta. Para controlar este valor, hay que establecer State Threshold en un número entre 0.0 y 1.0, donde los números más cercanos a 1 indican un alto nivel de confianza en las predicciones, y los números más próximos a 0 indican que hay mayor probabilidad de que la predicción sea verdadera. El valor predeterminado para el umbral de estado es NULL, lo que significa que el estado de predicción con la probabilidad superior se considera el valor de destino.

[!NOTA]

Puede establecer un valor de 0.0, pero carece de significado porque todas las predicciones se contarán como correctas, incluso las de probabilidad cero. Tenga cuidado con no establecer por error State Threshold en 0.0.

Por ejemplo, tiene tres modelos que predicen la columna [Bike Buyer] y el valor que desea predecir es 1, que significa que sí comprará. Los tres modelos devuelven predicciones con probabilidades de predicción de 0.05, 0.15 y 0.8. Si establece el umbral de estado en 0.10, dos de las predicciones se cuentan como correctas. Si establece el umbral de estado en 0.5, solo se cuenta que un modelo ha devuelto una predicción correcta. Si usa el valor predeterminado, null, la predicción más probable se cuenta como correcta. En este caso, las tres predicciones se contarían como correctas.

Métricas usadas en validación cruzada

Se generan diferentes métricas de precisión según el tipo concreto de modelo de minería de datos, el tipo de datos del atributo de predicción y el valor del atributo de predicción, si existe. En esta sección se definen las métricas principales como referencia. Para obtener una lista de las métricas de precisión devueltas en el informe para cada modelo, agrupadas por tipo, vea Informe de validación cruzada (Analysis Services - Minería de datos).

Medida

Se aplica a

Implementación

Clasificación: verdadero positivo, falso positivo, verdadero negativo, falso negativo

Atributo discreto, se especifica el valor.

Recuento de filas o valores en la partición donde la probabilidad de predicción es mayor que el umbral de estado y donde el estado previsto coincide con el estado de destino. Se excluyen los casos con valores ausentes.

Clasificación: sin errores/con errores

Atributo discreto, sin destino especificado

Recuento de filas o valores en la partición donde el estado previsto coincide con el estado de destino y donde el valor de la probabilidad de predicción es mayor que 0. Se excluyen los casos con valores ausentes.

Mejora respecto al modelo predictivo

Atributo discreto. Se puede especificar el valor de destino pero no es necesario.

Probabilidad media de logaritmo para todas las filas con valores para el atributo de destino, donde la probabilidad de logaritmo para cada caso se calcula como Log(ActualProbability/MarginalProbability). Para calcular la media, la suma de los valores de la probabilidad de logaritmo se divide entre el número de filas del conjunto de datos de entrada, excluyendo las filas con valores ausentes para el atributo de destino. La mejora respecto al modelo predictivo puede ser un valor positivo o negativo. Un valor positivo significa un modelo efectivo que supera la estimación aleatoria.

Logaritmo

Atributo discreto. Se puede especificar el valor de destino pero no es necesario.

Logaritmo de la probabilidad real para cada caso, sumado y a continuación dividido entre el número de filas del conjunto de datos de entrada, excluyendo las filas con valores ausentes para el atributo de destino. Dado que la probabilidad se representa como una fracción decimal, los logaritmos son siempre un número negativo. Un número próximo a 0 representa una puntuación mejor.

Probabilidad de casos

Clúster

Suma de las puntuaciones de probabilidad de clúster para todos los casos, dividida por el número de casos de la partición, excluyendo las filas con valores ausentes para el atributo de destino.

Error absoluto medio

Atributo continuo

Suma del error absoluto para todos los casos de la partición, dividida por el número de casos de la partición, excluyendo las filas con valores ausentes.

Error cuadrático medio

Atributo continuo

Raíz cuadrada del error cuadrático de la media para la partición.

Raíz del error cuadrático medio

Atributo discreto. Se puede especificar el valor de destino pero no es necesario.

Raíz cuadrada de la media de los cuadrados del complemento de la puntuación de probabilidad, dividida por el número de casos de la partición, excluyendo las filas con valores ausentes para el atributo de destino.

Raíz del error cuadrático medio

Atributo discreto, sin destino especificado.

Raíz cuadrada de la media de los cuadrados del complemento de la puntuación de probabilidad, dividida por el número de casos de la partición, excluyendo los casos con valores ausentes para el atributo de destino.