神经网络之卷积篇:详解简单卷积网络示例(A simple convolution network example)

news/2024/9/29 21:35:06

详解简单卷积网络示例

假设有一张图片,想做图片分类或图片识别,把这张图片输入定义为\(x\),然后辨别图片中有没有猫,用0或1表示,这是一个分类问题,来构建适用于这项任务的卷积神经网络。针对这个示例,用了一张比较小的图片,大小是39×39×3,这样设定可以使其中一些数字效果更好。所以\(n_{H}^{[0]} = n_{W}^{[0]}\),即高度和宽度都等于39,\(n_{c}^{[0]} =3\),即0层的通道数为3。

假设第一层用一个3×3的过滤器来提取特征,那么\(f^{[1]} = 3\),因为过滤器时3×3的矩阵。\(s^{[1]} = 1\)\(p^{[1]} =0\),所以高度和宽度使用valid卷积。如果有10个过滤器,神经网络下一层的激活值为37×37×10,写10是因为用了10个过滤器,37是公式\(\frac{n + 2p - f}{s} + 1\)的计算结果,也就是\(\frac{39 + 0 - 3}{1} + 1 = 37\),所以输出是37×37,它是一个vaild卷积,这是输出结果的大小。第一层标记为\(n_{H}^{[1]} = n_{W}^{[1]} = 37\)\(n_{c}^{[1]} = 10\)\(n_{c}^{[1]}\)等于第一层中过滤器的个数,这(37×37×10)是第一层激活值的维度。

假设还有另外一个卷积层,这次采用的过滤器是5×5的矩阵。在标记法中,神经网络下一层的\(f=5\),即\(f^{\left\lbrack 2 \right\rbrack} = 5\)步幅为2,即\(s^{\left\lbrack 2 \right\rbrack} = 2\)padding为0,即\(p^{\left\lbrack 2 \right\rbrack} = 0\),且有20个过滤器。所以其输出结果会是一张新图像,这次的输出结果为17×17×20,因为步幅是2,维度缩小得很快,大小从37×37减小到17×17,减小了一半还多,过滤器是20个,所以通道数也是20,17×17×20即激活值\(a^{\left\lbrack 2 \right\rbrack}\)的维度。因此\(n_{H}^{\left\lbrack 2 \right\rbrack} = n_{W}^{\left\lbrack 2 \right\rbrack} = 17\)\(n_{c}^{\left\lbrack 2 \right\rbrack} = 20\)

来构建最后一个卷积层,假设过滤器还是5×5,步幅为2,即\(f^{\left\lbrack 2 \right\rbrack} = 5\)\(s^{\left\lbrack 3 \right\rbrack} = 2\),计算过程跳过了,最后输出为7×7×40,假设使用了40个过滤器。padding为0,40个过滤器,最后结果为7×7×40。

到此,这张39×39×3的输入图像就处理完毕了,为图片提取了7×7×40个特征,计算出来就是1960个特征。然后对该卷积进行处理,可以将其平滑或展开成1960个单元。平滑处理后可以输出一个向量,其填充内容是logistic回归单元还是softmax回归单元,完全取决于是想识图片上有没有猫,还是想识别\(K\)种不同对象中的一种,用\(\hat y\)表示最终神经网络的预测输出。明确一点,最后这一步是处理所有数字,即全部的1960个数字,把它们展开成一个很长的向量。为了预测最终的输出结果,把这个长向量填充到softmax回归函数中。

这是卷积神经网络的一个典型范例,设计卷积神经网络时,确定这些超参数比较费工夫。要决定过滤器的大小、步幅、padding以及使用多少个过滤器。

而要掌握的一点是,随着神经网络计算深度不断加深,通常开始时的图像也要更大一些,初始值为39×39,高度和宽度会在一段时间内保持一致,然后随着网络深度的加深而逐渐减小,从39到37,再到17,最后到7。而通道数量在增加,从3到10,再到20,最后到40。在许多其它卷积神经网络中,也可以看到这种趋势。关于如何确定这些参数,这是讲的第一个卷积神经网络示例。

一个典型的卷积神经网络通常有三层,一个是卷积层,常常用Conv来标注。上一个例子,用的就是CONV。还有两种常见类型的层,一个是池化层,称之为POOL。最后一个是全连接层,用FC表示。虽然仅用卷积层也有可能构建出很好的神经网络,但大部分神经望楼架构师依然会添加池化层和全连接层。幸运的是,池化层和全连接层比卷积层更容易设计。

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

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

相关文章

3分钟了解CDN

CDN CDN的全称是Content Delivery Network,即内容分发网络。CDN的全称是Content Delivery Network,即内容分发网络CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器 通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低…

新手朋友在安装pbootcms经常遇到一些错误(PbootCMS 常见问题及解决方法)

Parse error: syntax error, unexpected :, expecting {问题描述:在 www\core\function\handle.php 文件第 130 行出现了语法错误,提示意外的冒号。 原因分析:此错误通常出现在尝试在较旧的 PHP 版本上运行需要 PHP 7.x 或更高版本的代码时。PHP 7 引入了一些新的语法特性,…

【VMware VCF】VCF 5.2:配置管理域 vSAN 延伸集群。

VMware vSAN 解决方案中,根据集群的配置类型分为 vSAN 标准集群、vSAN 延伸集群以及双主机集群(延伸集群特例)。我们最常见的使用方式应该是 vSAN 标准集群,也就是 vSAN HCI 超融合集群,至少由 3 台 ESXi 主机所组成,这些 ESXi 主机安装位属于同一个数据中内,将本地磁盘…

Datawhale X 李宏毅苹果书AI夏令营深度学习入门(三)

一.实践方法论 (一)模型偏差 模型偏差可能会影响模型训练。若模型过于简单,一个有未知参数的函数代θ1 得到一个函数 fθ1(x),同理可得到另一个函数 fθ2(x),把所有的函数集合起来得到一个函数的集合。但是该函数的集合太小了,没有包含任何一个函数,可以让损失变低的函数不…

PlugIR:开源还不用微调,首尔大学提出即插即用的多轮对话图文检索 | ACL 2024

即插即用的PlugIR通过LLM提问者和用户之间的对话逐步改进文本查询以进行图像检索,然后利用LLM将对话转换为检索模型更易理解的格式(一句话)。首先,通过重新构造对话形式上下文消除了在现有视觉对话数据上微调检索模型的必要性,从而使任意黑盒模型都可以使用。其次,构建了…

「代码随想录算法训练营」第五十二天 | 图论 part10

目录Floyd算法题目:97. 小明逛公园A * 算法题目:126.骑士的攻击最短路算法总结 Floyd算法 Floyd算法用于求解多源最短路问题(求多个起点到多个终点的多条最短路径)。在前面学习的dijkstra算法、Bellman算法都是求解单源最短路的问题(即只能有一个起点)。 注意:Floyd算法…

定义一个正则表达式,使用finditer从表达式内取值后存储到列表中

演示代码:responce = requests.get(url = url_web,headers=head) url_obj = re.compile(r<a class="media-content" target="_blank" href="(?P<url>.*?)" title=".*?" ,re.S) list_url = url_obj.finditer(responce.tex…