导航:首页 > 网络问题 > 卷积神经网络用什么平台

卷积神经网络用什么平台

发布时间:2022-09-23 14:37:56

如何使用tensorflow实现卷积神经网络

没有卷积神经网络的说法,只有卷积核的说法。
电脑图像处理的真正价值在于:一旦图像存储在电脑上,就可以对图像进行各种有效的处理。如减小像素的颜色值,可以解决曝光过度的问题,模糊的图像也可以进行锐化处理,清晰的图像可以使用模糊处理模拟摄像机滤色镜产生的柔和效果。
用Photoshop等图像处理,施展的魔法几乎是无止境的。四种基本图像处理效果是模糊、锐化、浮雕和水彩。?这些效果是不难实现的,它们的奥妙部分是一个称为卷积核的小矩阵。这个3*3的核含有九个系数。为了变换图像中的一个像素,首先用卷积核中心的系数乘以这个像素值,再用卷积核中其它八个系数分别乘以像素周围的八个像素,最后把这九个乘积相加,结果作为这个像素的值。对图像中的每个像素都重复这一过程,对图像进行了过滤。采用不同的卷积核,就可以得到不同的处理效果。?用PhotoshopCS6,可以很方便地对图像进行处理。
模糊处理——模糊的卷积核由一组系数构成,每个系数都小于1,但它们的和恰好等于1,每个像素都吸收了周围像素的颜色,每个像素的颜色分散给了它周围的像素,最后得到的图像中,一些刺目的边缘变得柔和。
锐化卷积核中心的系数大于1,周围八个系数和的绝对值比中间系数小1,这将扩大一个像素与之周围像素颜色之间的差异,最后得到的图像比原来的图像更清晰。
浮雕卷积核中的系数累加和等于零,背景像素的值为零,非背景像素的值为非零值。照片上的图案好像金属表面的浮雕一样,轮廓似乎凸出于其表面。
要进行水彩处理,首先要对图像中的色彩进行平滑处理,把每个像素的颜色值和它周围的二十四个相邻的像素颜色值放在一个表中,然后由小到大排序,把表中间的一个颜色值作为这个像素的颜色值。然后用锐化卷积核对图像中的每个像素进行处理,以使得轮廓更加突出,最后得到的图像很像一幅水彩画。
我们把一些图像处理技术结合起来使用,就能产生一些不常见的光学效果,例如光晕等等。
希望我能帮助你解疑释惑。

⑵ 基于keras平台的卷积神经网络识别,可以用矩形框圈主识别的位置么

不知道呢。

⑶ 如何用tensorflow搭建卷积神经网络

在MNIST数据集上,搭建一个简单神经网络结构,一个包含ReLU单元的非线性化处理的两层神经网络。在训练神经网络的时候,使用带指数衰减的学习率设置、使用正则化来避免过拟合、使用滑动平均模型来使得最终的模型更加健壮。
程序将计算神经网络前向传播的部分单独定义一个函数inference,训练部分定义一个train函数,再定义一个主函数main。

二、分析与改进设计
1. 程序分析改进
第一,计算前向传播的函数inference中需要将所有的变量以参数的形式传入函数,当神经网络结构变得更加复杂、参数更多的时候,程序的可读性将变得非常差。
第二,在程序退出时,训练好的模型就无法再利用,且大型神经网络的训练时间都比较长,在训练过程中需要每隔一段时间保存一次模型训练的中间结果,这样如果在训练过程中程序死机,死机前的最新的模型参数仍能保留,杜绝了时间和资源的浪费。
第三,将训练和测试分成两个独立的程序,将训练和测试都会用到的前向传播的过程抽象成单独的库函数。这样就保证了在训练和预测两个过程中所调用的前向传播计算程序是一致的。
2. 改进后程序设计
mnist_inference.py
该文件中定义了神经网络的前向传播过程,其中的多次用到的weights定义过程又单独定义成函数。
通过tf.get_variable函数来获取变量,在神经网络训练时创建这些变量,在测试时会通过保存的模型加载这些变量的取值,而且可以在变量加载时将滑动平均值重命名。所以可以直接通过同样的名字在训练时使用变量自身,在测试时使用变量的滑动平均值。
mnist_train.py
该程序给出了神经网络的完整训练过程。
mnist_eval.py
在滑动平均模型上做测试。
通过tf.train.get_checkpoint_state(mnist_train.MODEL_SAVE_PATH)获取最新模型的文件名,实际是获取checkpoint文件的所有内容。

