61 votos

¿Cómo aplicar la estandarización/normalización a los conjuntos de entrenamiento y pruebas si el objetivo es la predicción?

  1. ¿Transformo todos mis datos o pliegues (si se aplica la CV) al mismo tiempo? por ejemplo

    (allData - mean(allData)) / sd(allData)

  2. ¿Debo transformar el conjunto de trenes y el conjunto de pruebas por separado?

    (trainData - mean(trainData)) / sd(trainData)

    (testData - mean(testData)) / sd(testData)

  3. ¿O debo transformar el conjunto de trenes y utilizar los cálculos en el conjunto de pruebas?

    (trainData - mean(trainData)) / sd(trainData)

    (testData - mean(trainData)) / sd(trainData)

Creo que el 3 es el camino correcto. Si la 3 es correcta, ¿tengo que preocuparme de que la media no sea 0 o que el rango no esté entre [0; 1] o [-1; 1] (normalización) del conjunto de pruebas?

55voto

eldering Puntos 3814

La tercera vía es la correcta. El motivo exacto se explica con gran detalle en Los elementos del aprendizaje estadístico Véase la sección "La forma correcta e incorrecta de realizar la validación cruzada", y también en el capítulo final de Aprender de los datos En el ejemplo del mercado de valores.

Esencialmente, los procedimientos 1 y 2 filtran información sobre la respuesta, o del futuro, de su conjunto de datos retenidos en el entrenamiento, o evaluación, de su modelo. Esto puede causar un considerable sesgo de optimismo en la evaluación del modelo.

La idea en la validación del modelo es imitar la situación en la que se encontraría cuando su modelo está tomando decisiones de producción, cuando no tiene acceso a la verdadera respuesta. La consecuencia es que no se puede utilizar la respuesta del conjunto de pruebas para nada excepto comparando con sus valores previstos.

Otra forma de enfocarlo es imaginar que sólo tiene acceso a un punto de datos de su retención a la vez (una situación común para los modelos de producción). Todo lo que no puede hacer bajo esta suposición debe tener una gran sospecha. Está claro que una cosa que no se puede hacer es agregar todos los nuevos puntos de datos pasados y futuros para normalizar el flujo de datos de producción, por lo que hacer lo mismo para la validación del modelo no es válido.

No tienes que preocuparte de que la media de tu conjunto de pruebas sea distinta de cero, esa es una situación mejor que la de sesgar tus estimaciones de rendimiento. Aunque, por supuesto, si la prueba se extrae realmente de la misma distribución subyacente que el tren (un supuesto esencial en el aprendizaje estadístico), dicha media debería ser aproximadamente cero.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X