BaşlayınÜcretsiz başlayın

Ağırlıklara birden çok güncelleme uygulama

Şimdi birden çok güncelleme yaparak model ağırlıklarını ciddi şekilde iyileştirecek ve her güncellemeyle birlikte tahminlerin nasıl geliştiğini göreceksin.

Kodunu temiz tutmak için, input_data, target ve weights argümanlarını alan, önceden yüklenmiş bir get_slope() fonksiyonu var. Aynı argümanları alan bir get_mse() fonksiyonu da mevcut. input_data, target ve weights önceden yüklendi.

Bu ağın gizli katmanı yok; doğrudan girdiden (3 düğüm) bir çıktı düğümüne gidiyor. weights değerinin tek bir dizi olduğunu unutma.

Ayrıca matplotlib.pyplot da önceden yüklendi ve gradyan inişi adımlarını tamamladıktan sonra hata geçmişi çizdirilecek.

Bu egzersiz, kursun bir parçasıdır

Python ile Deep Learning'e Giriş

Kursa Göz Atın

Egzersiz talimatları

  • Ağırlıkları yinelemeli olarak güncellemek için bir for döngüsü kullan:
    • get_slope() fonksiyonuyla eğimi hesapla.
    • Öğrenme oranı 0.01 kullanarak ağırlıkları güncelle.
    • Güncellenmiş ağırlıklarla get_mse() fonksiyonunu kullanarak ortalama kare hatayı (mse) hesapla.
    • mse değerini mse_hist listesine ekle.
  • mse_hist görselleştirmesi için 'Yanıtı Gönder'e bas. Hangi eğilimi fark ediyorsun?

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

n_updates = 20
mse_hist = []

# Iterate over the number of updates
for i in range(n_updates):
    # Calculate the slope: slope
    slope = ____(____, ____, ____)
    
    # Update the weights: weights
    weights = ____ - ____ * ____
    
    # Calculate mse with new weights: mse
    mse = ____(____, ____, ____)
    
    # Append the mse to mse_hist
    ____

# Plot the mse history
plt.plot(mse_hist)
plt.xlabel('Iterations')
plt.ylabel('Mean Squared Error')
plt.show()
Kodu Düzenle ve Çalıştır