¿Cuál es la diferencia entre los datos de entrenamiento y los datos de prueba?

Cuando llegue el momento de entrenar a su clasificador o modelo, necesitará dividir sus datos en pruebas y datos de entrenamiento .

Por lo general, la mayoría de sus datos se destinarán a sus datos de entrenamiento, mientras que solo el 10-25% de sus datos se destinarán a pruebas. La capacitación informa a un modelo sobre cómo debería funcionar y tomar sus decisiones. Las pruebas solo nos dan una idea de qué tan bien está funcionando el clasificador.

Es importante tener en cuenta que no hay superposición entre los dos . En caso de que se superponga o use todos sus datos de entrenamiento para las pruebas, sus resultados de precisión serán incorrectos. Obviamente, cualquier clasificador que se pruebe en los datos que está entrenando funcionará muy bien, ya que habrá observado esos resultados antes, por lo que la precisión será alta, pero erróneamente.

Si tiene un conjunto de datos con el que desea crear un algoritmo de aprendizaje automático supervisado, utilizará una fracción de este conjunto de datos para crear el modelo y otra fracción para probarlo.

La razón de esta distinción es porque cuando crea una función basada en datos de entrada y salida, probablemente será mucho mejor si se prueba con su misma fuente de información o conjunto de entrenamiento , que si se prueba con nueva información .

Por ejemplo, si tiene un gran conjunto de datos con muestras de densidad de lluvia dada la temperatura en una región determinada y desea hacer un algoritmo para predecir el clima , si usa todo el conjunto de datos para hacer el modelo, tendrá que esperar varios meses para recopilar nuevos datos y ver si llovió dada la predicción de su algoritmo para medir su calidad (por ejemplo, Precisión y recuperación).

Si divide su conjunto de datos inicial en un conjunto de entrenamiento (para hacer el algoritmo) y un conjunto de prueba (para probarlo con nueva información), está simulando exactamente eso y no tiene que esperar.

La relación de convención general es 80/20 (entrenamiento / prueba).

Gracias Yashashri Pahade por A2A. Agregaré uno más en la lista. Hay tres tipos de conjunto de datos. Discutiré todos ellos en detalle.

Cuando tiene un conjunto de datos grande , se recomienda dividirlo en 3 partes :

  1. Conjunto de entrenamiento (60% del conjunto de datos original) : se utiliza para desarrollar nuestro algoritmo de predicción y para ajustar los pesos en la red neuronal. Nuestro algoritmo intenta sintonizarse con las peculiaridades de los conjuntos de datos de entrenamiento. En esta fase, generalmente creamos múltiples algoritmos para comparar sus rendimientos durante la Fase de Validación Cruzada. Cada tipo de algoritmo tiene sus propias opciones de parámetros (el número de capas en una red neuronal, el número de árboles en un bosque aleatorio, etc.). Para cada uno de sus algoritmos, debe elegir una opción. Por eso tienes un set de entrenamiento.
  2. Conjunto de validación cruzada (20% del conjunto de datos original): este conjunto de datos se utiliza para comparar el rendimiento de los algoritmos de predicción que se crearon en función del conjunto de entrenamiento. Ahora tiene una colección de algoritmos. Debe elegir un algoritmo que tenga el mejor rendimiento. Es por eso que tienes un conjunto de prueba. Un conjunto de datos de validación es una muestra de datos retenidos del entrenamiento de su modelo que se utiliza para dar una estimación de la habilidad del modelo mientras se ajustan los hiperparámetros del modelo. Este conjunto de datos se utiliza para minimizar el ajuste excesivo. No está ajustando los pesos de la red con este conjunto de datos, solo está verificando que cualquier aumento en la precisión sobre el conjunto de datos de entrenamiento realmente produce un aumento en la precisión sobre un conjunto de datos que no se ha mostrado a la red antes, o al menos la red no se ha entrenado en él (es decir, conjunto de datos de validación). Si la precisión sobre el conjunto de datos de entrenamiento aumenta, pero la precisión sobre el conjunto de datos de validación permanece igual o disminuye, entonces está ajustando demasiado su red neuronal y debe dejar de entrenar .
  3. Conjunto de prueba (20% del conjunto de datos original): ahora hemos elegido nuestro algoritmo de predicción preferido, pero aún no sabemos cómo funcionará con datos del mundo real completamente invisibles. Por lo tanto, aplicamos nuestro algoritmo de predicción elegido en nuestro conjunto de pruebas para ver cómo funcionará para poder tener una idea sobre el rendimiento de nuestro algoritmo en datos no vistos. Supongo que si sus algoritmos no tuvieran ningún parámetro, entonces no necesitaría un tercer paso. En ese caso, su paso de validación sería su paso de prueba. Este conjunto de datos se usa solo para probar la solución final a fin de confirmar el poder predictivo real de la red.