⑷ 深度学习Caffe实战笔记Caffe平台下,怎样调整卷积神经网络结构

调整cnn网络结构需要增加或者减少layer的层数,并且更改layer的类型,比如在现有的conv层和pooling层后面继续增加conv层和pooling层,目的是为了提取更高层次的特征。当然你也可以增加全连接层数目(那么做训练会变慢--、),修改激活函数和填充器类型。建议你还是使用caffe中自带的cifar10_quick和caffenet进行训练,然后针对你的数据修改相应的网络参数和solver参数。

⑸ 卷积神经网络

关于花书中卷积网络的笔记记录于 https://www.jianshu.com/p/5a3c90ea0807 。

卷积神经网络(Convolutional Neural Network,CNN或ConvNet)是一种具有 局部连接、权重共享 等特性的深层前馈神经网络。卷积神经网络是受生物学上感受野的机制而提出。 感受野(Receptive Field) 主要是指听觉、视觉等神经系统中一些神经元的特性,即 神经元只接受其所支配的刺激区域内的信号

卷积神经网络最早是主要用来处理图像信息。如果用全连接前馈网络来处理图像时,会存在以下两个问题:

目前的卷积神经网络一般是由卷积层、汇聚层和全连接层交叉堆叠而成的前馈神经网络,使用反向传播算法进行训练。 卷积神经网络有三个结构上的特性:局部连接,权重共享以及汇聚 。这些特性使卷积神经网络具有一定程度上的平移、缩放和旋转不变性。

卷积(Convolution)是分析数学中一种重要的运算。在信号处理或图像处理中,经常使用一维或二维卷积。

一维卷积经常用在信号处理中,用于计算信号的延迟累积。假设一个信号发生器每个时刻t 产生一个信号 ,其信息的衰减率为 ,即在 个时间步长后,信息为原来的 倍。假设 ,那么在时刻t收到的信号 为当前时刻产生的信息和以前时刻延迟信息的叠加:

我们把 称为 滤波器(Filter)或卷积核(Convolution Kernel) 。假设滤波器长度为 ,它和一个信号序列 的卷积为:

信号序列 和滤波器 的卷积定义为:

一般情况下滤波器的长度 远小于信号序列长度 ,下图给出一个一维卷积示例,滤波器为 :

二维卷积经常用在图像处理中。因为图像为一个两维结构,所以需要将一维卷积进行扩展。给定一个图像 和滤波器 ,其卷积为:

下图给出一个二维卷积示例:

注意这里的卷积运算并不是在图像中框定卷积核大小的方框并将各像素值与卷积核各个元素相乘并加和,而是先把卷积核旋转180度,再做上述运算。

在图像处理中,卷积经常作为特征提取的有效方法。一幅图像在经过卷积操作后得到结果称为 特征映射(Feature Map)

最上面的滤波器是常用的高斯滤波器,可以用来对图像进行 平滑去噪 ;中间和最下面的过滤器可以用来 提取边缘特征

在机器学习和图像处理领域,卷积的主要功能是在一个图像(或某种特征)上滑动一个卷积核(即滤波器),通过卷积操作得到一组新的特征。在计算卷积的过程中,需要进行卷积核翻转(即上文提到的旋转180度)。 在具体实现上,一般会以互相关操作来代替卷积,从而会减少一些不必要的操作或开销。

互相关(Cross-Correlation)是一个衡量两个序列相关性的函数,通常是用滑动窗口的点积计算来实现 。给定一个图像 和卷积核 ,它们的互相关为:

互相关和卷积的区别仅在于卷积核是否进行翻转。因此互相关也可以称为不翻转卷积 。当卷积核是可学习的参数时,卷积和互相关是等价的。因此,为了实现上(或描述上)的方便起见,我们用互相关来代替卷积。事实上,很多深度学习工具中卷积操作其实都是互相关操作。

在卷积的标准定义基础上,还可以引入滤波器的 滑动步长 零填充 来增加卷积多样性,更灵活地进行特征抽取。

