cnn结构图怎么画cnn示意图mobcafddc的技术博客

前面我们介绍了Fully Connect Feedforward Network(全连接前馈⽹络),但是这种网络在运用到图像处理的时候,往往需要太多参数,因此进化出了CNN(Convolutional Neural network)来简化NN的架构,拿掉Fully Connected 的layer中的一些参数。

那怎么简化呢?这里提炼出CNN简化的三个property

博主花了许多心血将CNN的整个结构浓缩在这一张图中:

由此可以看出CNN的本质就是就是减少参数的过程,如果对上面的某些过程还不了解,下面给出一些网络上博主认为比较好的动图供大家理解

1.卷积过程动图

2.卷积的计算

3.卷积对应于神经网络计算的动图

4.池化动图

刚刚介绍了CNN的结构,接下来我们来分析下CNN的每一层到底学到了什么

以下图CNN为例:

先描述下图中所描述的过程:

要分析第⼀个convolution的filter是⽐较容易的,因为第⼀个convolution layer⾥⾯,每⼀个filter就是 ⼀个3×3的matrix,它对应到3×3范围内的9个pixel,所以你只要看这个filter的值,就可以知道它在detect什么东西,因此第⼀层的filter是很容易理解的。

但是你⽐较没有办法想像它在做什么事情的,是第⼆层的filter,它们是50个同样为3×3的filter,但是这些filter的input并不是pixel,⽽是做完convolution再做Max pooling的结果,因此filter考虑的范围并不是3×3=9个pixel,⽽是⼀个⻓宽为3×3,⾼为25的cubic(这里的高指channel),filter实际在image上看到的范围是远⼤于9个pixel的,所以你就算把它的weight拿出来,也不知道它在做什么。

即我们input⼀张image,然后把filter和image进⾏卷积所output的11×11个值全部加起来,当作现在这个filter被activate的程度

之前我们求minimize⽤的是gradient descent,那现在我们求Maximum⽤gradient ascent(梯度上升法)就可以做到这件事了

即把input x作为要找的参数,对它去⽤gradient ascent进⾏update,原来在train CNN的时候,input是固定的,model的参数是要⽤gradient descent去找出来的;但是现在这个⽴场是反过来的,在这个task⾥⾯model的参数是固定的,我们要⽤gradient ascent去update这个x,让它可以使degree of activation最⼤

上图就是得到的结果,50个filter理论上可以分别找50张image使对应的activation最⼤,这⾥仅挑选了其中的12张image作为展⽰,这些image有⼀个共同的特征,它们⾥⾯都是⼀些反复出现的某种texture(纹路),⽐如说第三张image上布满了⼩⼩的斜条纹,这意味着第三个filter的⼯作就是detect图上有没有斜条纹,要知道现在每个filter检测的都只是图上⼀个⼩⼩的范围⽽已,所以图中⼀旦出现⼀个⼩⼩的斜条纹,这个filter就会被activate,相应的output也会⽐较⼤,所以如果整张image上布满这种 斜条纹的话,这个时候它会最兴奋,filter的activation程度是最⼤的,相应的output值也会达到最⼤

因此每个filter的⼯作就是去detect某⼀种pattern,detect某⼀种线条,上图所⽰的filter所detect的就是不同⻆度的线条,所以今天input有不同线条的话,某⼀个filter会去找到让它兴奋度最⾼的匹配对象,这个时候它的output就是最⼤的

我们做完convolution和max pooling之后,会将结果⽤Flatten展开,然后丢到Fully connected的neural network⾥⾯去,之前已经搞清楚了filter是做什么的,那我们也想要知道在这个neural network⾥的每⼀个neuron是做什么的,所以就对刚才的做法如法炮制

我们定义第j个neuron的output就是 ,接下来就⽤gradient ascent的⽅法去找⼀张image x,把它丢到neural network⾥⾯就可以让 的值被maximize,即:

找到的结果如上图所⽰,同理这⾥仅取出其中的9张image作为展⽰,你会发现这9张图跟之前filter所观察到的情形是很不⼀样的,刚才我们观察到的是类似纹路的东西,那是因为每个filter考虑的只是图上⼀部分的vision,所以它detect的是⼀种texture;但是在做完Flatten以后,每⼀个neuron不再是只看整 张图的⼀⼩部分,它现在的⼯作是看整张图,所以对每⼀个neuron来说,让它最兴奋的、activation最⼤的image,不再是texture,⽽是⼀个完整的图形

