一.网络模型
import torch
from torch import nn
from torch.utils.tensorboard import SummaryWriter
class Tudui(nn.Module):
def __init__(self):
super().__init__()
"""self.conv1=nn.Conv2d(in_channels=3,out_channels=32,kernel_size=5,padding=2)
self.Maxpoo1=nn.MaxPool2d(2)
self.conv2=nn.Conv2d(in_channels=32,out_channels=32,kernel_size=5,padding=2)
self.Maxpoo2=nn.MaxPool2d(2)
self.conv3=nn.Conv2d(in_channels=32,out_channels=64,kernel_size=5,padding=2)
self.Maxpoo3=nn.MaxPool2d(2)
self.flatten1=nn.Flatten()
self.linear1=nn.Linear(1024,64)
self.linear2=nn.Linear(64,10)"""
self.model1=nn.Sequential(
nn.Conv2d(in_channels=3, out_channels=32, kernel_size=5, padding=2),
nn.MaxPool2d(2),
nn.Conv2d(in_channels=32, out_channels=32, kernel_size=5, padding=2),
nn.MaxPool2d(2),
nn.Conv2d(in_channels=32, out_channels=64, kernel_size=5, padding=2),
nn.MaxPool2d(2),
nn.Flatten(),
nn.Linear(1024, 64),
nn.Linear(64, 10)
)
def forward(self,x):
"""x=self.conv1(x)
x=self.Maxpoo1(x)
x=self.conv2(x)
x=self.Maxpoo2(x)
x=self.conv3(x)
x=self.Maxpoo3(x)
x=self.flatten1(x)
x=self.linear1(x)
x=self.linear2(x)"""
x=self.model1(x)
return x
tudui=Tudui()
print(tudui)
input=torch.ones((64,3,32,32))
output=tudui(input)
print(output.shape)
writer=SummaryWriter("logs_seq")
writer.add_graph(tudui,input)
writer.close()