Özet - PyTorch
- Makine Öğrenmesi kursu
- İleri seviye
- Ders 12/78
- 6 dk
Bu grupta tensor oluşturma, özellikleri ve GPU desteğini öğrendin.
Özet: PyTorch
Bu grupta:
- PyTorch: tensörler, autograd ve
nn; kod satır satır çalışır. - Tensör: n boyutlu dizi;
item()vetolist()ile Python'a dönüş. from_numpybelleği paylaşır,torch.tensorkopyalar.- Oluşturma:
zeros,ones,arange,rand,randn;manual_seed. shape,dtype(girdi float32, etiket int64),device;.to(cihaz)ve.cpu().
Uygulama Veriyi tensöre hazırla
NumPy'daki X_np (float64) ve y_np dizilerini tensöre çevir: X float32, y int64 olsun. İkisinin dtype değerlerini aynı satırda, ardından X.shape değerini yazdır.
Başlangıç kodu
import numpy as np
import torch
X_np = np.random.default_rng(0).normal(size=(8, 3))
y_np = np.array([0, 1, 1, 0, 2, 2, 1, 0])
# buraya yazÖrnek çözüm
import numpy as np
import torch
X_np = np.random.default_rng(0).normal(size=(8, 3))
y_np = np.array([0, 1, 1, 0, 2, 2, 1, 0])
X = torch.from_numpy(X_np).float()
y = torch.from_numpy(y_np).long()
print(X.dtype, y.dtype)
print(X.shape)Beklenen çıktı
torch.float32 torch.int64 torch.Size([8, 3])
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 NumPy'dan gelen float64 özellikleri modele vermeden önce ne yapılmalıdır?
- Hiçbir şey
- Listeye çevirmek
- .float() ile float32'ye çevirmek Doğru cevap
- .long() ile tam sayıya çevirmek
Açıklama: Model ağırlıkları float32'dir; türler uyuşmazsa hata alınır.
2 Etiketleri int64 yap.
y = torch.from_numpy(y_np).____()
y = torch.from_numpy(y_np).long()
Açıklama: Çapraz entropi kaybı sınıf etiketlerini long (int64) ister.
3 Araçları eşleştir.
| Kavram | Anlamı |
|---|---|
torch.from_numpy |
Paylaşımlı dönüşüm |
torch.manual_seed |
Tohum |
.float() |
float32 |
.cpu().numpy() |
NumPy'a dönüş |