接下来我们考虑的是CNN的output,由于是⼿写数字识别的demo,因此这⾥的output就是10维,我们把某⼀维拿出来,然后同样去找⼀张image x,使这个维度的output值最⼤,即

你可以想象说,既然现在每⼀个output的每⼀个dimension就对应到⼀个数字,那如果我们去找⼀张image x,它可以让对应到数字1的那个output layer的neuron的output值最⼤,那这张image显然应该看起来会像是数字1,你甚⾄可以期待,搞不好⽤这个⽅法就可以让machine⾃动画出数字。

但实际上,我们得到的结果是这样⼦,如下图所⽰

上⾯的每⼀张图分别对应着数字0-8,你会发现,可以让数字1对应neuron的output值最⼤的image其 实⻓得⼀点也不像1,就像是电视机坏掉的样⼦,为了验证程序有没有bug,这⾥⼜做了⼀个实验,把上述得到的image真的作为testing data丢到CNN⾥⾯,结果classify的结果确实还是认为这些image就对应着数字0-8

所以今天这个neural network,它所学到的东西跟我们⼈类⼀般的想象认知是不⼀样的

那我们有没有办法,让上⾯这个图看起来更像数字呢?想法是这样的,我们知道⼀张图是不是⼀个数字,它会有⼀些基本的假设,⽐如这些image,你不知道它是什么数字,你也会认为它显然就不是⼀个digit,因为⼈类⼿写出来的东西就不是⻓这个样⼦的,所以我们要对这个x做⼀些regularization,我们要对找出来的x做⼀些constraint(限制约束),我们应该告诉machine说,虽然有⼀些x可以让你的y很⼤,但是它们不是数字

那我们应该加上什么样的constraint呢?最简单的想法是说,画图的时候,⽩⾊代表的是有墨⽔、有笔画的地⽅,⽽对于⼀个digit来说,整张image上涂⽩的区域是有限的,像上⾯这些整张图都是⽩⽩的, 它⼀定不会是数字

如果再加上⼀些额外的constraint,⽐如你希望相邻的pixel是同样的颜⾊等等,应该可以得到更好的结果

使用JavaScript画一个蜘蛛网状结构图取得所有点构造成为一个graph图寻路对象

在很多的时间序列预测任务中,利用卷积神经网络(CNN)和长短期记忆网络(LSTM)的混合模型是目前常见的深度学习解决方案之一。CNN和LSTM各自有不同的特长,CNN擅长局部模式的捕捉,LSTM擅长捕捉序列的长依赖关系。通过混合这两种网络,可以非常好地学习时间序列数据中的复杂模式。核心原理CNN 部分:CNN 的优势在于能够从输入数据中提取局部特征。对于时间序列预测问题,时间序列可以看作一维数据序

ResNet模型ResNet(Residual Network)是由微软研究院的Kaiming He等人在2015年提出的深度卷积神经网络架构。ResNet引入了“残差学习”(Residual Learning)的概念,允许网络的深度大幅增加而不会造成梯度消失或退化问题,从而使得训练更深的网络成为可能。ResNet模型结构ResNet的基本构建块是残差块(Residual Block),其结构如下

Fast R-CNN(快速的基于区域的卷积神经网络)摘要  本文对于目标检测任务提出一种基于区域的快速卷积神经网络方法(Fast R-CNN)。Fast R-CNN依据之前的工作,使用深度卷积网络高效的给出分类目标建议。与之前的工作相比,Fast R-CNN做出一些创新来提高训练与测试的速度,同时也提高了检测精度。在使用VGG16网络基础上,Fast R-CNN训练过程要比R-CNN算法

未完待续。。。faster-rcnn的模型训练需要大量数据集,目前使用labelImg工具,需要人工一张一张标注,效率低。本文使用python编写了自动化图片标注和数据集生成工具(本文标注目标是人脸,大家可以根据需要训练其他目标判别模型,比如汽车、自行车等标注需要的图片数据集)。使用该工具可以自动完成整个数据集的生成(图片标注和数据集文件),生成的数据集符合pascal voc格式,可以直接在fa

