跟着刘二大人学pytorch(第---10---节课之卷积神经网络)

文章目录

  • 0 前言
    • 0.1 课程链接:
    • 0.2 课件下载地址:
  • 回忆
  • 卷积
    • 卷积过程(以输入为单通道、1个卷积核为例)
    • 卷积过程(以输入为3通道、1个卷积核为例)
    • 卷积过程(以输入为N通道、1个卷积核为例)
    • 卷积过程(以输入为N通道、M个卷积核为例)
    • Padding
    • Padding(padding=1)
    • 步长stride(stride=2)
    • 下采样(Max Pooling Layer)
    • 一个简单的例子
    • 如果有GPU的话,代码如何改
  • 结果
  • 作业

0 前言

0.1 课程链接:

《PyTorch深度学习实践》完结合集
有大佬已经写好了笔记:大佬的笔记
pytorch=0.4

0.2 课件下载地址:

链接:https://pan.baidu.com/s/1_J1f5VSyYl-Jj2qIuc1pXw
提取码:wyhu
在这里插入图片描述

回忆

全连接
在这里插入图片描述
通道×宽×高
如果按全连接的话就破坏了原来的空间信息
下采样:通道数不变,目的是减少数据量,降低运算

构建一个神经网络之前首先考虑输入的张量的维度是什么,输出的张量维度是什么,使得卷积神经网络顺利先跑起来。

所有的卷积层+下采样合起来被称为:特征提取器(Feature Extraction),即找出某种特征。

接下来介绍卷积、下采样
通过下图直观的认识这两个东西
在这里插入图片描述

卷积

讲解卷积之前,先讨论一下图像是什么

在计算机领域遇到的图像都称为RGB图像,要表示一个像素,图片被分成一个一个单元格子,每个格子有一个颜色值,这样就构成一个图像,这样的图像被称为栅格图像,相机、显微镜在处理图像时
中学时学的一个东西叫光敏电阻,该电阻可以根据光照电阻发生变化.
通过多个个光敏电阻,做成一个阵列,每个光阻通过光阻都可以反映一个范围内的光的强度,通过光的强度与电阻之间的对应关系关系,可以画出阵列所反映的图,由电阻值转变为光的强度值,该图即为黑白图。
在这里插入图片描述
像素为2×2
光阻放的越多,得到的图片的像素越大,有的手机虚表像素值,是因为将没有的像素进行了插值,取临近的一些像素值的平均值,
1)红色传感器对红色波段比较敏感,R,红色传感器中的电阻值可以反应灰度级别,即到底有多红,用0-255中的值来定义灰度的级别,以下类似
2)蓝色传感器对蓝色波段比较敏感,G
3)绿色传感器对绿色波段比较敏感,B
由上即可将光阻值转变为彩色图像
下面的额小方格就是由红绿蓝传感器组成的阵列
在这里插入图片描述
因此我们遇到的图片一般是栅格图像,还有一类图像是矢量图,这种图描述方式不和栅格图像一样。
描述矢量图是描述圆心、直径、边是什么颜色,填充什么颜色(不重要)
拿到一个图像将使用三个通道来表示
图像的坐标系的介绍见我的另一篇文章:
在这里插入图片描述

卷积过程(以输入为单通道、1个卷积核为例)

数乘:对应元素想 乘
在这里插入图片描述
在这里插入图片描述

卷积过程(以输入为3通道、1个卷积核为例)

每一个通道配一个核,通道数=核的数量
在这里插入图片描述

上面画出来的三个红色的小方块儿对应为图像中的一个patch。
图像的一个patch与一个卷积核先数乘再相加,即下面红色框出来的大方框操作称为卷积
在这里插入图片描述
见下图
在这里插入图片描述
进一步表示:
在这里插入图片描述

卷积过程(以输入为N通道、1个卷积核为例)

在这里插入图片描述
上图中,一个卷积可以得到一个最终的通道为1的结果,如果再使用一个卷积核就可以得到另外一个通道为1的结果,以此延

卷积过程(以输入为N通道、M个卷积核为例)

在这里插入图片描述
由上图发现:
1)卷积核的个数和输入的通道数是一样的(这一句应该是写错了,应修改为:卷积核的通道数和输入的图片的通道数是一样的)
2)输出的通道数和卷积核的总个数是一样的(因此只要看到输出是多少个通道,上一步的卷积就有多少个卷积核)
在这里插入图片描述
由上图知:可以将m个卷积核可以拼成一个4维的张量
定义一个卷积层只需要关系4个值:
1、输入的通道数:决定了卷积核的通道数
2、输出的通道:决定了使用了多少个卷积核
3、卷积核的大小(宽和高):这个是必须的
卷积层的定义和输入图像的大小无关
在这里插入图片描述

