開始使用免費開始

二元分類模型

身為深度學習實務工作者,你的主要任務之一是為影像分類訓練模型。你經常會碰到二元分類,需要在兩個類別之間做區分。為了讓流程更順暢並提升重用性,你決定建立一個二元影像分類 CNN 模型的範本,未來的專案都能套用。

已匯入套件 torch 以及將 torch.nn 命名為 nn。所有影像大小皆為 64x64 像素。

本練習屬於課程

使用 PyTorch 進行影像深度學習

檢視課程

練習說明

  • 建立一個卷積層:輸入通道數為 3、輸出通道數為 16、kernel size 為 3、stride 為 1、padding 為 1。
  • 建立一個全連接層:輸入大小為 16x32x32,類別數為 1;僅包含並依提供的順序填入值 (16*32*32, 1)
  • 建立一個 sigmoid 啟用函式。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

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 = ____
編輯並執行程式碼