滤波器的步长(Stride)是指滤波器在滑动时的时间间隔。

零填充(Zero Padding)是在输入向量两端进行补零。

假设卷积层的输入神经元个数为 ,卷积大小为 ,步长为 ,神经元两端各填补 个零,那么该卷积层的神经元数量为 。

一般常用的卷积有以下三类:

因为卷积网络的训练也是基于反向传播算法,因此我们重点关注卷积的导数性质:

假设 。

, , 。函数 为一个标量函数。

则由 有:

可以看出, 关于 的偏导数为 和 的卷积

同理得到:

当 或 时, ,即相当于对 进行 的零填充。从而 关于 的偏导数为 和 的宽卷积

用互相关的“卷积”表示,即为(注意 宽卷积运算具有交换性性质 ):

在全连接前馈神经网络中,如果第 层有 个神经元,第 层有 个神经元,连接边有 个,也就是权重矩阵有 个参数。当 和 都很大时,权重矩阵的参数非常多,训练的效率会非常低。

如果采用卷积来代替全连接,第 层的净输入 为第 层活性值 和滤波器 的卷积,即:

根据卷积的定义,卷积层有两个很重要的性质:

由于局部连接和权重共享,卷积层的参数只有一个m维的权重 和1维的偏置 ,共 个参数。参数个数和神经元的数量无关。此外,第 层的神经元个数不是任意选择的,而是满足 。

卷积层的作用是提取一个局部区域的特征,不同的卷积核相当于不同的特征提取器。

特征映射(Feature Map)为一幅图像(或其它特征映射)在经过卷积提取到的特征,每个特征映射可以作为一类抽取的图像特征。 为了提高卷积网络的表示能力,可以在每一层使用多个不同的特征映射,以更好地表示图像的特征。

在输入层,特征映射就是图像本身。如果是灰度图像,就是有一个特征映射,深度 ;如果是彩色图像,分别有RGB三个颜色通道的特征映射,深度 。

不失一般性,假设一个卷积层的结构如下:

为了计算输出特征映射 ,用卷积核 分别对输入特征映射 进行卷积,然后将卷积结果相加,并加上一个标量偏置 得到卷积层的净输入 再经过非线性激活函数后得到输出特征映射 。

在输入为 ,输出为 的卷积层中,每个输出特征映射都需要 个滤波器以及一个偏置。假设每个滤波器的大小为 ,那么共需要 个参数。

汇聚层(Pooling Layer)也叫子采样层(Subsampling Layer),其作用是进行特征选择,降低特征数量,并从而减少参数数量。

常用的汇聚函数有两种:

其中 为区域 内每个神经元的激活值。

可以看出,汇聚层不但可以有效地减少神经元的数量,还可以使得网络对一些小的局部形态改变保持不变性,并拥有更大的感受野。

典型的汇聚层是将每个特征映射划分为 大小的不重叠区域,然后使用最大汇聚的方式进行下采样。汇聚层也可以看做是一个特殊的卷积层,卷积核大小为 ,步长为 ,卷积核为 函数或 函数。过大的采样区域会急剧减少神经元的数量,会造成过多的信息损失。

一个典型的卷积网络是由卷积层、汇聚层、全连接层交叉堆叠而成。

目前常用卷积网络结构如图所示,一个卷积块为连续 个卷积层和 个汇聚层( 通常设置为 , 为 或 )。一个卷积网络中可以堆叠 个连续的卷积块,然后在后面接着 个全连接层( 的取值区间比较大,比如 或者更大; 一般为 )。

目前,整个网络结构 趋向于使用更小的卷积核(比如 和 )以及更深的结构(比如层数大于50) 。此外,由于卷积的操作性越来越灵活(比如不同的步长),汇聚层的作用变得也越来越小,因此目前比较流行的卷积网络中, 汇聚层的比例也逐渐降低,趋向于全卷积网络

在全连接前馈神经网络中,梯度主要通过每一层的误差项 进行反向传播,并进一步计算每层参数的梯度。在卷积神经网络中,主要有两种不同功能的神经层:卷积层和汇聚层。而参数为卷积核以及偏置,因此 只需要计算卷积层中参数的梯度。