Padding

在这里插入图片描述

Padding(padding=1)

在这里插入图片描述
torch.nn.Conv2d(输入的通道数,输出的通道数,kernel_size,padding,bias=False)
bias是偏置量
conv_layer.weight.data = kernel.data就是将定义的卷积核的张量数值给卷积层的权重
在这里插入图片描述

步长stride(stride=2)

在这里插入图片描述
通过以上的代码得到上面的结果
在这里插入图片描述

下采样(Max Pooling Layer)

这一层没有权重,通道数不会变
例如一个2×2的max pooling,则默认步长为2,
在这里插入图片描述
通过以下的代码得到上面的结果在这里插入图片描述

一个简单的例子

在这里插入图片描述
用卷积、池化来代替之前的全连接
在这里插入图片描述
在这里插入图片描述
最后接的是交叉熵损失,所以不做激活

如果有GPU的话,代码如何改

1)模型迁移到GPU
cuda:0,表示使用第一块显卡,cuda:1表示使用第二块显卡
在这里插入图片描述
model.to(device):指的是将模型的参数、缓存、所有的模块,都放到cuda里面,都转成相应的tensor,所有涉及的权重都放进显卡里面,此时将把之前在cpu上定义模型、权重全部迁移到GPU上面
在这里插入图片描述
2)计算时把数据迁移到GPU
把要计算的张量迁移到GPU上面,主要是输入和输出
注意要将数据迁移到的显卡要和模型所要迁移的显卡要一致
训练部分需要加
在这里插入图片描述
测试部分也需要加上
在这里插入图片描述

结果

在这里插入图片描述

作业

在这里插入图片描述
比较不同配置对应的网络的性能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/714944.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

接口测试工作准备

前面已经讲了接口测试的原理,接下来讲接口测试如何准备。分为了解项目背景、收集项目相关资料、部署接口测试环境。 1、了解项目背景 1、首先我们应该去了解项目的应用范围,了解业务场景需要调用的接口,确定接口测试的接口个数、接口名字、接…

Spring配置那些事

一、引言 配置是一个项目中不那么起眼,但却有非常重要的东西。在工程项目中,我们一般会将可修改、易变、不确定的值作为配置项,在配置文件/配置中心中设置。 比方说,不同环境有不同的数据库地址、不同的线程池大小等&#xff0c…

创建STM32F10X空项目教程

创建STM32F10X系列的空项目工程 官网下载STM32标准外设软件库 STM32标准外设软件库 创建一个空文件夹作为主工程文件夹在主工程文件夹中,创建三个空文件夹 CMSIS - 存放内核函数及启动引导文件 FWLIB - 存放库函数 USER - 存放用户的函数将STM32标准外设软件库文件…

Git学习记录v1.0

1、常用操作 git clonegit configgit branchgitt checkoutgit statusgit addgit commitgit pushgit pullgit loggit tag 1.1 git clone 从git服务器拉取代码 git clone https://gitee.com/xxx/studyJava.git1.2 git config 配置开发者用户名和邮箱 git config user.name …

Javaweb04-Servlet技术2(HttpServletResponse, HttpServletRequest)

Servlet技术基础 HttpServletResponse对象 HttpServletResponce对象是继承ServletResponse接口,专门用于封装Http请求 HttpServletResponce有关响应行的方法 方法说明功能描述void setStatus(int stauts)用于设置HTTP响应消息的状态码,并生成响应状态…

【C++ 11 新特性】lambda 表达式详解

文章目录 1. 常见 lambda 面试题🖊 1. 常见 lambda 面试题🖊 🍎① 如果⼀个 lambda 表达式作为参数传递给⼀个函数,那这个函数可以使⽤这个 lambda 表达式捕获的变量吗 ? 🐧 函数本身无法直接访问到 lambda表达式捕获…

教资认定报名照片要求小于190kb…

教资认定报名照片要求小于190kb…… 要求:文件小于190kb,宽度290-300,高度408-418 方法:vx搜随时照-教资认定 直接制作合规尺寸即可,还可以打印纸质版邮寄到家

ffmpeg解封装rtsp并录制视频-(2)使用VLC模拟一个rtsp服务器并用ffmpeg解封装该rtsp流

VCL模拟服务器并打开播放该视频文件: - 准备好一个mp4文件,打开vlc软件 - 选择“媒体”》“流” - 添加一个mp4文件 - 点击下方按钮选择“串流” - 下一步目标选择rtsp 点击“添加” - 端口默认8554 - 路径设置 /test - 用…