Notas:

  1. Es muy importante tener en cuenta que no se recomienda omitir la fase de prueba, porque el algoritmo que funcionó bien durante la fase de validación cruzada realmente no significa que sea realmente el mejor, porque los algoritmos se comparan en función de la fase cruzada. conjunto de validación y sus peculiaridades y ruidos.
  2. Durante la fase de prueba, el propósito es ver cómo nuestro modelo final se enfrentará en la naturaleza, por lo que en caso de que su rendimiento sea muy bajo, debemos repetir todo el proceso a partir de la fase de capacitación.

Fuente: Introducción al análisis de patrones, Ricardo Gutierrez-OsunaTexas A&M University, Texas A&M University

El conjunto de entrenamiento es aquel en el que entrenamos y ajustamos nuestro modelo básicamente para ajustar los parámetros, mientras que los datos de prueba se usan solo para evaluar el rendimiento del modelo.

La salida de los datos de entrenamiento está disponible para modelar, mientras que los datos de prueba son los datos invisibles para los que se deben hacer predicciones.

Por lo general, los datos de entrenamiento son más grandes que los datos de prueba.

Sin embargo, el modelo generalmente puede sobreajustar los datos de entrenamiento y el error del conjunto de entrenamiento puede subestimar el error del conjunto de prueba. Por lo tanto, se selecciona un conjunto aleatorio de muestras de datos de entrenamiento que no se usa para entrenar el modelo sino para ajustar los hiperparámetros del modelo. Este conjunto se denomina conjunto de validación.

Entonces, durante el modelado, entrenamos nuestros datos para que se ajusten a los parámetros de nuestro modelo en el conjunto de entrenamiento.

Ajuste los hiperparámetros en el conjunto de validación.

Realice una evaluación final de nuestro modelo ajustado en el conjunto de pruebas.

En un aprendizaje supervisado, utiliza un conjunto de datos de entrenamiento, que contiene resultados, para entrenar la máquina. Luego, utiliza un conjunto de datos de prueba que no tiene resultados para predecir los resultados.

Por ejemplo, tiene un conjunto de datos de estudiantes con sus datos demográficos, horas dedicadas a practicar para el SAT, libros que han leído durante todo el año, horas dedicadas por día a estudiar para el examen y los resultados del SAT para los años 2005–2016. Este es su conjunto de datos de entrenamiento, ya que los resultados de los puntajes de sus exámenes ya se conocen. El algoritmo se entrenará para predecir cada puntaje, en función de los parámetros de los estudiantes.

Tiene un conjunto de datos similar de estudiantes, con los mismos datos, excepto por los puntajes del SAT. Este es su conjunto de datos de prueba, y el algoritmo predecirá el resultado, en función de los datos históricos de estudiantes similares.

Los datos de entrenamiento se utilizan para adaptarse a su modelo.

Los datos de prueba se utilizan para validar su modelo. Si ve una gran diferencia de rendimiento, el modelo no está validado.

Los datos de entrenamiento son datos para el modelo de construcción y los datos de prueba son datos para el modelo de prueba. El modelo de prueba es bueno o no bueno.