| |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| -> 人工智能 -> 编码理解 | 卷积的实现和卷积神经网络 -> 正文阅读 |
|
|
[人工智能]编码理解 | 卷积的实现和卷积神经网络 |
|
目录 1.标准卷积Standard/Plain Convolution 1.标准卷积Standard/Plain Convolution
?CNNs[1]中的卷积,也称为滤波器,其本质上是由一组带参数的卷积核所组成,它是通过卷积核来提取出图片中的局部特征。如下图所示,卷积的过程其实就是通过将滤波器从上到下,从左到右进行遍历,每匹配一次即对相应位置的元素进行加权求和输出.
红色示例输入体积(例如 32x32x3 CIFAR-10 图像),以及第一个卷积层中的神经元示例体积。卷积层中的每个神经元在空间上仅连接到输入体积中的局部区域,但连接到全深度(即所有颜色通道)。请注意,沿深度有多个神经元(本例中为 5 个),它们都在输入中的同一区域:连接这列 5 个神经元的线不代表权重(即这 5 个神经元不共享相同的权重)权重,但它们与 5 个不同的过滤器相关联),它们只是表明这些神经元连接到或查看输入体积的相同感受野或区域,即它们共享相同的感受野但不同的权重。神经网络章节中的神经元保持不变:它们仍然计算权重与输入的点积,然后是非线性,但它们的连接性现在被限制为局部空间。 卷积运算本质上就是在滤波器和输入数据的局部区域间做点积。 1.1.卷积演示Convolution Demo。下面是一个 CONV 层的运行演示。由于 3D 体积难以可视化,因此所有体积(输入体积(蓝色)、权重体积(红色)、输出体积(绿色))都被可视化,每个深度切片堆叠成行。输入体积大小W1=?5?,H1=?5?,D1=?3W1=5,H1=5,D1=3, CONV 层参数为?=?2?,?F=?3?,?S=?2?,?P=?1?=2,F=3,小号=2,磷=1.?也就是说,我们有两个大小为3?×?33×3,并且它们以 2 的步幅应用。因此,输出体积大小的空间大小为 (5 - 3 + 2)/2 + 1 = 3。此外,请注意填充为1,应用于输入体积,使输入体积的外边界为零。下面的可视化迭代了输出激活(绿色),并显示每个元素是通过将突出显示的输入(蓝色)与过滤器(红色)相乘,相加,然后用偏差抵消结果来计算的。
?计算过程如下:(蓝色数字指蓝框内的值,红色为卷积核内的值,绿色为输出值)
?1.2.卷积的特征提取?卷积核是自带核参数的,它可以基于诸如梯度下降的方法进行参数的更新,以更好的适应输入图像的分布。通过不断的堆叠卷积层,网络便可以提取到丰富的分层特征表示(Hierarchical feature representation) ?
?
2.实例:PyTorch卷积实现代码Pytorch深度学习框架中,实现卷积最长使用的是torch.nn.Conv2d来实现卷积。
|
|
|
|
|
| 上一篇文章 下一篇文章 查看所有文章 |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年11日历 | -2025/11/29 3:11:41- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |