定义一个三层卷积神经网络
时间: 2023-12-21 18:31:33 浏览: 95
卷积神经网络讲解
以下是定义一个三层卷积神经网络的示例代码:
```python
import torch
import torch.nn as nn
class ConvNet(nn.Module):
def __init__(self):
super(ConvNet, self).__init__()
self.conv1 = nn.Conv2d(1, 16, kernel_size=3, stride=1, padding=1)
self.relu = nn.ReLU()
self.pool = nn.MaxPool2d(kernel_size=2, stride=2)
self.conv2 = nn.Conv2d(16, 32, kernel_size=3, stride=1, padding=1)
self.fc = nn.Linear(32 * 7 * 7, 10)
def forward(self, x):
out = self.conv1(x)
out = self.relu(out)
out = self.pool(out)
out = self.conv2(out)
out = self.relu(out)
out = self.pool(out)
out = out.view(out.size(0), -1)
out = self.fc(out)
return out
model = ConvNet()
print(model)
```
这个示例代码定义了一个简单的三层卷积神经网络,包括两个卷积层和一个全连接层。其中,卷积层使用ReLU激活函数,池化层使用最大池化操作。最后的全连接层将卷积层的输出映射到类别标签上。
阅读全文