工作中PPT是我们一个常用的工具,用好PPT的一个方法就是要会用它来画图,毕竟“一图胜千言”嘛。下面会简单介绍一些PPT画图的一些入门知识,本人暂时还处在浅尝辄止阶段,欢迎大家一起讨论。使用小贴士下面是使用PPT画图过程中可能会用到的一些小贴士:用鼠标移动对象十分方便。但是需要垂直或水平移动的时候可同时按住Shift键如果想选中分散的对象,按住 Ctrl 键然后选中一个一个对象快捷键 Ctrl-A

UML规范定义了两种主要的UML图:结构图和 行为图。1、结构图 显示了系统及其部件在不同抽象和实现级别上的静态结构以及它们如何相互关联。结构图中的元素表示系统的有意义的概念,并且可以包括抽象的,现实的和实现的概念。2、行为图 显示了系统中对象的动态行为,可以将其描述为系统随时间的一系列更改。1、结构图: 图目的元素类图Class Diagram显示设计的系统,子系统或组件作为相关类和接

本文主要是对前一段时间的深度学习进行归纳总结,其中有参考几位主要博主的理解,也有自己对大神论文的一些翻译及看法,如有问题,欢迎大家指正;深度学习     深度学习主要是对人工神经网络的延伸,它的目的主要是模拟人脑的机制来解释图像,深度学习通过组织底层特征来形成更加高级的高层特征来表示属性和类别,深度学习算法包括限制波尔兹曼机和CNN网络等,本文主要讲解CNN网络,其实

一些CNN网络结构的发展RCNN–Regions with CNN features1.在图像中确定约1000-2000个候选框 (使用选择性搜索Selective Search)2.每个候选框内图像块缩放至相同大小,并输入到CNN内进行特征提取3.对候选框中提取出的特征,使用分类器判别是否属于一个特定类4.对于属于某一类别的候选框,用回归器进一步调整其位置Fast R-CNN1.在图像中确定约1

3.4 CNN架构学习目标目标知道LeNet-5网络结构了解经典的分类网络结构说明一些常见的卷机网络结构的优化知道NIN中1x1卷积原理以及作用知道Inception的作用说明ResNet的结构特点了解卷积神经网络学习过程内容应用无下面我们主要以一些常见的网络结构去解析,并介绍大部分的网络的特点。这里看一下卷积的发展历史图。3.4.1 LeNet-5解析首先我们从一个稍微早一些的卷积网络结构LeN

二维材料定义二维材料的定义是指电子仅可在两个维度的纳米尺度(1-100nm)上自由运动(平面运动)的材料,如纳米薄膜、超晶格、量子阱等。二维材料制作原理二维材料是层状结构,层间有弱范德华力作用,层内各个原子间有强共价键或离子键作用,层间的剥离能小于层内剥离能。二维材料制备的关键就是在制备过程中使用何种方法克服层间范德华力将二维材料分层,同时又不会将材料层破坏掉。二维材料制作方法二维材料剥离制备常用

1. 卷积神经网络结构 卷积神经网络是一个多层的神经网络,每层都是一个变换(映射),常用卷积convention变换和pooling池化变换,每种变换都是对输入数据的一种处理,是输入特征的另一种特征表达;每层由多个二维平面组成,每个平面为各层处理后的特征图(feature map)。常见结构: 输入层为训练数据,即原始数据,网络中的每一个特征提取层(C-层)都紧跟着一个二次提取

1. 本章学习总结以你喜欢的方式(思维导图、OneNote或其他)归纳总结多网络相关内容。GET / HTTP/1.0可以返回一个HTML格式的文本页IP地址可以用来标识网络上的主机Socket通常用来实现客户端和服务器端的连接网络上两个程序通过一个双向通信链路实现数据交换,这个双向链路的一端称为一个Socket对从Socket对象中获得的流进行操作,即可进行网络通信ServerSocket的ac

visio 绘图技巧、快捷键大全,一键对齐前言一、常用快捷键二、使用技巧对象移动对象复制绘制直线一键对齐 自动排列(==非常好用==)辅助线对齐图像边缘空白消除word中visio图编辑技巧去掉直线交叉点增加连接点 前言Visio 是Office软件系列中的负责绘制流程图和示意图的软件,在日常软件设计、文档编写过程中会被大量使用。下面我们来讲一讲visio常用快捷键及绘图技巧。一、常用快捷键功能

