Deep Learning Academy · Ders

nn.Module Alt Sınıfı: __init__ ve forward

Standart PyTorch model iskeleti.

1. ders / 413 adım

nn.Module Alt Sınıfı: __init__ ve forward, CoddyKit'te ücretsiz bir Deep Learning Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Deep Learning Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Deep Learning Academy kursu toplamda 4 dersten oluşur.

Modeller Yalnızca Sınıflardır

PyTorch'ta her model bir Python sınıfıdır. Modelinizi tüm ağların temelini oluşturan nn.Module sınıfından türeterek oluşturursunuz.

İki Yöntem Her Şeyi Yürütür

Bir modelin çalışması için yalnızca iki yönteme ihtiyacı vardır: __init__ katmanları kurar, forward ise verinin bu katmanlardan nasıl akacağını açıklar.

Her Zaman super().__init__ Çağrısı Yapın

__init__ içindeki ilk satır mutlaka super().__init__() çağrısını yapmalıdır. Bu, modelinizi PyTorch'a bağlar ve her şeyi izlemesini sağlar. 🔌

class Net(nn.Module):
    def __init__(self):
        super().__init__()

Katmanları __init__ İçinde Tanımlayın

__init__ içinde katmanlarınızı oluşturup öznitelik olarak saklarsınız. Bunları self üzerinde saklamak, PyTorch'un onları otomatik olarak kaydetmesini sağlar.

self.fc1 = nn.Linear(4, 8)
self.fc2 = nn.Linear(8, 2)

forward Bir Tariftir

forward yöntemi bir girdi tensörü alır ve bir çıktı döndürür. Katmanlarınızın veriyi işlediği kesin sırayı belirtir.

def forward(self, x):
    x = self.fc1(x)
    return self.fc2(x)

forward'ı Doğrudan Çağırmayın

model.forward(x) yerine modeli bir işlev gibi çağırırsınız. model(x) kullanıldığında kancalar ve forward'ın tek başına atladığı kayıt işlemleri de çalışır.

out = model(x)   # preferred
# not: out = model.forward(x)

Katmanlar Parametrelere Dönüşür

Katmanlar self üzerinde bulunduğu için ağırlıkları modelin parametreleri olarak toplanır. İyileştirici daha sonra tam olarak bunları günceller.

Oluşturun, Sonra Kullanın

Modeli bir kez oluşturun, ardından tensörleri ona birçok kez verin. Her çağrı aynı öğrenilmiş ağırlıklardan geçer.

model = Net()
prediction = model(sample_input)

Boyutlar Uyuşmalıdır

Her katmanın çıktı boyutu, sonraki katmanın girdi boyutuyla eşleşmelidir. Veriler forward boyunca ilerlerken bu boyutları planlayın.

Bu Yaklaşım Neden Başarılıdır

Sınıftan türetme, kurulumu ve veri akışını temiz biçimde birbirinden ayırır. Aynı basit iskelet, küçük bir ağdan dev bir ağa kadar ölçeklenebilir.

Tasarım Gereği Esnektir

forward içinde dallanabilir, yeniden şekillendirebilir veya katmanları özgürce yeniden kullanabilirsiniz. Özel nn.Module sınıflarının bu kadar güçlü olmasının nedeni bu özgürlüktür. 💪

Hızlı Kontrol

Verilerin ağ içinde nasıl ilerleyeceğini hangi yöntemin tanımladığını düşünün.

Özet

nn.Module sınıfından türeterek, katmanları __init__ içinde ve veri akışını forward içinde tanımlayarak bir model oluşturursunuz. Ardından yalnızca model(x) çağrısını yaparsınız. 🎯

Başlamak ücretsiz

Yapay zeka eğitmeniyle Python öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
30
Dersler
120

Sıkça Sorulan Sorular

“nn.Module Alt Sınıfı: __init__ ve forward” dersi ücretsiz mi?

Evet — “nn.Module Alt Sınıfı: __init__ ve forward” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Deep Learning Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Deep Learning Academy kursu toplamda 4 dersten oluşur.

“nn.Module Alt Sınıfı: __init__ ve forward” dersinde ne öğreneceğim?

Standart PyTorch model iskeleti. Deep Learning Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Deep Learning Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Deep Learning Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“nn.Module Alt Sınıfı: __init__ ve forward” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Deep Learning Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Deep Learning Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. nn.Module Alt Sınıfı: __init__ ve forward
  2. Doğrusal Katmanları Üst Üste Koyma
  3. Hızlı Modeller için nn.Sequential
  4. Parametreleri ve Katman Şekillerini İnceleme
← Deep Learning Academy Sayfasına Dön