JavaFX VBox

VBox布局将子节点堆叠在垂直列中。新添加的子节点被放置在上一个子节点的下面。默认情况下,VBox尊重子节点的首选宽度和高度。 当父节点不可调整大小时,例如Group节点,最大垂直列的宽度基于具有最大优选宽度的节点。 默认情况下,…

揭秘神秘的种子:Adobe联合宾夕法尼亚大学发布文本到图像扩散模型大规模种子分析

文章链接:https://arxiv.org/pdf/2405.14828 最近对文本到图像(T2I)扩散模型的进展促进了创造性和逼真的图像合成。通过变化随机种子,可以为固定的文本提示生成各种图像。在技术上,种子控制着初始噪声,并…

Linux_应用篇(17) FrameBuffer 应用编程

本章学习 Linux 下的 Framebuffer 应用编程, 通过对本章内容的学习, 大家将会了解到 Framebuffer 设备究竟是什么?以及如何编写应用程序来操控 FrameBuffer 设备。 本章将会讨论如下主题。 ⚫ 什么是 Framebuffer 设备? ⚫ LCD 显…

分布式系统中的经典思想实验——两将军问题和拜占庭将军问题

文章目录 一、两将军问题1.1 问题描述1.2 深入理解两将军问题1.3 实验结论 二、拜占庭将军问题2.1 问题描述2.2 深入理解拜占庭将军问题2.3 解决方案 三、两将军和拜占庭问题的关系3.1 区别和联系3.2 应用与现实意义 参考资料 一、两将军问题 1.1 问题描述 两将军问题描述的是…

BetterZip 5软件详细安装步骤(最新版软件下载)

​BetterZip是一款功能强大的Mac解/压缩软件,可以满足用户对文件压缩、解压、加密和保护等方面的需求。以下是关于BetterZip软件的主要功能、特点和使用方法的详细介绍,以及对其用户友好度、稳定性和安全性的评价。 安 装 包 获 取 地 址: BetterZip 5-…

半导体芯片结构以及译码驱动

一.半导体芯片结构 可能并不是只有一个芯片,有多个芯片就需要片选线了。 二.半导体存储芯片的译码驱动 主要有两种方式:线选法和重合法 线选法:每一个存储单元都用一根字选择线选中,直接选中存储单元的各位。(一维…

从 Acme.Sh V3.0 说说 ZeroSSL

熟悉明月的都知道,明月一直都在使用 acme.sh 作为服务器端申请、部署、续期免费 SSL 证书的主要工具,今天在帮一个站长申请 SSL 证书的时候发现 acme.sh v3.0 开始默认的免费 SSL 证书变更为:ZeroSSL 了,这个 ZeroSSL 其实跟明月一…

Java NIO ByteBuffer 使用方法

前言 最近在使用spring boot websocket xterm.js 给 k8s pod做了个在线的 web 终端,发现websocket的类核心方法,用的都是ByteBuffer传递数据,如下: OnMessagepublic void onMessage(Session session, ByteBuffer byteBuffer) {…

【深度学习量化交易1】一个金融小白尝试量化交易的设想、畅享和遐想

关注我的朋友们可能知道,我经常在信号处理的领域出没,时不时会发一些信号处理、深度学习科普向的文章。 不过算法研究久了,总想做一些更有趣的事情。 比如用深度学习算法赚大钱。。毕竟有什么事情能比暴富更有意思呢。 一、神经网络与彩票…

Vue - 实现登录页面

1、技术框架 1、技术框架Vue-Cli Vue3.0 2、界面推荐大小: 1920 * 1080 3、UI组件:elementui 4、icon: element-plus/icons-vue 5、node版本:v20.14.0 2、效果图 3、源代码部分截图 4、其他 有需要的请联系作者。需要购买,不白…

Science:如何快速完成一篇研究性论文?

我是娜姐 迪娜学姐 ,一个SCI医学期刊编辑,探索用AI工具提效论文写作和发表。 完成一篇研究性论文,是将长时间积累的研究成果凝聚在几页纸中,对资深科学家而言也是一大挑战。作者们需要在充分论述科学问题和详细展示结果之间找到平…

【漏洞复现】东胜物流软件 GetProParentModuTreeList SQL注入漏洞

0x01 产品简介 东胜物流软件是青岛东胜伟业软件有限公司-款集订单管理、仓库管理、运输管理等多种功能于一体的物流管理软件。该公司初创于2004年11月(前身为青岛景宏物流信息技术有限公司),专注于航运物流相关环节的产品和服务。东胜物流信息管理系统货代版采用MS…