不失一般性,第 层为卷积层,第 层的输入特征映射为 ,通过卷积计算得到第 层的特征映射净输入 ,第 层的第 个特征映射净输入

由 得:

同理可得,损失函数关于第 层的第 个偏置 的偏导数为:

在卷积网络中,每层参数的梯度依赖其所在层的误差项 。

卷积层和汇聚层中,误差项的计算有所不同,因此我们分别计算其误差项。

第 层的第 个特征映射的误差项 的具体推导过程如下:

其中 为第 层使用的激活函数导数, 为上采样函数(upsampling),与汇聚层中使用的下采样操作刚好相反。如果下采样是最大汇聚(max pooling),误差项 中每个值会直接传递到上一层对应区域中的最大值所对应的神经元,该区域中其它神经元的误差项的都设为0。如果下采样是平均汇聚(meanpooling),误差项 中每个值会被平均分配到上一层对应区域中的所有神经元上。

第 层的第 个特征映射的误差项 的具体推导过程如下:

其中 为宽卷积。

LeNet-5虽然提出的时间比较早,但是是一个非常成功的神经网络模型。基于LeNet-5 的手写数字识别系统在90年代被美国很多银行使用,用来识别支票上面的手写数字。LeNet-5 的网络结构如图:

不计输入层,LeNet-5共有7层,每一层的结构为:

AlexNet是第一个现代深度卷积网络模型,其首次使用了很多现代深度卷积网络的一些技术方法,比如采用了ReLU作为非线性激活函数,使用Dropout防止过拟合,使用数据增强来提高模型准确率等。AlexNet 赢得了2012 年ImageNet 图像分类竞赛的冠军。

AlexNet的结构如图,包括5个卷积层、3个全连接层和1个softmax层。因为网络规模超出了当时的单个GPU的内存限制,AlexNet 将网络拆为两半,分别放在两个GPU上,GPU间只在某些层(比如第3层)进行通讯。

AlexNet的具体结构如下:

在卷积网络中,如何设置卷积层的卷积核大小是一个十分关键的问题。 在Inception网络中,一个卷积层包含多个不同大小的卷积操作,称为Inception模块。Inception网络是由有多个inception模块和少量的汇聚层堆叠而成

v1版本的Inception模块,采用了4组平行的特征抽取方式,分别为1×1、3× 3、5×5的卷积和3×3的最大汇聚。同时,为了提高计算效率,减少参数数量,Inception模块在进行3×3、5×5的卷积之前、3×3的最大汇聚之后,进行一次1×1的卷积来减少特征映射的深度。如果输入特征映射之间存在冗余信息, 1×1的卷积相当于先进行一次特征抽取

⑹ 经典卷积神经网络简介之【AlexNet】

论文中转 : ImageNet Classification with Deep Convolutional Neural Networks

自Le Net-5在1998年提出以后,时隔14年,AlexNet横空问世,在2012年ImageNet竞赛中以冠军的成绩笑傲群雄,也就是从那时起,更多更优秀的网络被相继提出。论文第一作者是来自多伦多大学的Alex Krizhevsky,因此网络称为Alex Net。

在论文中,作者训练了一个大而深(相比于之前)的卷积网络用于ImageNet比赛,将120万高分辨图像分为1000个类别。在测试集上,分别达到了37.5%的top-1错误率和17.0%的top-5错误率,超越了先前最好的网络。网络共有600万参数,65万个神经元,5个卷积层加3个全连接层,输出为1000类别。为了防止过拟合,作者采用了数据扩充和dropout正则法,实验结果表明此方法非常有效;为了加快训练速度,作者采用了两块并行的GPU同时对特征图进行运算。

由于采用了双GPU模式,所以结构图呈现的是上图的样子,下面引用一张博客作者 chenyuping666 文章的图片,可以详细的了解网络内部结构与实现细节。

从上图可以看到,输入为227×227×3的图像

在conv1中 ,卷积核大小为11×11,步长为4,通道数为96(每台GPU运算48个,下同),经过激活函数Relu激活后,采用最大池化(size=3×3,stride=2),标准化,输出为27×27×96。

在conv2中 ,卷积核大小为5×5,步长为1,通道数256,先对输入特征图扩展像素为31×31(pad=2),然后卷积,激活,池化(size=3×3,stride=2),标准化,输出特征图为13×13×256。

