建立 sequential 區塊
你決定重新設計二元分類的 CNN 模型樣板,方法是建立一個卷積層的區塊。這能幫助你把多個層按順序堆疊。有了這個改良後的模型,你就能更輕鬆地設計各種 CNN 架構。
torch 與 torch.nn(縮寫為 nn)已經匯入。
本練習屬於課程
使用 PyTorch 進行影像深度學習
練習說明
- 在
__init__()方法中,定義一個卷積層區塊,並指派給self.conv_block。 - 在
forward()過程中,將輸入傳入你所定義的卷積區塊。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
class BinaryImageClassification(nn.Module):
def __init__(self):
super(BinaryImageClassification, self).__init__()
# Create a convolutional block
self.conv_block = ____(
nn.Conv2d(3, 16, kernel_size=3, stride=1, padding=1),
nn.ReLU(),
nn.Conv2d(16, 32, kernel_size=3, stride=1, padding=1),
nn.ReLU(),
)
def forward(self, x):
# Pass inputs through the convolutional block
x = ____
return x