pytorch+tensorboard+可视化CNN

数据预处理:

python 复制代码
transform = transforms.Compose([
    transforms.Resize((224,224)),
    transforms.ToTensor(),
    transforms.Normalize(
        mean=[0.5, 0.5, 0.5],
        std=[0.5, 0.5, 0.5]
    )
])

改变了尺寸、归一化

加载数据集:

python 复制代码
fold_path = '../images'
dataset = ImageFolder(fold_path,transform=transform)
dataloader = DataLoader(dataset,batch_size=1)

定义网络结构并实例化

python 复制代码
class Net(nn.Module):
    def __init__(self):
        super(Net,self).__init__()
        self.conv1 = nn.Conv2d(3,6,3,1,0)
        self.bn1 = nn.BatchNorm2d(6)
        self.relu1 = nn.ReLU()
        self.pool1 = nn.MaxPool2d(2,2)
        #self.pool2 = nn.AvgPool2d(2,2)
        self.flatten1 = nn.Flatten()
        self.linear = nn.Linear(111*111*6,2)

    def forward(self,x):
        x = self.conv1(x)
        x = self.bn1(x)
        x = self.relu1(x)
        x = self.pool1(x)
        #x = self.pool2(x)
        x = self.flatten1(x)
        x = self.linear(x)
        return x

#实例化网络
net = Net()

效果展示:

output = torch.reshape(output,(-1,3,111,111))

这个地方是池化之后是这样的

池化之前是

output = torch.reshape(output,(-1,3,222,222))

python 复制代码
writer = SummaryWriter('../hcy_logs')

cnt = 0
for data in dataloader:
    img,label = data
    print(img.shape)
    output = net(img)
    print(output.shape)
    #writer.add_images('input',img,cnt)
    output = torch.reshape(output,(-1,3,111,111))
    writer.add_images('output',output,cnt)
    cnt += 1

writer.close()

原图:(量变临界点 强推 wyy可听)

原图归一化后效果:

卷积后效果 卷积核是3*3 stride=1 padding=0

BN 批量归一化效果:

relu非线性激活效果:

最大池化效果

平均池化效果:

相关推荐
七牛云行业应用2 分钟前
GPT-5.4 mini 与 nano 深度评测:核心差异、API 成本实测与选型指南
人工智能·openai·api调用·gpt-5.4·大模型降本
cxr8286 分钟前
PaperclipAI 组织关系与智能体协作指南
数据库·人工智能·架构·ai智能体·openclaw
带娃的IT创业者7 分钟前
WeClaw 日志分析实战:如何从海量日志中快速定位根因?
运维·python·websocket·jenkins·fastapi·架构设计·实时通信
大傻^17 分钟前
Spring AI Alibaba RAG实战:基于向量存储的检索增强生成
java·人工智能·spring
Physicist in Geophy.19 分钟前
claude code workflow
人工智能
大傻^20 分钟前
Spring AI Alibaba 快速入门:基于通义千问的AI应用开发环境搭建
java·人工智能·后端·spring·springai·springaialibaba
跨境卫士-小汪28 分钟前
高风险订单识别不足如何设置拦截与二次核验
大数据·人工智能·产品运营·跨境电商·营销策略
心勤则明1 小时前
用 Spring AI Alibaba 打造智能查询增强引擎
java·人工智能·spring
wh_xia_jun1 小时前
MODNet 本地抠图项目指南
python