神经网络——CIFAR10小实战

1.引子


Sequential的使用:将网络结构放入其中即可,可以简化代码。

找了一个对CIFAR10进行分类的模型。

2.代码实战

python 复制代码
from torch import nn
from torch.nn import Conv2d, MaxPool2d, Flatten, Linear

class Tudui(nn.Module):
    def __init__(self):
        super(Tudui, self).__init__()
        self.conv1 = Conv2d(3, 32, 5, padding=2)
        self.maxpool1 = MaxPool2d(2)
        self.conv2 = Conv2d(32, 32, 5, padding=2)
        self.maxpool2 = MaxPool2d(2)
        self.conv3 = Conv2d(32, 64, 5, padding=2)
        self.maxpool3 = MaxPool2d(2)
        self.flatten = Flatten()
        self.linear1 = Linear(1024, 64)
        self.linear2 = Linear(64, 10)

    def forward(self, x):
        x = self.conv1(x)
        x = self.maxpool1(x)
        x = self.conv2(x)
        x = self.maxpool2(x)
        x = self.conv3(x)
        x = self.maxpool3(x)
        x = self.flatten(x)
        x = self.linear1(x)
        x = self.linear2(x)
        return x

tudui=Tudui()
print(tudui)

nn.Flatten()和torch.flatten()有相同的效果。

3.Sequential

python 复制代码
import torch
from torch import nn
from torch.nn import Conv2d, MaxPool2d, Flatten, Linear, Sequential


class Tudui(nn.Module):
    def __init__(self):
        super(Tudui, self).__init__()
        self.model1=Sequential(
            Conv2d(3,32,5,padding=2),
            MaxPool2d(2),
            Conv2d(32,32,5,padding=2),
            MaxPool2d(2),
            Conv2d(32,64,5,padding=2),
            MaxPool2d(2),
            Flatten(),
            Linear(1024,64),
            Linear(64,10)
        )

    def forward(self, x):
        x=self.model1(x)
        return x

tudui=Tudui()
print(tudui)
## 创建一个指定形状的 ones 张量
input=torch.ones((64,3,32,32))
output=tudui(input)
print(output.shape)

使用Sequential可以很大程度地简化代码。

4.利用TensorBoard进行数据可视化

使用SummaryWriter的add_graph()方法进行数据可视化。

python 复制代码
writer=SummaryWriter("logs_sqe")
writer.add_graph(tudui,input)
writer.close()

基本的网络搭建到此结束。

相关推荐
码农三叔几秒前
(10-1)大模型时代的人形机器人感知:视觉-语言模型在机器人中的应用
人工智能·机器人·人机交互·人形机器人
视***间几秒前
视程空间(VisionSpace):以音视频技术创新,构筑全行业智能化新基座
人工智能·音视频·边缘计算·传感器·视程空间
deephub1 分钟前
高级 RAG 技术:查询转换与查询分解
人工智能·深度学习·大语言模型·agent·rag
光羽隹衡1 分钟前
计算机视觉——Opencv(模块风格迁移)
人工智能·opencv·计算机视觉
信鸽爱好者2 分钟前
RTX5060 GPU CUDA12.8 +vscode 设计一个torch实例程序
人工智能·vscode·深度学习·编辑器
piao9618273 分钟前
Agentic AI时代来临:企业如何构建“数据挖掘-分析-决策”的端到端闭环?
人工智能·数据挖掘
xuxie994 分钟前
N4 传感器
人工智能
艾莉丝努力练剑4 分钟前
System V IPC内核实现精析
linux·运维·服务器·网络·c++·人工智能·学习
rainbow7242444 分钟前
企业AI能力标准建设深度分析:从职级定义到技能矩阵的完整框架
人工智能
2501_933329556 分钟前
从传统监测到AI主动处置:舆情系统技术架构演进与实践
人工智能·重构·架构