当前位置: 首页 > news >正文

pytorch+tensorboard+可视化CNN

数据预处理:

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])
])

改变了尺寸、归一化

加载数据集:

fold_path = '../images'
dataset = ImageFolder(fold_path,transform=transform)
dataloader = DataLoader(dataset,batch_size=1)

定义网络结构并实例化

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))

writer = SummaryWriter('../hcy_logs')cnt = 0
for data in dataloader:img,label = dataprint(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 += 1writer.close()

原图:(量变临界点 强推 wyy可听)
量变临界点
原图归一化后效果:
在这里插入图片描述
卷积后效果 卷积核是3*3 stride=1 padding=0
在这里插入图片描述
BN 批量归一化效果:
在这里插入图片描述
relu非线性激活效果:
在这里插入图片描述

最大池化效果
在这里插入图片描述
平均池化效果:
在这里插入图片描述

http://www.dtcms.com/a/322944.html

相关文章:

  • 物理AI与人形机器人:从实验室到产业化的关键跨越
  • 多线程和多进程编程中常见的性能瓶颈问题
  • C# 异步编程(使用异步Lambda表达式)
  • 专题二_滑动窗口_找到字符串中所有字母异位词
  • Arduino系列教程:点亮一个LED灯
  • 本地部署网络流量分析工具 ntopng 并实现外部访问( Windows 版本
  • C++高频知识点(十七)
  • 【lucene】HitsThresholdChecker命中阈值检测器
  • istio笔记03--快速上手多集群mesh
  • 本地WSL ubuntu部署whisper api服务
  • NVIDIA Jetson JetPack 全面解析:从硬件到定制镜像
  • 智能情趣设备、爆 bug:可被远程操控。。。
  • 目标检测数据集 - 无人机检测数据集下载「包含COCO、YOLO两种格式」
  • Python 中的 Mixin
  • 二十、MySQL-DQL-条件查询
  • 第八章:终极合体 —— 实现智能一键分组
  • 【Python 工具人快餐 · 第 1 份】
  • 【代码随想录|232.用栈实现队列、225.用队列实现栈、20.有效的括号、1047.删除字符串中的所有相邻重复项】
  • 第05章 排序与分页
  • 模板方法模式:优雅封装算法骨架
  • Python-UV-portry项目管理流程
  • redis8.0.3部署于mac
  • C++ 中的智能指针
  • Python 继承和多态
  • ElaWidgetTools qt5+vs2019编译
  • 1.JavaScript 介绍
  • 基于STM32的智能电表设计与实现
  • 计算机组成原理2-4-1:浮点数的表示
  • Linux 安装 JDK 8u291 教程(jdk-8u291-linux-x64.tar.gz 解压配置详细步骤)​
  • 【c++】探秘Loop机制:C++中优雅的双向数据交互模式