[人工智能-深度学习-28]:卷积神经网络CNN - 网络架构与描述方法

2023-11-04

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/120806599


目录

第1章 卷积神经网络总体概述

1.1 什么是卷积神经网络

1.2 卷积神经网络的总体框架

1.3 卷积神经神经网络案例

第2章 卷积神经网络的描述方法

2.1 通道法、层内并行法

2.2 厚度法、层间串行法

2.3 神经网络的形状解读

第3章 卷积神经网络的本质

第4章卷积神经网络的发展与常见类型与分类



第1章 卷积神经网络总体概述

1.1 什么是卷积神经网络

1.2 卷积神经网络的总体框架

1.3 卷积神经神经网络案例

备注:

  • 通常情况下,带训练参数的层,成称为网络的层数。
  • RELU和POOL层本身不带有训练参数。

第2章 卷积神经网络的描述方法

2.1 通道法、层内并行法

通道法关注的是:

通道的数目,即为神经元的数目,与输入图形的三个RGB通道等位

而二维平面,即为每个神经元内部的W矩阵,长度 * 宽度就是每个神经元内部的参数的个数。

通道 * 二维矩阵描述了三维图片在CNN中的尺寸的变化,维度保持不变的变换过程,也反映了每一层参数的个数。

通道法的优缺点:

优点:

  • 通道法把每个神经元看成是并行的排列,相对于厚度法,更加直观,直观的体现了单层内部的各个神经元之间的并发行、并行性。

缺点:

  • 不方便表达不同层之间的图片处理的串行关系以及形状的变化!!!

2.2 厚度法、层间串行法

缺点:

(1)串行法把神经元在数据处理的方向叠加在了一起,神经元间的并行性看来其并不那么直观。

(2)由于把神经元叠加在了一起,就要求同层的每个神经元的形状必须相同!!!!

优点:

(1)表达神经网络层之间的串联结构就非常方便。

(2)表达神经网络层内部的三维结构(长*宽*高)也非常方便,直观。

(3)能够方便的表达数据在不同层之间的形状的变化关系:

  • 厚度:反应了并行性的神经元个数的变化、即通道个数的变化。
  • 长度*宽度(平面):面积的变化,反应了每一层神经元形状的变化,每个神经元W参数的变化情况。
  • 厚度 * 长度 * 宽度 =》某一个参数的个数(忽略个数极少的偏置参数)

(4)从输入到输出,表达方式统一、一致。

2.3 神经网络的形状解读

(1)现有神经网络案例解读

 输入层:深度为3,即个通道,每个通道的二维数据形状为32 * 32

卷积层1:深度为64,即64个通道或64个神经元,每个通道的二维数据形状为28 * 28(通过卷积获得输出形状),卷积核的大小为5*5(通过对上一层的感受野的大小来体现)

降采用层1:深度为64不变,每个通道的二维数据形状降为原先的一半:14 * 14 (降采样),采样核的大小为2*2(通过对上一层的感受野的大小来体现)

卷积层2:深度为64不变,即64个通道或64个神经元,每个通道的二维数据形状为10 * 10,卷积核的大小为5 * 5 (通过对上一层的感受野的大小来体现)

降采用层2深度为64不变,即64个通道或64个神经元,每个通道的二维数据形状为5 * 5, 由又降低一半。采样核的大小为2*2。

全连接层1:1024个并行的神经元,即1024个输出,输入取决于降采样层的输出:64*5*5

全连接层2:512个并行的神经元,即512个输出,输入取决于前一个全连接层:1024.

输出层:10个并行的神经元,即10个输出,输入取决于前一个全连接层:512.

(2)特别说明

  • 卷积网络的定义方式为:每一层的三维形状,以及该层的输出的个数 = 长度 * 宽度 * 深度 ,深度就是神经元的个数。即每个卷积核神经元的输出是长度 * 宽度。
  • 全连接网的定义方式为:每一层的形状,以及该层的输出的个数 = 1 * 1 * 深度,深度就是神经元的个数。即每个全连接网络神经元的输出是1*1.
  • 上述方式把全连接网络和卷积网络进行统一,因此全连接与卷积之间是可以相互替代(确保总总输出不变)。
  • 卷积网络只定义了网络的输入和输出以及卷积核的大小,并没有定义迭代的步长和填充数据大小。迭代步长和填充数据的大小是需要深度学习框架根据(1)输入形状+(2)输出形状+(3)卷积核形状,自动计算出来的,也就是说通过修正步长和填充,可以确保输入和输出的关系,他们之间的数学公式如下:

第3章 卷积神经网络的本质

 

第4章卷积神经网络的发展与常见类型与分类

 

 


作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/120806599

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

[人工智能-深度学习-28]:卷积神经网络CNN - 网络架构与描述方法 的相关文章