边缘计算是续云计算、物联网、5G时代之后的有一个新生代宠儿。这里我分享一个彩蛋,昨天我一个同事理解边缘计算是一种识别算法,觉得通过识别图像数据中的实体的边缘轮廓,得出该实体所表现出来的动作,比如扒窃动作识别、打架行为识别等,其实不然。边缘计算非常简单的来说就是在数据采集端有一个“中央处理器”,将采集的数据进行一个有目的性的处理或者运算,或者在就近的几个数据采集端配备一个“中央处理器”采取就近计算的

图解例子在最后最近在看李宏毅老师的机器学习,讲到CNN这里的时候对下面这张PPT怎么都想不明白,经过一番网上冲浪,终于搞明白了。原PPT如下。核心疑问:25 * 13 * 13的特征图在经过50个3 * 3的filter之后是怎么变成50 * 11 * 11的特征图的?这一切要从CNN是怎么做卷积的说起。对上图PPT的例子分析如下: (1)输入图像为灰度图(只有一个channel),大小为28 *

这种方案利用Spring提供的条件注解(如等)实现插件的动态加载。通过配置文件或环境变量控制哪些插件被激活,适合简单的插件化需求。SPI(Service Provider Interface)是Java提供的一种服务发现机制,允许第三方为系统提供实现。SpringBoot也提供了类似机制的扩展,可以利用它实现一种松耦合的插件化架构。SpringBoot的自动配置机制是实现插件化的另一种强大方式。通过创建独立的starter模块,每个插件可以自包含所有依赖和配置,实现"即插即用"。

你是否还在为前端应用的崩溃问题头疼?用户反馈页面加载缓慢却找不到原因?本文将带你通过Frontend Bootcamp项目实战,掌握Sentry错误监控与性能分析平台的集成方法,让你轻松定位和解决前端问题。读完本文你将学到:如何在React+TypeScript项目中集成Sentry实现错误捕获与用户行为追踪配置性能监控指标分析实战案例中的监控数据项目结构与监控集成基础Frontend Boot

强研发团队的 AI 战略选择:JBoltAI 为何成为 "自研派" 的最优解对于拥有成熟技术积淀的 Java 研发团队而言,"是否自研 AI 框架" 的争论从未停止。很多团队默认 "自研即掌控",却忽视了 AI 应用开发背后的隐性成本与实践鸿沟。JBoltAI 框架以 "成熟方案 + 全景能力 + ...

Keil uVision5 MDK 5.39 就是 “ARM 内核单片机的专业编程 + 调试全家桶” —— 简单说,它是给 “ARM 内核芯片”(比如 STM32、NXP LPC、Nordic nRF 系列,广泛用于无人机、智能穿戴、工业控制器、汽车电子的核心芯片)开发嵌入式程序的 “一站式工作台” ...

