深度学习 -- 卷积神经网络

1、卷积神经网络的结构

大卫·休伯尔( David Hunter Hubel ) 等人研究发现,猫的视皮层上 存在简单细胞( simple cell )和复杂细胞( complex cell ),简单细胞会对 感受野中特定朝向的线段做出反应,而复杂细胞对于特定朝向的钱段移动也能做出反应,

福岛邦彦在此基础上提出了神经认知机模型,这是一种分 层神经网络模型。 神经认知机由负责对比度提取的 G 层,以及负责 图形特征提取的S细胞层和抗变形的C细胞层交替排列组成。 最上层的 C 细胞会输出识别结果 。 S 细胞和C 细胞分别根据简单细胞和复杂细胞 的英语首字母得名。 借助于 S细胞层和 C细胞层交替排列的结构,各种 输入模式的信息会在经过 S 细胞层提取特征后,通过 C 细胞层对特征琦变的容错,并在反复迭代后被传播到上一层。 经过这个过程,在底层提取 的局部特征会逐渐变成全局特征 。 因输入模式扩大、缩小或平移而产生 的畸变也能很好地被 C 细胞消除,所以网络对变形具有较好的稳健性。

神经认知机中,如果没有任何细胞对输入模式做出反应,就采用增加细胞的学习规则。 通过引人神经网络中的误差反向传播算法,人们得 到了卷积神经网络( Convolutional Neural Network)。 LeCun 等人提出的卷积神经网络和神经认知机一样,也是基于人类视皮层巾感受野的 结构得到的模型。 如下所示,卷积神经网络由输入层( input layer)、卷积层( convolution layer )、池化层(pooling layer )、全连接层(fully connected layer )和输出层( output layer )组成。 通过增加卷积层和池化层,还可以得到更深层次的网络,其后的全连接层也可以采用多层结构 。

2、卷积层

卷积神经网络中的卷积操作可以看作是输入样本和卷积核的内积运算 。 在第一层卷积层对输入样本进行卷积操作后 , 就可以得到特征图。 卷积层中是使用同一卷积核对每个输入样本进行卷积操作的。 在第二层及其以后的卷积层,把前一层的特征图作为输入数据,同 样进行卷积操作 。 该卷积操作与 Hubel-Wiesel 实验中的简单细胞具有相同 的作用。 如下图所示,对10 × 10的输入样本使用 3 × 3的卷积核进行卷 积操作后,可以得到一个 8 × 8 的特征图 。 特征阁的尺寸会小于输入样本, 为了得到和原始输入样本大小相同的特征图,可以采用对输入样本进行填充( padding)处理后再进行卷积操作的方法。 零填充( zero-padding)指 的就是用 0 填充输入样本的边界,填充大小为 P = (F -1)/2,其中 F 为 卷积核尺寸 。 在图 中,卷积核的滑动步长为 1。 我们也可以设定更 大的滑动步长,步快越大则特征图越小 。 另外,卷积结果不能直接作为特征图,需通过撒活函数计算后,把函数输出结果作为特征图 。

一个卷积层中可以有多个不同的卷积核,而每一个卷积核都对应一 个特征图 。

当卷积层的输入样本是三通道的彩色罔像时,卷积核就 会是三维的 3×M×M,M表示卷积核大小。 第二层及其以后的卷积层 的输入是上一层的特征图,而特征图的个数是由上一层的卷积核数决定 的。 例如, 当上一层的卷积核数为 8时,就会得到 8个特征图作为下一 层的输入,所以下一层需要 8个三维的 8×M×M卷积核。

3、池化层

池化层的作用是减小卷积层产生的特征图的尺寸 。 选取一个区域, 根据该区域的特征图得到新的特征图,这个过程就称为池化操作 。 对一 个 2×2 的区域进行池化操作后,得到的新特征图会被斥缩为原来尺寸 的 1/4。 池化操作降低了特征图的维度,使得特征表示对输入数据的位置变化具有稳健性。 池化操作与 Hubel-Wiesel实验中的复杂细胞具有相同的作用。 主要的池化方法如下图 3所示。 其中最常使用的是图 (a) 所示的 最大池化, 最大池 化是选取图像区域内的最大值作为新的特征图。 另外还有图 (b)所示的平均池化,以及图 (c)所示的 Lp池化。 平均池化是取图像区域内的平均值作为新的特征图 。 Lp 池化则 是通 过突出图像区域内的中央值而计算新的特征图 。在图 (c)中的公式中,p越大越能突出中心位置的值。

