Я специально смотрю на архитектуру AlexNet, найденную здесь:
https://github.com/pytorch/vision/blob/master/torchvision/models/alexnet.py
Я не совсем понимаю, как они получают входной и выходной каналы. Основываясь на моих чтениях в AlexNet, я не могу понять, откуда они получают outputchannels = 64 (как второй аргумент функции Conv2d
). Даже если 256 разделен на 2 графических процессора, это должно дать 128 , а не 64 . Входной канал 3 изначально представляет цветовые каналы в соответствии с моим предположением. Однако другие входные и выходные каналы также не имеют смысла для меня.
Может кто-нибудь уточнить, что такое входной и выходной каналы?
класс AlexNet (nn.Module):
def __init__(self, num_classes=1000):
super(AlexNet, self).__init__()
self.features = nn.Sequential(
nn.Conv2d(3, 64, kernel_size=11, stride=4, padding=2), #why 64?
nn.ReLU(inplace=True),
nn.MaxPool2d(kernel_size=3, stride=2),
nn.Conv2d(64, 192, kernel_size=5, padding=2),
nn.ReLU(inplace=True),
nn.MaxPool2d(kernel_size=3, stride=2),
nn.Conv2d(192, 384, kernel_size=3, padding=1),
nn.ReLU(inplace=True),
nn.Conv2d(384, 256, kernel_size=3, padding=1),
nn.ReLU(inplace=True),
nn.Conv2d(256, 256, kernel_size=3, padding=1),
nn.ReLU(inplace=True),
nn.MaxPool2d(kernel_size=3, stride=2),
)