随机推荐

  • linux内核之双向链表实现原理

    1 内核中双向链表结构 Linux内核中广泛使用了一种称为循环双链 Circular Doubly Linked 链表的数据结构 即每个节点都有一个向前和向后的链接 而且首尾节点也相互连接 使用这样的链表 你可以很方便地访问任何一个元素的上
  • Android调用手机系统自带录音功能实现语音录制与播放

    首先调用手机系统自带的录音功能需要相关权限以及读写SD卡的权限
  • linux下C程序查看内存剩余大小

    嵌入式linux中很多内存资源都比较小 所以很多程序中在malloc时就需要提前知道内存剩余的大小 下面是一种调用 sysinfo接口来实现 示例代码如下 include
  • java--基础--16.8--IO流--打印流

    java 基础 16 8 IO流 打印流 1 介绍 1 1 分类 字节流打印流 PrintStream 字符打印流 PrintWriter 1 2 特点 只有写数据的 没有读取数据 只能操作目的地 不能操作数据源 可以操作任意类型的数据 如
  • 东北大学acm训练第四周(搜索)

    include
  • 在mac上配置vue开发环境

    1 在mac上安装brew brew 是 Mac 下的一个包管理工具 没有安装brew 检测用 brew v 则执行下面的命令安装 usr bin ruby e curl fsSL https raw githubusercontent c
  • sqli-18

    1 1 updatexml 1 concat 0x5c select group concat table name from information schema tables where table schema security
  • springMvc自定义校验注解

    spring 自定义注解 翻看公司代码 看到了自定义的注解 查了查 再次记录一下 还是太菜 下面是我的实现 1 自定义注解 package com test import javax validation Constraint import
  • 多核编程 与 单核多线程编程的区别

    一 首先声明 并行 两件 多件 事情在同一时刻一起发生 并发 两件 多件 事情在同一时刻只能有一个发生 由CPU快速切换 从而给人的感觉是同时进行 使用多线程来实现并行计算来缩短计算时间时 只要在多核CPU下才行 单核CPU下启用多线程最终
  • mac安装php8和apache

    如果自己在mac安装php 会涉及证书问题 而用brew方法安装 即可自动关联 省心省力 删除mac自带的apache sudo launchctl unload w System Library LaunchDaemons org apa
  • spring 或者spring boot 调整bean 的加载顺序:

    spring 或者spring boot 调整bean 的加载顺序 接下来讲解三种调整类加载顺序的方式 1 使用 Order调整配置类加载顺序 Configuration Order 1 public class ConfigA Bean
  • web安全之XSS攻击原理及防范

    一 什么是XSS攻击 二 反射型XSS 三 存储型XSS 四 DOM based型XSS 五 SQL注入 六 XSS如何防范 1 cookie安全策略 2 X XSS Protection设置 3 XSS防御HTML编码 4 XSS 防御H
  • JSON简单例子-1

    package com xuankai json import org json JSONArray import org json JSONObject public class Test public static void main
  • Java 中Map五种取值方式

    map的主要作用是什么 可以通过创建一个map的实现类 来存放 数据 值 和值的描述 也可以通过描述去取得数据 将键映射到值的对象 一个映射不能包含重复的键 每个键最多只能映射到一个值 此接口取代 Dictionary 类 后者完全是一个抽
  • python的@property有什么用?

    从本质上讲 property是一个语法糖 语法糖是python里老生常谈的事务了 比方说 最基础的len iterable 函数 其实是通过调用iterable len 方法实现的 只是pythonic的理念让我们习惯并且喜欢上使用诸如fu
  • EMWIN显示中文

    上面是我创建的群聊 欢迎新朋友的加入 安装软件 在桌面新建TXT 文件另存为 打开软件 选择字体和大小 取消所有已选内容 导入刚刚的文件 都在edit下面 截图不了 另存为C文件 导入工程 后面的问号不是乱码 是字符 后面整理一下文件 就是
  • Klocwork — 符合功能安全要求的自动化静态测试工具

    Klocwork 符合功能安全要求的自动化静态测试工具 Klocwork工具应用静态分析技术 可实现对C C Java等代码的全面静态分析 检查问题种类既包含软件质量和安全缺陷相关 也可实现多种语言编码规则规范的检查 通过使用Klocwor
  • QCC300x笔记(6) -- QCC3007的OTA流程梳理

    哈喽大家好 这是该系列博文的第六篇 篇 lt lt 系列博文索引 快速通道 gt gt 写在前面 QCC300x支持OTA功能 官方提供了详细的文档说明 按照文档即可升级成功 下面是对流程的简单梳理 可参考 文档和APP下载 1 生产APP
  • C语言解析FLM(ELF)格式文件

    C语言解析FLM ELF 格式文件 代码下载 https gitee com jhembedded flmparse 1 前言 写这篇博客的目的是因为最近在做一个STM32的离线编程器 离线下载需要用到FLM文件的下载算法 所以实现了一下提
  • [人工智能-深度学习-28]:卷积神经网络CNN - 网络架构与描述方法

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 120806599 目录 第1章 卷积神