4、全连接层

和多层感知器一样,全连接层也是首先计算激活值,然后通过激 活函数计算各单元的输出值 。 激活函数包括 sigmoid、 tanh、 ReLU 等函 数。 由于全连接层的输入就是卷积层或池化层的输出,是二维的特征图,所以需要对二维特征图进行降维处理

5、输出层

和多层感知器的输出层一样,卷积神经网络的输出层也是使用似然函数计算各类别的似然概率。 卷积神经网络出现后,最先被应用在了手写字符分类上。 手写字符识别用到的是 0到 9这 10个数字,所以共有 10个输出单元。 每个单元对应一个类别, 使用公式(5.1)的softmax函数可以计算输出单元的似然概率,然后把概率最大的数字作为分类结果输出

公式5.1: p(y^k) = \frac{exp(u_{2k})}{\sum_{q=1}^{Q}exp(u_{2q})}

在递归问题中, 一般使用线性输出函数(公式5.2)计算各单元的输出值。

公式5.2: p(y^k) = \sum_{m=1}^{M}W_{pm}X_{m}

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用Docker Compose搭建CIG监控平台

CIG简介 CIG监控平台是基于CAdvisor、InfluxDB和Granfana构建的一个容器重量级监控系统,用于监控容器的各项性能指标。其中,CAdvisor是一个容器资源监控工具,用于监控容器的内存、CPU、网络IO和磁盘IO等。InfluxDB是一个开源的分布式时序、时…

机器学习-回归问题(Regression)

前言 与KNN分类任务预测的输出为离散型不同. 在机器学习中,回归任务是用于预测连续数值型变量的任务。回归任务在很多领域都有着广泛的应用. 回归问题求解 在一个回归问题中,很显然模型选择和好坏会直接关系到将来预测结果的接近程度,举个…

【高效开发工具系列】jackson入门使用

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

使用VC++设计程序实现K近邻中值滤波器(KNNMF)、最小均方差滤波器、矢量中值滤波算法进行滤波

VC实现若干种图像滤波技术2 获取源工程可访问gitee可在此工程的基础上进行学习。 该工程的其他文章: 01- 一元熵值、二维熵值 02- 图像平移变换,图像缩放、图像裁剪、图像对角线镜像以及图像的旋转 03-邻域平均平滑算法、中值滤波算法、K近邻均值滤波器 …

瑞云科技参与《数字孪生世界白皮书》编写,实时云渲染助力数字孪生

为了促进数字孪生技术的发展和应用,易知微与数字孪生世界企业联盟联合众多行业专家以及多家业内企业共同编写了《数字孪生世界白皮书(2023)》。该白皮书从数字孪生的综述、应用架构、核心技术、新型技术成果和重点行业应用等方面,…

图论|并查集理论基础 1971. 寻找图中是否存在路径

什么是并查集 并查集是一种数据结构,用于处理一些不交集的合并及查询问题。它支持两种操作: 查找(Find):确定某个元素属于哪个子集。它可以用来判断两个元素是否属于同一个子集。 合并(Union)&…

WebGL笔记:矩阵旋转运算的原理和实现

矩阵 矩阵(Matrix)是一个按照矩形纵横排列的复数集合 矩阵就像一个矩形的阵盘,通过其中纵横排列的元素我们可以摆出不同功能的阵法,比如位移矩阵、旋转矩阵、缩放矩阵 …在矩阵中的每一行,或者每一列数字构成的集合&a…

Flutter开发type ‘Future<int>‘ is not a subtype of type ‘int‘ in type cast错误

文章目录 问题描述错误源码 问题分析解决方法修改后的代码 问题描述 今天有个同事调试flutter程序时报错,问我怎么解决,程序运行时报如下错误: type ‘Future’ is not a subtype of type ‘int’ in type cast 错误源码 int order Databas…

