İ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, kursun bir parçasıdır
PyTorch ile Görüntüler için Deep Learning
Egzersiz 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ı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
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 = ____