THE END
0.AI绘图之科研示意图练手知道了图中的基本元素是怎么绘制的,画这类图也就成功了一半。剩下的难点就是,示意图中大量细胞的排布是怎么画出来的?难道需要一个个复制?看完文章,你就知道啦。 一、路径绘制 新建一个图层,命名为“描图层”(养成良好的分层习惯能使绘图变得井井有条)。用工具栏中的矩形工具(快捷键M)和矩形工具栏目下的椭圆工具(快捷键L)简单卡 jvzquC41yy}/lrfpuj{/exr1r1<86B<32c8ff=
1.画出下列微粒的结构示意图.(1)氧原子(2)氧离子(3)氮原子(4)硫原子分析根据原子结构示意图和离子结构示意图的画法来分析解答. 解答解:(1)氧原子的核内质子数为8,核外电子数为8,故答案为: ; (2)氧原子最外层有6个电子,易得到2个使得最外层达到8个电子的稳定结构,故填: ; (3)氮原子核内质子数为7,核外电子数为7,故填: jvzq<84yyy422:5lkcpjcx3eqo5d|q}1ujoukhnfa3>f7n776f
2.写出下列粒子的符号并画出结构示意图:(1)原子核外最外层电子数是写出下列粒子的符号并画出结构示意图:(1)原子核外最外层电子数是次外层电子数3倍的原子___.(2)原子核外有三个电子层,最外层有7个电子的原子___.(4)原子核外有15个电子的jvzquC41yy}/|‚gcpi4dqv4swgyukxs14:847;;34:i23;:dgg<64>f2;3l49>;f0jznn
3.基于Solidworks的三维光路结构示意图绘制实例演示首先,参考一下几类三维光路结构示意图: 参考自文献[1] 文献[2] 文献[3] 文献[4] 二、基于Solidworks的三维光路结构绘制实例演示 我们以第一幅图为例,通过Solidworks来复现三维光路结构的绘制。 复现的光路结构如下图所示。 基于Solidworks绘制的三维光路结构 jvzquC41dnuh0lxfp0tfv8vsa5<6:=9821gsvrhng1jfvjnnu1738?6638<
4.机械实训总结(精选10篇)②为了使图形表达得更清晰,通常是将所测绘部件假想成透明体,即画外形轮廓,又画内部结构。 ③有些零件如轴、轴承、齿轮、弹簧等,应按国家标准中的规定符号表示。如果没有规定符号则该零件用单线条画出它的大致轮廓,以显示其形体的基本特点。 ④在装配示意图上编出零件序号,其编号最好按拆卸顺序排列,并且列表填写jvzq<84yyy4vpsx0eqs0hjsygpqv1;96:;9/j}rn
5.什么是网络拓扑图?怎么画怎么画 一、什么是网络拓扑图   网络拓扑图指由路由器、计算机、交换机、打印机等网络节点设备与通信介质组成的网络结构图。简而言之就是将各网络节点设备与通信介质直观呈现在图示中。 二、网络拓扑图分类   网络拓扑图有星型、分布式、环形、蜂窝、总线、树形、网状等多种分类的结构。   其中常见的有六类,即:总线型、星 jvzquC41yy}/nrzejgthv~3eqo5uw}ttkcr0v~trwv{tjrxjgpsf0qyon1
6.小学语文精读课文的方法2. 中年级:段落关系示意图 用"总分""并列""因果"等符号标注段落关系。《美丽的小兴安岭》按春夏秋冬顺序描写,就是典型的并列结构,我让学生画"四季树状图",每个季节的景物特点一目了然。 3. 高年级:思维导图梳理逻辑 学习说明文时,用思维导图呈现说明对象、特征、说明方法。比如《鲸》这课,可以中心主题画"鲸jvzquC41yy}/srszwg9777hqo1lbppkc16862>60jvsm
7.谁揭开了生物学界“圣杯”的面纱?西湖大学新浪财经NPC的结构示意图 由于NPC分子具有巨大的尺寸和结构柔性,获得完整NPC支架的高分辨率结构具有极高难度。该团队创新性地利用倾转样品台的办法对包埋在核膜中的完整NPC分子进行研究。 通过将NPC支架部分拆分成CR、IR和NR三个环状结构,并在各个环内进一步拆分成各个稳定区域,分别进行颗粒对中和三维重构,团队最终获得了迄今为jvzq<84hkpgoen3ukpg/exr0ep5kl|14283/9;/445eql2kok€jtjz;;9;98@3ujvsm
8.C语言switch语句和if用法介绍C语言第一次画图,可能画的有点难看,希望见谅 2.if语句结构示意图 看完这两张图后,我们来深入了解switch 1.与其说switch是分支结构,不如说它是顺序结构。 虽然说switch是从不同的case进入整个switch内部的,但是我们要知道,switch从case进入以后只有两种到达出口的方式,遇到break和switch语句全部结束,根据结构图也可以知道jvzquC41yy}/lk:30pku1jwvkerf1;8436:/j}r
9.画出下列粒子的结构示意图:(1)Na+:,(2)Na:,(3)H+:.题目和参考(2)如图2是锂原子的构成示意图,根据图示信息回答下列问题: ①锂元素的原子序数为 3 ,元素符号为 Li ; ②画出锂原子结构示意图 ; ③锂元素的氧化物的化学式为 Li2O ; ④下列对原子的构成描述不正确的是 C (填字母). A.整个原子不显电性 B.原子核的直径约为原子直径的万分之一到10万分之一 jvzq<84yyy422:5lkcpjcx3eqo5d|q}1ujoukhnfa68cdl>9d4=dg<;6g5=33;ig87g4f;=32
10.好书·推荐绘画新浪财经周文矩《重屏会棋图》 宋摹本 北京故宫博物院藏 以《韩熙载夜宴图》与《重屏会棋图》这两幅作品为例,巫鸿对比其结构示意图,发现二者在内容上十分相似,主要区别就在于画家利用不同绘画媒材展现图像的方式。 《韩熙载夜宴图》与《重屏会棋图》结构示意图 jvzq<84hkpgoen3ukpg/exr0ep5kl|14284/9>/235eql2ko|qftlk779782B3ujvsm