卷积网络与全连接网络比较分析

简介: 卷积网络与全连接网络比较分析

问题

卷积网络与全连接网络对于图像分类的功能上谁更加好,及在同一变量的情况下谁的精度高?


方法

要想两种网络进行比较,要做到输出的通道数要相同,大小要保持一致,学习率一致,优化器使用一种。对于输出通道数的选择,这里统一选择10,

学习率统一为0.1,优化器我们选择momentum = 0.5.

首先分类图数据来自torchvision的datasets

1、对全连接进行实验:

全连接网络模型

class MyNet(nn.Module):
   # 5.2 定义网络有哪些层,这些层都作为成员变量
   def __init__(self) -> None:
       super().__init__()
       self.flatten = nn.Flatten() # 将28X28的图像拉伸为784维向量
       self.fc1 = nn.Linear(in_features=784, out_features=512)
       # 对应Layer3 也就是输出层
       self.fc2 = nn.Linear(in_features=512, out_features=10)
   # 5.3 定义数据在网络中的流动
   # x - 1*28*28 C*H*W C表示通道数,H表示图像高度,W表示图像宽度
   def forward(self, x):
       # x为输出层 28*28的图像
       x = self.flatten(x)  # 输出:784,对于图Layer1
       x = self.fc1(x) # 输出:512, Layer2
       out = self.fc2(x)  # 输出:10, Layer3

运行10周期:

最高精度为92.15&

2、对卷积进行实验:

卷积网络模型

class MyNet(nn.Module):
   def __init__(self):
       super(MyNet, self).__init__()
       self.conv_unit=nn.Sequential(
           nn.Conv2d(in_channels=1,out_channels=16,kernel_size=3,stride=1,padding=1),
           nn.MaxPool2d(kernel_size=2,stride=2),
           nn.Conv2d(in_channels=16,out_channels=32,kernel_size=3,stride=1,padding=1),
           nn.MaxPool2d(kernel_size=2, stride=2),
           nn.Conv2d(in_channels=32,out_channels=64,kernel_size=3,stride=1,padding=1),
           nn.AdaptiveMaxPool2d(1),
           nn.Conv2d(in_channels=64,out_channels=128,kernel_size=3,stride=1,padding=1)
       )
       self.fc_unit=nn.Sequential(
           nn.Linear(128*1*1,512),
           nn.Linear(512,10)
       )
   def forward(self,x):
       x=self.conv_unit(x)
       x=torch.flatten(x,1)
       out=self.fc_unit(x)
       return out

运行10周期:

最高精度为99.0%


结语

通过本次全连接网络和卷积网络都运行10个周期得比较的实验中所得,卷积网络分类的精度远高于全连接网络的分类精度。实验不足的地方在于没有将层数保持一致,由于时间原因,运行周期较小,实验次数较少。

目录
相关文章
|
5月前
|
机器学习/深度学习 PyTorch TensorFlow
卷积神经网络深度解析:从基础原理到实战应用的完整指南
蒋星熠Jaxonic,深度学习探索者。深耕TensorFlow与PyTorch,分享框架对比、性能优化与实战经验,助力技术进阶。
|
5月前
|
数据采集 监控 网络安全
VMware Cloud Foundation Operations for Networks 9.0.1.0 发布 - 云网络监控与分析
VMware Cloud Foundation Operations for Networks 9.0.1.0 发布 - 云网络监控与分析
436 3
VMware Cloud Foundation Operations for Networks 9.0.1.0 发布 - 云网络监控与分析
|
5月前
|
机器学习/深度学习 大数据 关系型数据库
基于python大数据的青少年网络使用情况分析及预测系统
本研究基于Python大数据技术,构建青少年网络行为分析系统,旨在破解现有防沉迷模式下用户画像模糊、预警滞后等难题。通过整合多平台亿级数据,运用机器学习实现精准行为预测与实时干预,推动数字治理向“数据驱动”转型,为家庭、学校及政府提供科学决策支持,助力青少年健康上网。
|
6月前
|
机器学习/深度学习 人工智能 算法
卷积神经网络深度解析:从基础原理到实战应用的完整指南
蒋星熠Jaxonic带你深入卷积神经网络(CNN)核心技术,从生物启发到数学原理,详解ResNet、注意力机制与模型优化,探索视觉智能的演进之路。
600 11
|
9月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于PSO粒子群优化TCN-LSTM时间卷积神经网络时间序列预测算法matlab仿真
本内容展示了一种基于粒子群优化(PSO)与时间卷积神经网络(TCN)的时间序列预测方法。通过 MATLAB2022a 实现,完整程序运行无水印,核心代码附详细中文注释及操作视频。算法利用 PSO 优化 TCN 的超参数(如卷积核大小、层数等),提升非线性时间序列预测性能。TCN 结构包含因果卷积层与残差连接,结合 LSTM 构建混合模型,经多次迭代选择最优超参数,最终实现更准确可靠的预测效果,适用于金融、气象等领域。
|
6月前
|
机器学习/深度学习 传感器 数据采集
【故障识别】基于CNN-SVM卷积神经网络结合支持向量机的数据分类预测研究(Matlab代码实现)
【故障识别】基于CNN-SVM卷积神经网络结合支持向量机的数据分类预测研究(Matlab代码实现)
434 0
|
7月前
|
数据采集 存储 数据可视化
Python网络爬虫在环境保护中的应用:污染源监测数据抓取与分析
在环保领域,数据是决策基础,但分散在多个平台,获取困难。Python网络爬虫技术灵活高效,可自动化抓取空气质量、水质、污染源等数据,实现多平台整合、实时更新、结构化存储与异常预警。本文详解爬虫实战应用,涵盖技术选型、代码实现、反爬策略与数据分析,助力环保数据高效利用。
416 0
|
8月前
|
机器学习/深度学习 人工智能 PyTorch
零基础入门CNN:聚AI卷积神经网络核心原理与工业级实战指南
卷积神经网络(CNN)通过局部感知和权值共享两大特性,成为计算机视觉的核心技术。本文详解CNN的卷积操作、架构设计、超参数调优及感受野计算,结合代码示例展示其在图像分类、目标检测等领域的应用价值。
477 7
|
7月前
|
Windows
电脑显示有问题,电脑连接不上网络,电脑没声音,电脑链接不上打印机?驱动人生就能解决所有问题
电脑显示有问题,电脑连接不上网络,电脑没声音,电脑链接不上打印机?驱动人生就能解决所有问题
163 0
|
机器学习/深度学习 运维 自然语言处理
VMware Cloud Foundation Operations for Networks 9.0 发布 - 云网络监控与分析
VMware Cloud Foundation Operations for Networks 9.0 发布 - 云网络监控与分析
135 0

热门文章

最新文章