在conv3,conv4中 ,卷积核大小都为3×3,步长为1,pad=1,通道数为384,经过激活后输出特征图为13×13×384。

在conv5中 ,卷积核大小都为3×3,步长为1,通道数为256,经过激活,池化后输出特征图为6×6×256。

在fcn6,fcn7中 ,共有4096个神经元,采用了dropout技术防止过拟合。

在fcn8 ,也就是最后一层,采用softmax输出1000个类别。

相比于之前的网络,AlexNet为何能取得比较好的结果呢,从作者的论文中可以发现以下几点:

3.1 非线性激活函数Relu
在之前一般使用tanh(x)或sigmoid作为激活函数,但这些饱和的线性函数在梯度的计算上非常缓慢,并且容易产生梯度消失问题。Relu的出现使这些问题得到了有效的解决。在基于cifar-10数据集的标准四层网络测试中,采用tanh和Relu作为激活函数使error rate达到0.25所用的时间,Relu比tanh快大约6倍。

3.2 多个GPU
作者认为计算资源的大小限制了网络的大小,要想训练大的网络结构,必须拥有足够的计算资源。120万的数据集太大以至于单个GPU不足以匹配,因此作者将网络的计算任务分配到两个GPU上执行。目前GPU特别适合做并行化,因为一个GPU可以直接从另一个GPU读和写内容,而不需要经过主机内存。

3.3 局部响应归一化(LRN)
作者在文章中提出了Local Response Normalization的方法,分别将top-1和top-5错误率降低了1.4%和1.2%。作者在文中提到,如果训练样本产生一个正输入到Relu,网络只会在那个特定神经元上学习,但是引入局部响应正则化后,提高了网络的泛化能力。这种响应归一化会产生一种由某一神经元所激发的横向抑制,为由使用不同卷积核计算的神经元输出之中的“big activities”创造竞争。

3.4 重叠池化
一般的池化操作因为没有重叠,所以pool_size 和 stride是相等的。例如6×6的图像在size=2×2的池化后,输出为3×3,但是本文使用的size<stride,即取步长为1,输出为4×4大小的图像。这一方案分别使top-1和top-5错误率降低了0.4%和0.3%。

⑺ 怎样用python构建一个卷积神经网络

用keras框架较为方便

首先安装anaconda,然后通过pip安装keras

⑻ yolov5ds使用了什么神经网络

卷积神经网络。
当下YOLO最新的卷积神经网络YOLOv5是完全基于PyTorch实现的,现版本的YOLOv5每个图像的推理时间最快0.007秒,即每秒140帧(FPS),但YOLOv5的权重文件大小只有YOLOv4的1/9。

哪个轻量卷积神经网络最好

模型网络结构 Mobile Net V1。
它是一种模型体积较小、可训练参数及计算量较少并适用于移动设备的卷积神经网络。
mobileNet V1的主要创新点是用深度可分离卷积(depthwise separable convolution)代替普通的卷积,并使用宽度乘数(width multiply)减少参数量,它可在牺牲极少精度的同时去换取更好的数据吞吐量。

阅读全文

与卷积神经网络用什么平台相关的资料

热点内容
为什么就在路由器旁网络还是卡 浏览:735
手机一直网络连接超时是为什么 浏览:537
网络摄像模式怎么设置 浏览:259
路由器双wan口设置不同网络 浏览:535
太和这边网络多少钱一个月 浏览:67
网络新媒体课程设置 浏览:100
门店销售和网络销售哪个好做 浏览:667
医院网络技术员做什么 浏览:534
手机好用的网络电话 浏览:681
酷开32e20rn如何连接网络 浏览:738
vc103网络摄像头设置 浏览:985
手机刷卡要网络吗 浏览:321
华硕笔记本无线网络连接在哪里 浏览:184
大同网络开发价格多少 浏览:628
熟知的网络安全防护措施 浏览:791
有线网络很好但无线网络很卡 浏览:587
宝塔网络上是什么意思 浏览:227
苹果手机信号3格为什么网络不行 浏览:692
移动宽带电视ipv4网络设置 浏览:553
城市网络哪个好 浏览:213

友情链接