MulaiMulai sekarang secara gratis

Mencoba jaringan yang lebih lebar

Sekarang Anda sudah mengetahui semua yang diperlukan untuk mulai bereksperimen dengan berbagai model!

Sebuah model bernama model_1 telah dimuat sebelumnya. Anda dapat melihat ringkasan model ini yang dicetak di IPython Shell. Ini adalah jaringan yang relatif kecil, dengan hanya 10 unit di setiap lapisan tersembunyi.

Dalam latihan ini Anda akan membuat model baru bernama model_2 yang mirip dengan model_1, tetapi memiliki 100 unit di setiap lapisan tersembunyi.

Setelah Anda membuat model_2, kedua model akan dilatih, dan sebuah grafik yang menampilkan skor loss kedua model pada setiap epoch akan ditampilkan. Kami menambahkan argumen verbose=False pada perintah pelatihan untuk mengurangi jumlah pembaruan yang dicetak, karena Anda akan melihatnya secara grafis alih-alih sebagai teks.

Karena Anda melatih dua model, perlu sedikit waktu untuk melihat Hasil setelah Anda menekan run, jadi harap bersabar.

Latihan ini adalah bagian dari kursus

Pengantar Deep Learning dengan Python

Lihat Kursus

Petunjuk latihan

  • Buat model_2 untuk mereplikasi model_1, tetapi gunakan 100 node alih-alih 10 untuk dua lapisan Dense pertama yang Anda tambahkan dengan aktivasi 'relu'. Gunakan 2 node untuk lapisan keluaran Dense dengan 'softmax' sebagai activation.
  • Kompilasi model_2 seperti yang telah Anda lakukan pada model sebelumnya: gunakan 'adam' sebagai optimizer, 'categorical_crossentropy' untuk loss, dan metrics=['accuracy'].
  • Tekan 'Kirim Jawaban' untuk melatih kedua model dan memvisualisasikan mana yang memberikan hasil lebih baik! Perhatikan argumen kata kunci verbose=False di model.fit(): Ini akan mencetak lebih sedikit pembaruan, karena Anda akan mengevaluasi model secara grafis alih-alih melalui teks.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Define early_stopping_monitor
early_stopping_monitor = EarlyStopping(patience=2)

# Create the new model: model_2
model_2 = ____

# Add the first and second layers
____.____(____(____, ____=____, input_shape=input_shape))
____

# Add the output layer
____

# Compile model_2
____

# Fit model_1
model_1_training = model_1.fit(predictors, target, epochs=15, validation_split=0.2, callbacks=[early_stopping_monitor], verbose=False)

# Fit model_2
model_2_training = model_2.fit(predictors, target, epochs=15, validation_split=0.2, callbacks=[early_stopping_monitor], verbose=False)

# Create the plot
plt.plot(model_1_training.history['val_loss'], 'r', model_2_training.history['val_loss'], 'b')
plt.xlabel('Epochs')
plt.ylabel('Validation score')
plt.show()
Edit dan Jalankan Kode