ComenzarEmpieza gratis

¿Necesitamos más datos?

Es hora de comprobar si el conjunto de datos de dígitos model que has creado se beneficia de más ejemplos de entrenamiento.

Para reducir el código al mínimo, varias cosas ya están inicializadas y listas para usar:

  • El model que acabas de construir.
  • X_train,y_train,X_test, y y_test.
  • El initial_weights de su modelo, guardado después de utilizar model.get_weights().
  • Una lista predefinida de tamaños de entrenamiento: training_sizes.
  • Una pérdida predefinida de monitorización de devolución de llamada de parada anticipada: early_stop.
  • Dos listas vacías para almacenar los resultados de la evaluación: train_accs y test_accs.

Entrena tu modelo con los distintos tamaños de entrenamiento y evalúa los resultados en X_test. Termine trazando los resultados con plot_results().

El código completo de este ejercicio se encuentra en las diapositivas.

Este ejercicio forma parte del curso

Introducción al aprendizaje profundo con Keras

Ver curso

Instrucciones de ejercicio

  • Obtener una fracción de los datos de entrenamiento determinados por el size que estamos evaluando actualmente en el bucle.
  • Establezca los pesos del modelo en initial_weights con set_weights() y entrene su modelo en la fracción de datos de entrenamiento utilizando early_stop como callback.
  • Evalúa y almacena la precisión para la fracción de entrenamiento y el conjunto de prueba.
  • Llame a plot_results() pasando en las precisiones de entrenamiento y prueba para cada tamaño de entrenamiento.

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

for size in training_sizes:
  	# Get a fraction of training data (we only care about the training data)
    X_train_frac, y_train_frac = X_train[:size], y_train[:size]

    # Reset the model to the initial weights and train it on the new training data fraction
    model.set_weights(____)
    model.fit(X_train_frac, y_train_frac, epochs = 50, callbacks = [early_stop])

    # Evaluate and store both: the training data fraction and the complete test set results
    train_accs.append(model.evaluate(____, ____)[1])
    test_accs.append(model.evaluate(____, ____)[1])
    
# Plot train vs test accuracies
plot_results(____, ____)
Editar y ejecutar código