ÎncepețiÎncepe gratuit

Avem nevoie de mai multe date?

E momentul să verifici dacă modelul construit pe setul de date digits beneficiază de mai multe exemple de antrenament!

Pentru a păstra codul cât mai concis, mai multe elemente sunt deja inițializate și gata de utilizare:

  • Modelul model pe care tocmai l-ai construit.
  • X_train, y_train, X_test și y_test.
  • initial_weights – ponderile inițiale ale modelului, salvate cu model.get_weights().
  • O listă predefinită de dimensiuni de antrenament: training_sizes.
  • Un callback de oprire timpurie predefinit, care monitorizează pierderea: early_stop.
  • Două liste goale pentru stocarea rezultatelor evaluării: train_accs și test_accs.

Antrenează modelul pe diferite dimensiuni ale setului de antrenament și evaluează rezultatele pe X_test. Încheie prin vizualizarea rezultatelor cu plot_results().

Codul complet pentru acest exercițiu îl găsești pe slide-uri!

Acest exercițiu face parte din cursul

Introducere în Deep Learning cu Keras

Vezi cursul

Instrucțiuni pentru exercițiu

  • Extrage o fracțiune din datele de antrenament, determinată de valoarea size evaluată în acel moment în buclă.
  • Setează ponderile modelului la initial_weights folosind set_weights() și antrenează modelul pe fracțiunea de date de antrenament, utilizând early_stop ca callback.
  • Evaluează și stochează acuratețea pentru fracțiunea de antrenament și pentru setul de testare.
  • Apelează plot_results() transmițând acuratețile de antrenament și de testare pentru fiecare dimensiune de antrenament.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

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(____, ____)
Editează și rulează codul