当前位置:   article > 正文

卷积神经网络学习_mixconv2d替换depwise

mixconv2d替换depwise
  1. import torch
  2. import torchvision
  3. from torch import nn
  4. from torch.nn import Conv2d, MaxPool2d, Flatten, Linear, Sequential
  5. from torch.utils.data import DataLoader
  6. dataset = torchvision.datasets.CIFAR10("F:/projects/venv/imgs", train=False, transform=torchvision.transforms.ToTensor(),
  7. download=True)
  8. dataload = DataLoader(dataset, batch_size=64)
  9. class convd(nn.Module):
  10. def __init__(self):
  11. super(convd, self).__init__()
  12. self.model = Sequential(
  13. Conv2d(3, 32, 5, padding=2),
  14. MaxPool2d(2),
  15. Conv2d(32, 32, 5, padding=2),
  16. MaxPool2d(2),
  17. Conv2d(32, 64, 5, padding=2),
  18. MaxPool2d(2),
  19. Flatten(),
  20. Linear(1024, 64),
  21. Linear(64, 10)
  22. )
  23. def forward(self,x):
  24.         x=self.model(x)
  25. Convd=convd()
  26. print(Convd)
  27. loss=nn.CrossEntropyLoss()
  28. optic=torch.optim.SGD(Convd.parameters(),lr=0.01)
  29. for epoch in range(20):
  30. running_loss=0
  31. for data in dataload:
  32. imgs, target = data
  33. output = Convd(imgs)
  34. result_loss=loss(output,target)
  35. optic.zero_grad()
  36. result_loss.backward()
  37. optic.step()
  38. running_loss=running_loss+result_loss
  39. print("输出损失",running_loss)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/806810
推荐阅读
相关标签
  

闽ICP备14008679号