卷积神经网络

TensorFlow之卷积函数(conv2d)

梦想与她 提交于 2019-12-04 03:30:16
卷积函数是卷积神经网络(CNN)非常核心和重要的函数,在搭建CNN时经常会用到,因此较为详细和深入的理解卷积函数具有十分重要的意义。 tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=None, name=None):在给定4维的输入和过滤器的张量时,计算一个2维卷积。 参数详解: input:输入的参数或者说是图像tenors,input=[batch,in_height,in_width,in_channels],batch为图像数量,in_height和in_width分别为图像的长和宽,in_channels为图像的颜色通道(彩色为3,黑白为1)。 一般我们在定义图像信息时,x都是1维的,比如x= tf.placeholder(tf.float32,[None,784]),None表示不限制输入数量,784表示一个784维的向量; 在x传入conv2d之前需要对x进行变形 ,即将x变为input的形式,比如说x_image=tf.reshape(x,[-1,28,28,1]),其中-1代表样本数不确定,经过变形后x_image就可以被conv2d函数使用了。 filter:卷积核(滤波器),filter应该输入的是卷积的参数,filter=[filter_height, filter_width,

SIGAI深度学习第八集 卷积神经网络2

百般思念 提交于 2019-12-04 01:00:44
讲授Lenet、Alexnet、VGGNet、GoogLeNet等经典的卷积神经网络、Inception模块、小尺度卷积核、1x1卷积核、使用反卷积实现卷积层可视化等。 大纲: LeNet网络 AlexNet网络 VGG网络 GoogLeNnet网络 反卷积可视化 数学特性 根据卷积结果重构图像 本集总结 LeNet网络: LeNet-5网络是Y.LeCun1998年提出来的,现在尊称Y.LeCun为卷积神经网络之父,后来他去了Facebook的AI实验室。 这是第一个广为传播的卷积网络,规模很小,但五脏俱全(卷积、池化、全连接层都有),用于手写文字的识别,采用了标准的卷积层,池化层,全连接层结构,此后各种卷积网络的设计都借鉴了它的思想。 这篇文章提出的方法并没有大规模的被使用和广泛地引起关注,当时是SVM、AdaBoost占据优势,从1998年LeNet出现以后到2012年AlexNet出现,之间的十几年里边,卷积神经网络并没有得到很好的发展。 LeNet网络的结构: MINIST数据集,两个卷积层、两个池化层、一些全连接层,输入图像32×32的灰度图像,第一个卷积层的卷积核的尺寸是5×5的六组卷积核,第一层卷积之后,得到6张(6通道)28×28的图像,再经过2×2的池化层变为6张14×14的图像。 第二个卷积层为16组卷积核,卷积核尺寸也是5×5的

图神经网络概述第三弹:来自IEEE Fellow的GNN综述

。_饼干妹妹 提交于 2019-12-03 23:47:52
图神经网络(GNN)热度持续上升,之前我们曾介绍了清华两篇综述论文,参见:深度学习时代的图模型,清华发文综述图网络,和清华大学图神经网络综述:模型与应用。最近,IEEE Fellow、Senior Member 和 Member Zonghan Wu 等人又贡献了一篇图神经网络综述文章。这篇文章介绍了 GNN 的背景知识、发展历史、分类与框架、应用等,详细介绍了各种模型与方法,包括公式、模型图示、算法等,希望对大家有所帮助。 引言 深度网络的最新进展推进了模式识别和数据挖掘领域的研究。目标检测、机器翻译、语音识别等许多机器学习任务曾高度依赖手工特征工程来提取信息特征集合,但多种端到端深度学习方式(即卷积神经网络、长短期记忆网络和自编码器)改变了这种状况。深度学习在多个领域的成功主要归功于计算资源的快速发展(如 GPU)、大量训练数据的收集,还有深度学习从欧几里得数据(如图像、文本和视频)中提取潜在表征的有效性。例如 CNN 可以利用平移不变性、局部连通性和图像数据语意合成性,从而提取出与整个数据集共享的局部有意义的特征,用于各种图像分析任务。 尽管深度学习已经在欧几里得数据中取得了很大的成功,但从非欧几里得域生成的数据已经取得更广泛的应用,它们需要有效分析。例如,在电子商务领域,一个基于图的学习系统能够利用用户和产品之间的交互以实现高度精准的推荐。在化学领域,分子被建模为图

深度学习-神经网络

隐身守侯 提交于 2019-12-03 23:03:44
前言:前段时间学习了各种神经网络,今天做个小总结。以便以后自己复习! 一.RNN-循环神经网络 1.原理:根据“人的认知是基于过往的经验和记忆”这一观点提出。RNN之所以称为循环神经网路,即一个序列当前的输出与前面的输出也有关。具体的表现形式为网络会对前面的信息进行记忆并应用于当前输出的计算中,即隐藏层之间的节点不再无连接而是有连接的,并且隐藏层的输入不仅包括输入层的输出还包括上一时刻隐藏层的输出。如处理电影评论时,不能一次处理一条,而要将所有评论转化为一个大向量,再一次性处理。 2.结构: 每个方框可以看做是一个单元,每个单元做的事情也是一样的,用一句话解释RNN就是,一个单元结构重复使用。 3.应用:自然语言处理(NLP),文本生成(机器写小说),语言模型等。 4.简例: (1)生成莎士比亚文集:我们利用RNN循环神经网络,生成新的文本。 >>代码如下:<1>定义模型参数 <2>恢复模型 <3>结果: (2)识别mnist数据集:MNIST数据集是深度学习的经典入门demo,它是由6万张训练图片和1万张测试图片构成的,每张图片都是28*28大小(如下图),而且都是黑白色构成(这里的黑色是一个0-1的浮点数,黑色越深表示数值越靠近1),这些图片是采集的不同的人手写从0到9的数字。 在tensorflow中已经内嵌了mnist数据集,如下: >>代码如下: >>结果有: 二.CNN

人脸识别性别的卷积神经网络

╄→尐↘猪︶ㄣ 提交于 2019-12-03 11:16:38
本文主要是实现了根据人脸识别性别的卷积神经网络,并对卷积过程中的提取特征进行了可视化. 卷积神经网络 卷积神经网络最早是为了解决图像识别的问题,现在也用在时间序列数据和文本数据处理当中,卷积神经网络对于数据特征的提取不用额外进行,在对网络的训练的过程当中,网络会自动提取主要的特征. 卷积神经网络直接用原始图像的全部像素作为输入,但是内部为非全连接结构.因为图像数据在空间上是有组织结构的,每一个像素在空间上和周围的像素是有关系的,和相距很远的像素基本上是没什么联系的,每个神经元只需要接受局部的像素作为输入,再将局部信息汇总就能得到全局信息. 权值共享和池化两个操作使网络模型的参数大幅的减少,提高了模型的训练效率. 卷积神经网络主要特点 权值共享: 在卷积层中可以有多个卷积核,每个卷积核与原始图像进行卷积运算后会映射出一个新的2D图像,新图像的每个像素都来自同一个卷积核.这就是权值共享. 池化: 降采样,对卷积(滤波)后,经过激活函数处理后的图像,保留像素块中灰度值最高的像素点(保留最主要的特征),比如进行 2X2的最大池化,把一个2x2的像素块降为1x1的像素块. 卷积网络的训练数据(112 * 92 * 3图形) 从data目录读取数据,famale存放女性图片,male存放男性图片 def read_img(list,flag=0): for i in range(len

深度学习方法(十三):卷积神经网络结构变化——可变形卷积网络deformable convolutional networks

情到浓时终转凉″ 提交于 2019-12-03 11:03:36
上一篇我们介绍了: 深度学习方法(十二):卷积神经网络结构变化——Spatial Transformer Networks ,STN创造性地在CNN结构中装入了一个可学习的仿射变换,目的是增加CNN的旋转、平移、缩放、剪裁性。为什么要做这个很奇怪的结构呢?原因还是因为CNN不够鲁棒,比如把一张图片颠倒一下,可能就不认识了(这里mark一下,提高CNN的泛化能力,值得继续花很大力气,STN是一个思路,读者以及我自己应该多想想,还有什么方法?)。 今天介绍的这一篇可变形卷积网络deformable convolutional networks,也算是在STN之后的一个新的变换——STN是说CNN Kernel放死了(比如3*3大小),但是可以通过图片变换让CNN效果更好;而deformable是说既然图片可能各种情况,那我索性CNN的Kernel本身是不规整的,比如可以有dilation,也可以旋转的,或者看起来完全没有规则的。如下图,(a)是常规的一个3*3卷积窗口,(b)蓝色点就是原来的卷积窗口加上了一个offset的情况,(c)表示可以对进行窗口进行scale和aspect ratio的变换,(d)表示旋转; 论文引入了两种新的模块来提高卷积神经网络 (CNN) 对变换的建模能力: 可变形卷积 (deformable convolution) 和 可变形兴趣区域池化

Deformable ConvNet算法详解(对象尺寸/形状变换)

若如初见. 提交于 2019-12-03 10:57:49
Deformable ConvNet算法详解(DCN) 算法背景 算法细节 Deformable convolution Deformable RoI pooling Deformable ConvNets 实验 算法背景 论文全称:Deformable Convolutional Networks 论文链接: https://arxiv.org/abs/1703.06211 论文日期:2017.6.5 算法提出背景: CNN本质上仅限于大型模型 ,对几何变换建模的能力主要来自于广泛的数据增强,庞大的模型容量以及一些简单的手工模型。 同时还受到模型几何变化的限制,因为模型都是固定几何结构,卷积层,池化层以及RoI pooling层。 缺失处理几何变化的内部机制。 CNN模型限制的结果: 这就导致了相同CNN层的所有激活单元的感受野尺寸相同,会影响高层CNN层在空间定位编码语义,因为不同的定位与不同的尺寸与变形的对象相关。 所有方法都依赖于基于原始边界框的特征提取,尤其不适用于刚性对象。 因此需要提出一个新的模型, 能够适应检测对象尺寸、姿态、视野、部件变形中的几何变化以及模型几何变换。 基于这些要求,过去有两种解决方法: 数据集(足够的变量),进行数据增强。 花费高,模型复杂。 转换不变的特征与算法,eg. SIFT,sliding window。 缺点:

Deformable Convolutional Networks解读

天涯浪子 提交于 2019-12-03 10:43:55
这篇论文是daijifeng老师又一篇好文,一贯的好想法,而且实现的很漂亮, arxiv link Motivation 现实图片中的物体变化很多,之前只能通过数据增强来使网络“记住”这些变种如n object scale, pose, viewpoint, and part deformation,但是这种数据增强只能依赖一些先验知识比如反转后物体类别不变等,但是有些变化是未知而且手动设计太不灵活,不易泛化和迁移。本文就从cnn model的基础结构入手,比如卷积采样时位置是固定的,pool时采样位置也是固定,roi pool也是把roi分成固定的空间bins,这些它就不能处理几何的变化,出现了一些问题,比如编码语义或者空间信息的高层神经元不希望同一层的每个激活单元元的感受野是一样的。在检测中都是以bbox提取特征,这对于非格子的物体是不利的。因此本文提出了可变形的卷积神经网络。 举例: 3x3的卷积或pool,正常的cnn网络采样固定的9个点,而改进后,这九个采样点是可以变形的,特殊的情况如©是放大了(d)是旋转了 实现 普通cnn 以3x3卷积为例 对于每个输出y(p0),都要从x上采样9个位置,这9个位置都在中心位置x(p0)向四周扩散得到的gird形状上,(-1,-1)代表x(p0)的左上角,(1,1)代表x(p0)的右下角,其他类似。 可变形cnn 同样对于每个输出y

目标检测论文阅读:Deformable Convolutional Networks

巧了我就是萌 提交于 2019-12-03 10:43:39
这篇论文其实读起来还是比较难懂的,主要是细节部分很需要推敲,尤其是deformable的卷积如何实现的一步上,在写这篇博客之前,我也查阅了很多其他人的分享或者去github找代码,当然也不敢说完全了解了这种特殊的卷积……仅仅做一点自己的阅读心得与体会吧。这是一篇很有意义的工作,但是和深度学习很多论文一样,在读完之后内心也不免有着种种疑云。 Deformable Convolutional Networks 论文链接: https://arxiv.org/abs/1703.06211 代码链接: https://github.com/msracver/Deformable-ConvNets (官方实现,但是release的版本是迁移到MXNet上的,速度和performance上有些出入) MSRA的文章,严格意义上讲,deformable convolutional不仅仅只适用于object detection,作为对常见的卷积的一种改良,它可以广泛应用在各个网络中,和空洞卷积一样,是对传统卷积的改良,而且某种意义上也可以说是空洞卷积的进一步拓展。 1. Background 这篇文章的motivation其实比较简单,我们都知道,常规的卷积,包括池化这些操作,不管你怎么累加,基本得到的都是矩形框……这个其实非常不贴合实际,在对不规则的目标建模的时候有非常大的局限性。

可变形的卷积网络

故事扮演 提交于 2019-12-03 09:33:05
机器学习_深度学习_入门经典(博主免费教学视频系列) https://study.163.com/course/courseMain.htm?courseId=1006390023&share=2&shareId=400000000398149 本文链接:https://blog.csdn.net/yeler082/article/details/78370795 原文链接:Deformable Convolutional Networks 代码链接:https://github.com/msracver/Deformable-ConvNets 一、首先看看文章的摘要 由于构造卷积神经网络 (CNN) 所用的模块中几何结构是固定的,其几何变换建模的能力本质上是有限的。在我们的工作中,我们引入了两种新的模块来提高卷积神经网络 (CNN) 对变换的建模能力,即可变形卷积 (deformable convolution) 和可变形兴趣区域池化 (deformable ROI pooling)。它们都是基于在模块中对空间采样的位置信息作进一步位移调整的想法,该位移可在目标任务中学习得到,并不需要额外的监督信号。新的模块可以很方便在现有的卷积神经网络 (CNN) 中取代它们的一般版本,并能很容易进行标准反向传播端到端的训练,从而得到可变形卷积网络 (deformable