- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
(p1)
本节课我们将开始使用pytorch搭建卷积神经网络,解决fashinMNIST分类问题
(p2)
我们来看具体的实现代码
这段代码定义了一个名为Net的神经网络模型,继承自nn.Module类
在__init__()函数中,
我们首先调用了nn.Module的构造函数__init__(),
并传入了self参数和其他参数,以初始化神经网络模型。
接着,我们定义了卷积层和全连接层的结构,
并将它们封装在nn.Sequential()中,
使得它们可以按顺序依次执行。
卷积层:我们采用了两层卷积层,
每层包括了四个操作:卷积操作、ReLU激活函数、最大池化层和Dropout层。
这四个操作的顺序可以任意调整,
但通常先进行卷积操作,然后再进行激活、池化和Dropout操作。
第一层卷积层的输入通道数为1,输出通道数为32,卷积核大小为5x5。
ReLU激活函数对卷积结果进行非线性变换,
最大池化层进行下采样,Dropout层随机丢弃一部分神经元,以避免过拟合。
第二层卷积层的输入通道数为32,输出通道数为64,卷积核大小为5x5,
其余操作与第一层卷积层相同。
这样,我们可以提取更高级别的特征,以更好地区分不同的物体类别。
总的来说,这个神经网络模型的设计旨在提高分类精度和模型的泛化能力。
它通过多层卷积和池化操作,逐渐提取图像的特征,
并使用全连接层进行分类。
在训练过程中,我们还采用了Dropout层来防止过拟合,从而提高模型的泛化能力。
(p3)
在神经网络模型中,全连接层也是非常重要的一部分。
全连接层通常用于将卷积层提取的特征进行分类或回归。
全连接层可以将前面的卷积层或池化层提取的特征进行展开,
并将特征映射到指定的输出维度上,以实现分类或回归任务。
在定义全连接层时,我们需要设置输入和输出的维度大小。
在我们的模型中,第一层全连接层的输入大小为64x4x4,
因为在前面的卷积层中,
我们设置了两次卷积操作,并经过两次最大池化操作,大小缩小为64x4x4,
因此在全连接层中,输入大小为64x4x4=1024,
经过一次线性变换和ReLU激活函数后,输出大小为512。
第二层全连接层的输入大小为512,输出大小为10,用于进行10分类任务。
在全连接层中,我们采用了ReLU激活函数,
可以对全连接结果进行非线性变换,
增强模型的非线性建模能力,并实现更好的分类效果。
在我们的模型中,第二层全连接层的输出大小为10,
表示将特征映射到10个类别的概率分布上,用于进行分类任务。
在后续模型的训练过程中,我们采用交叉熵损失函数对模型进行优化,
以最小化预测值与真实标签之间的差距。
(p4)
在神经网络模型中,forward()函数是定义模型前向传播过程的函数。
在forward()函数中,我们首先通过self.conv(x)进行卷积操作,
将输入的特征图与卷积核进行卷积运算,
得到一组输出特征图。
这一步操作可以提取出输入图像的特征信息,并用于后续的分类任务。
在卷积操作之后,我们需要将输出特征图展开成一维向量,
方便进行全连接操作。
在我们的模型中,我们使用了view()函数对特征图进行展开操作,
将其转换为一维的向量形式,以便进行全连接操作。
在展开操作之后,我们通过self.fc(x)进行全连接操作,
将特征向量映射到指定的输出维度上,生成最终的分类结果。
在这一步操作中,我们采用了两层全连接层,第一层包括了ReLU激活函数,
第二层输出10个类别的概率分布,用于进行分类任务。
在经过卷积和全连接操作之后,我们通过return语句返回模型的输出,即最终的分类结果。
在训练和测试过程中,我们可以根据模型的输出结果来计算损失函数和准确率,
并对模型进行优化和评估。
通过对forward()函数的设置和调整,我们可以构建出一个高效、准确和泛化能力强的神经网络模型,
实现对fashionmnist分类任务。
(p5)
编写完Net类之后,
我们来尝试定义一个具体的卷积模型
这段代码用于将模型部署到GPU上,以加速模型训练和推理。
具体来说,第一行代码创建了一个名为model的神经网络模型,
使用了之前定义的Net()类。
第二行代码将模型部署到GPU上,
使用了model.cuda()函数。
该函数会将模型的所有参数和计算图复制到GPU上,以利用GPU的并行计算能力。
第三行代码用于打印模型的结构信息。
可以通过print(model)函数来输出模型的详细信息,包括模型的各个层、参数数量和计算图等信息。
(p6)
运行代码后,我们就能看到具体的网络结构
关于模型搭建的内容我们就讲解到这里
您可能关注的文档
- 深度学习案例教程 教案全套 钱月钟 第1--9章 深度学习简介--语音识别.docx
- 深度学习案例教程 教案1.3 深度学习的发展.docx
- 深度学习案例教程 教案1.1 人工智能与机器学习.docx
- 深度学习案例教程 教案1.6 深度学习的应用领域-自然语言的处理.docx
- 深度学习案例教程 教案1.2 深度学习定义及分类.docx
- 深度学习案例教程 教案1.5 深度学习的应用领域-计算机视觉.docx
- 深度学习案例教程 教案1.4 深度学习的应用领域-语音识别.docx
- 深度学习案例教程 教案1.8 深度学习框架介绍.docx
- 深度学习案例教程 教案1.7 深度学习的特点.docx
- 深度学习案例教程 教案2.2PyTorch安装和Pycharm安装.docx
- 苏教版8年级上册数学全册教学课件(2021年10月修订).pptx
- 比师大版数学4年级下册全册教学课件.pptx
- 冀教版5年级上册数学全册教学课件.pptx
- 办公室普通党员2024年组织生活会个人对照检查发言材料供参考.docx
- 领导班子成员2025年组织生活会“四个带头”对照检查材料范文.docx
- 2024年度专题组织生活会个人“四个带头”对照检查材料范文.docx
- 党支部领导班子2025年民主生活会“四个带头”个人对照检查材料范文.docx
- 2024年抓基层党建工作述职报告参考范文.docx
- 2024年度民主生活会征求意见情况的报告范文2篇.docx
- 普通党员2024年组织生活会个人“四个带头”对照检查发言材料2篇.docx
最近下载
- GB3836-2隔爆型“d”《爆炸性气体环境用电气设备》.doc VIP
- 全过程咨询技术标-监理大纲篇.docx
- 2024年二建《机电》真题及参考答案.doc
- GB_T 3836.28-2021爆炸性环境规范.docx VIP
- 北京市西城区2024_2025学年高一语文下学期期末考试试题含解析.doc VIP
- “以校为本”发展性督导评价研究 _ 以上海市新光中学为个案.pdf
- 基于stm32的仓库环境监测系统的设计与实现.docx
- 07FK01~02防空地下室通风设计示例-防空地下室通风设备安装(合订本).pdf
- 2025届高考语文复习:散文知识点梳理.pdf VIP
- 2025年全国公路养护初级_中级_高级工理论模拟试题及答案.pdf VIP
文档评论(0)