İkili sınıflandırma modeli
Bir derin öğrenme uygulayıcısı olarak, temel görevlerinden biri görüntü sınıflandırma için modeller eğitmek. Sıklıkla iki sınıfı ayırt etmen gereken ikili sınıflandırma ile karşılaşırsın. Çalışma akışını hızlandırmak ve yeniden kullanılabilirliği sağlamak için, gelecekteki projelere uygulanabilecek bir ikili görüntü sınıflandırma CNN modeli için bir şablon oluşturmayı seçtin.
torch paketi ve torch.nn nn olarak içe aktarılmış durumda. Tüm görüntü boyutları 64x64 pikseldir.
Bu egzersiz
PyTorch ile Görüntüler için Deep Learning
kursunun bir parçasıdırEgzersiz talimatları
- 3 kanal girişli, 16 çıktı kanallı, çekirdek boyutu 3, adım (stride) 1 ve dolgu (padding) 1 olan bir evrişim katmanı oluştur.
- Girdi boyutu 16x32x32 ve sınıf sayısı 1 olacak şekilde bir tam bağlantılı katman oluştur; yalnızca verilen sıradaki değerleri kullan
(16*32*32, 1). - Bir
sigmoidaktivasyon fonksiyonu oluştur.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
class BinaryImageClassifier(nn.Module):
def __init__(self):
super(BinaryImageClassifier, self).__init__()
# Create a convolutional layer
self.conv1 = ____(____)
self.relu = nn.ReLU()
self.maxpool = nn.MaxPool2d(kernel_size=2, stride=2)
self.flatten = nn.Flatten()
# Create a fully connected layer
self.fc = ____(____)
# Create an activation function
self.sigmoid = ____