2015年五一杯数学建模C题生态文明建设评价问题解题全过程文档及程序

2015年五一杯数学建模 C题 生态文明建设评价问题 原题再现 随着我国经济的迅速发展,生态文明越来越重要,生态文明建设被提到了一个前所未有的高度。党的十八大报告明确提出要大力推进生态文明建设,报告指出“建设生态文明,是关系…

探索意义的深度:自然语言处理中的语义相似性

一、说明 语义相似度,反应出计算机对相同内容,不同表达的识别能力。因而识别范围至少是个句子,最大范围就是文章,其研究方法有所区别。本文将按照目前高手的研究成绩,作为谈资介绍给诸位。 二、语义相似度简介 自然语言…

团队怎么高效制作问卷?

制作调查问卷时并不是一个人就能单独完成,通常情况下,完成一份调查问卷往往需要一个团队的成员参与,相互协作,共同完成。不过,多人协作经常会遇到协作壁垒,导致效率低下,那团队怎么才能高效协作…

【面试经典150 | 二分查找】搜索二维矩阵

文章目录 写在前面Tag题目来源题目解读解题思路方法一:二分查找 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法,两到三天更新一篇文章,欢迎催更…… 专栏内容以分析题目为主,并附带一些对于本题涉及到的数据结构等…

前端笔记(二):CSS 选择器与特性

CSS(层叠样式表)是一种样式表语言,用于描述HTML或XML文档的呈现方式。它定义了如何在屏幕、纸张或其他媒体上显示文档的样式、布局和外观。 里面的代码由 选择器 { } 组成 体验 CSS CSS 可以让我们界面变得更加美观,这是 CSS 的…

OpenSSH 漏洞修复升级最新版本

Centos7系统ssh默认版本一般是OpenSSH7.4左右,低版本是有漏洞的而且是高危漏洞,在软件交付和安全扫描上是过不了关的,一般情况需要升级OpenSSH的最新版本 今天详细说下升级最新版本的处理过程(认真看会发现操作很简单&#xff0c…

k8s-daemonset、job、cronjob控制器 6

Daemonset控制器(一个节点部署一个) 、 创建Daemonset控制器 控制节点上不能进行部署,有污点 解决方式: 扩容节点,token值过期的解决方法: 回收pod job控制器 需要使用perl镜像,仓库没有&…

基于Springboot + vue的汽车资讯网站

qq(2829419543)获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:springboot 前端:采用vue技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件&#xf…

阅读软件OmniReader Pro mac功能特色

OmniReader Pro mac是一款文字识别和阅读软件,它可以将印刷体和手写体的文字转换为数字文本,并将其朗读出来。该软件适用于视力受损、阅读困难、语言障碍等用户,可以帮助他们更加轻松地获取信息和阅读文本。 OmniReader Pro具有简洁直观的用户…

almalinux centos8系统zlmediakit编译安装

脚本 # 安装依赖 gcc-c.x86_64 这个不加的话会有问题, cmake需要在线安装 sudo yum -y install gcc gcc-c libssl-dev libsdl-dev libavcodec-dev libavutil-dev ffmpeg git openssl-devel gcc-c.x86_64 cmake mkdir -p /home/zenglg cd /home/zenglg git clon…

人工智能和网络安全:坏与好

人工智能似乎可以并且已经被用来帮助网络犯罪和网络攻击的各个方面。 人工智能可以用来令人信服地模仿真人的声音。人工智能工具可以帮助诈骗者制作更好、语法正确的网络钓鱼消息(而糟糕的语法往往会暴露出漏洞),并将其翻译成多种语言&…

华为1+x网络系统建设与运维(中级)-练习题2

一.设备命令 LSW1 [Huawei]sys LSW1 同理可得,给所有设备改名 二.VLAN LSW1 [LSW1]vlan ba 10 20 [LSW1]int g0/0/1 [LSW1-GigabitEthernet0/0/1]port link-type trunk [LSW1-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20 [LSW1-GigabitEthernet0/0/1]in…