神经网络
菜鸟知识搬运工
在校研究生
展开
-
机器学习实战13-卷积神经网络
机器学习实战13-设备和服务器上的分布式 TensorFlow就先不学习了,详情可参见:十二、设备和服务器上的分布式 TensorFlow 卷积神经网络(CNN)是从大脑视觉皮层的研究中出现的,自 20 世纪 80 年代以来它们一直用于图像识别。在过去的几年里,由于计算能力的增加,可用训练数据的数量以及第 11 章介绍的训练深度网络的技巧,CNN 致力于在某些复杂的视觉任务中做出...原创 2019-04-05 10:39:10 · 6327 阅读 · 2 评论 -
GAN生成对抗式网络
转载自:https://www.cnblogs.com/bonelee/p/9166084.html Generative Adversarial Network,就是大家耳熟能详的 GAN,由 Ian Goodfellow 首先提出,在这两年更是深度学习中最热门的东西,仿佛什么东西都能由 GAN 做出来。1.Generation 什么是生成(generation)?就是模型...转载 2019-06-18 19:44:46 · 1276 阅读 · 0 评论 -
YOLO框架简述
YOLO(You Only Look Once)是一种基于深度神经网络的对象识别和定位算法,其最大的特点是运行速度很快,可以用于实时系统。现在YOLO已经发展到v3版本,不过新版本也是在原有版本基础上不断改进演化的,所以本文先分析YOLO v1版本。 输入一张图片,要求输出其中所包含的对象,以及每个对象的位置(包含该对象的矩形框)。 对象识别和定位...转载 2019-06-14 11:08:48 · 144036 阅读 · 24 评论 -
faster rcnn的tensorflow代码的理解
faster rcnn主要包括两部分:rpn网络和rcnn网络。rpn网络用于保留在图像内部的archors,同时得到这些archors是正样本还是负样本还是不关注。最终训练时通过nms保留最多2000个archors,测试时保留300个archors。另一方面,rpn网络会提供256个archors给rcnn网络,用于rcnn分类及回归坐标位置。下文将主要介绍RPN网络和分类回...转载 2019-06-25 09:51:19 · 2859 阅读 · 0 评论 -
RPN网络
RPN 思路:1、先通过conv层+pooling层+relu层,可以是vgg,得到featuremaps。2、在featuremaps上提取对应的图。在第一步基础上,先通过rpn生成regionproposals。通过softmax判断anchors(9个框),是foreground还是background,再通过boundingboxregression...原创 2019-06-25 13:53:00 · 30225 阅读 · 0 评论 -
FPN网络
论文是CVPR2017年的文章,采用特征金字塔做目标检测,有许多亮点,特来分享。论文链接:https://arxiv.org/abs/1612.03144译文:https://blog.csdn.net/quincuntial/article/details/80152314FPN解决了什么问题? 在以往的faster rcnn进行目标检测时,无论是rpn还是fast rcn...转载 2019-06-26 12:44:41 · 17046 阅读 · 2 评论 -
机器学习实战15-自动编码器
大话循环神经网络(RNN):https://my.oschina.net/u/876354/blog/1621839自动编码器 自动编码器是能够在无监督的情况下学习输入数据的有效表示(编码)的人工神经网络(训练集是未标记)。这些编码通常具有比输入数据低得多的维度,使得自编码器对降维有用。更重要的是,自动编码器可以作为强大的特征检测器,它们可以用于无监督的深度神经网络预训练。最...原创 2019-04-17 12:44:53 · 5518 阅读 · 1 评论 -
神经网络学习历程与总结
先从DNN深度神经网络开始学习,神经网络的学习包括以下几个知识点:1、神经网络的权重初始化2、批量归一化3、激活函数的选取4、神经网络的后向传播BP算法5、神经网络的各种快速优化器6、神经网络的正则化神经网络需要注意的是:梯度的消失问题、过拟合问题!!以上构成了神经网络的基本框架。 随后对卷积神经网络进行系统的学习。卷积神经网络不同于全连接的深度神经网络,而...原创 2019-06-23 17:15:51 · 3697 阅读 · 0 评论 -
FCN-Fully Convolutional Networks
CNN与FCN 通常cnn网络在卷积之后会接上若干个全连接层,将卷积层产生的特征图(feature map)映射成为一个固定长度的特征向量。一般的CNN结构适用于图像级别的分类和回归任务,因为它们最后都期望得到输入图像的分类的概率,如ALexNet网络最后输出一个1000维的向量表示输入图像属于每一类的概率。 FCN对图像进行像素级的分类,从而解决了语义级别的图像分割问题。...原创 2019-07-09 12:46:59 · 5904 阅读 · 2 评论 -
目标检测、分割、识别、分类综述
目标分割的任务是把目标对应的部分分割出来。目标检测:检测到图片当中的目标的具体位置目标识别:即是在所有的给定数据中,分类出哪一些sample是目标,哪一些不是。这个仅仅做一下分类任务。yes or no典型的技术路线是:目标分割 ——>目标检测 ——>目标识别 ——>目标跟踪如:需要对视频中的小明进行跟踪,处理过程将经历如下过程:(1)首先,采集第一帧视频图...原创 2019-06-28 16:55:01 · 23286 阅读 · 0 评论 -
神经网络的计算
1、感受野的计算 感受野的计算公式如下(第k层的一个像素,映射到第一层特征图的像素尺寸): ,注意累乘到(k-1)其中为第k-1层对应的感受野大小,为第k层的卷积核大小,或者是池化层的池化尺寸大小。为第i层步长。from:https://www.jianshu.com/p/e875117e5...原创 2019-07-14 17:08:44 · 1316 阅读 · 0 评论 -
深度可分离卷积Depthwise Separable Convolution
从卷积神经网络登上历史舞台开始,经过不断的改进和优化,卷积早已不是当年的卷积,诞生了分组卷积(Group convolution)、空洞卷积(Dilated convolution 或 À trous)等各式各样的卷积。今天主要讲一下深度可分离卷积(depthwise separable convolutions),这是 Xception 以及 MobileNet 系列的精华所在。...原创 2019-07-14 19:54:48 · 6375 阅读 · 1 评论 -
tf.Variable、tf.get_variable、tf.variable_scope以及tf.name_scope
tf.Variable与tf.get_variable tensorflow提供了通过变量名称来创建或者获取一个变量的机制。通过这个机制,在不同的函数中可以直接通过变量的名字来使用变量,而不需要将变量通过参数的形式到处传递。TensorFlow中通过变量名获取变量的机制主要是通过tf.get_variable和tf.variable_scope实现的。当然,变量也可以通过tf.Var...转载 2019-06-24 16:03:12 · 341 阅读 · 0 评论 -
数据扩充常见方法
数据扩充(data augmentation),又名数据增强 / 数据增广。其本质即:缺少海量数据时,为了保证模型的有效训练,一分钱掰成两半花。为什么需要数据增强: 一般而言,比较成功的神经网络需要大量的参数,许许多多的神经网路的参数都是数以百万计,而使得这些参数可以正确工作则需要大量的数据进行训练,而实际情况中数据并没有我们想象中的那么多数据增强的作用:数据增强让有限...原创 2019-07-20 11:48:07 · 20874 阅读 · 1 评论 -
RNN
循环神经网络(RNN)是目前深度学习最有前景的工具之一,它解决了传统神经网络不能共享从数据中共享位置的特征的问题。目前,RNN已经有了不少有意思的应用:语音识别:输入的语音数据,生成相应的语音文本信息。比如微信的语音转文字功能。机器翻译:不同语言之间的相互转换。像有道翻译、腾讯翻译官等。最近微软据说实现了中翻英媲美人类的水平音乐生成:使用RNN网络生成音乐,一般会用到RNN中...转载 2020-03-21 10:05:02 · 2069 阅读 · 0 评论 -
SSD详解
目标检测就是要找到一张图中所有的物体和它们的位置,人们通常的做法是先用一些传统视觉的方法如selective search找到proposal,即比较可能是物体的一个区域,然后再用CNN判断这个物体究竟是不是物体,是哪个物体,以及用CNN去优化这个框的位置,这种方法最典型的代表就是RCNN和Fast-RCNN。selective search 目标识别(obje...原创 2019-05-17 14:31:41 · 20456 阅读 · 2 评论 -
深度学习-CNN提取图像特征
一、卷积层1.卷积操作2.特征提取—"X" or "O"?二、池化(Pooling)三、Relu 层四、全连接层(Fully connected layers)五、反向传播算法BP六、总结 作为机器学习的一个分支,深度学习同样需要计算机获得强大的学习能力,那么问题来了,我们究竟要计算机学习什么东西?答案当然是图像特征了。将一张图像看做是一个个像素值组成的...原创 2019-01-30 15:14:37 · 97961 阅读 · 19 评论 -
机器学习实战9-运行Tensorflow(california_housing数据集)
目录一、创造一个图谱1.1、管理图谱二、TensorFlow线性回归2.1、这里引用California housing的数据2.2、标准方程法2.3、实现梯度下降2.4、autodiff2.5、使用优化器2.6、小批量梯度下降和placeholder占位符三、保存模型四、TensorBoard可视化五、命名作用域:模块化共享变量...原创 2019-03-17 21:23:56 · 10094 阅读 · 0 评论 -
机器学习实战10-Artificial Neural Networks人工神经网络简介(mnist数据集)
目录一、感知器1.1、单层感知器1.2、多层感知器MLP与反向传播二、用 TensorFlow 高级 API 训练 MLPDNNClassifier(深度神经网络分类器)2.1、初始化:2.2、方法(Methods)2.2.1、训练train:2.2.2、evaluate(评估)2.2.3、predict(预测)三、使用普通 TensorFlow 训练 ...原创 2019-03-22 19:57:28 · 3071 阅读 · 0 评论 -
机器学习实战11-训练深层神经网络
目录一、梯度消失/爆炸问题1.1、Xavier( Glorot)初始化(使用逻辑激活函数):1.2、He 初始化(ReLU 激活函数及其变体,包括简称 ELU 激活):1.3、非饱和激活函数leaky ReLUELUSELU1.4、批量标准化使用 TensorFlow 实现批量标准化1.5、梯度裁剪二、复用预训练层2.1、复用 TensorFlow ...原创 2019-03-28 21:55:04 · 4371 阅读 · 0 评论 -
神经网络权重初始化
在我们真正开始训练网络之前,我们必须要知道如何去初始化神经网络的参数。陷阱: 都初始化为0。 首先介绍一下我们不应该做的事情(即初始化为0)。需要注意的是我们并不知道在训练神经网络中每一个权重最后的值,但是如果进行了恰当的数据归一化后,我们可以有理由认为有一半的权重是正的,另一半是负的。令所有权重都初始化为0这个一个听起来还蛮合理的想法也许是一个我们假设中最好的一个假设了。但...原创 2019-03-31 17:00:55 · 7531 阅读 · 0 评论 -
Batch Normalization批量归一化
深度学习捷报连连、声名鹊起,随机梯度下降成了训练深度网络的主流方法。尽管随机梯度下降法对于训练深度网络简单高效,但是它有个毛病,就是需要我们人为的去选择参数,比如学习率、参数初始化、权重衰减系数、Drop out比例等。这些参数的选择对训练结果至关重要,以至于我们很多时间都浪费在这些的调参上。那么学完这篇文献之后,你可以不需要那么刻意的慢慢调整参数。 批量标准化一般用在非线性...转载 2019-03-31 20:32:02 · 3799 阅读 · 0 评论 -
神经网络的BP算法推导详解
一个神经网络程序包含以下几部分内容。 1.数据表达和特征提取。对于一个非深度学习神经网络,主要影响其模型准确度的因素就是数据表达和特征提取。同样的一组数据,在欧式空间和非欧空间,就会有着不同的分布。有时候换一种思考问题的思路就会使得问题变得简单。所以选择合适的数据表达可以极大的降低解决问题的难度。同样,在机器学习中,特征的提取也不是一种简单的事。在一些复杂问题上,要通过人工的方式设计有效的特...原创 2019-04-01 11:03:02 · 42462 阅读 · 6 评论 -
从LeNet到AlexNet
CNN卷积神经网络的经典网络综述一切的开始( LeNet)1、Input (32*32)2、C1, C3, C5 (卷积层)3、S2, S4 (pooling层)4、F6 (全连接层)5、Output (输出层)详细参数:1、INPUT层-输入层2、C1层-卷积层3、S2层-池化层(下采样层)4、C3层-卷积层5、S4层-池化层(下采样层)6、C...转载 2019-04-03 13:38:53 · 4983 阅读 · 1 评论 -
CNN经典模型:GoogLeNet(从Inception v1到v4的演进)
GoogLeNet和VGG是2014年ImageNet挑战赛(ILSVRC14)的双雄,GoogLeNet获得第一名、VGG获得第二名,这两类模型结构的共同特点是层次更深了。VGG继承了LeNet以及AlexNet的一些框架结构,(大话CNN经典模型:VGGNet)而GoogLeNet则做了更加大胆的网络结构尝试,虽然深度只有22层,但大小却比AlexNet和VGG小很多,Google...转载 2019-04-05 20:49:47 · 3297 阅读 · 0 评论 -
CNN经典模型:VGGNet
2014年,牛津大学计算机视觉组(Visual Geometry Group)和Google DeepMind公司的研究员一起研发出了新的深度卷积神经网络:VGGNet,并取得了ILSVRC2014比赛分类项目的第二名(第一名是GoogLeNet)和定位项目的第一名。VggNet一共有六种不同的网络结构,但是每种结构都有含有5组卷积,每组卷积都使用3x3的卷积核,每组卷积后进行一个2...转载 2019-04-05 21:35:21 · 4065 阅读 · 0 评论 -
CNN经典模型:深度残差网络(DRN)ResNet
一说起“深度学习”,自然就联想到它非常显著的特点“深、深、深”(重要的事说三遍),通过很深层次的网络实现准确率非常高的图像识别、语音识别等能力。因此,我们自然很容易就想到:深的网络一般会比浅的网络效果好,如果要进一步地提升模型的准确率,最直接的方法就是把网络设计得越深越好,这样模型的准确率也就会越来越准确。 那现实是这样吗?先看几个经典的图像识别深度学习模型:...转载 2019-04-06 10:37:44 · 11510 阅读 · 0 评论 -
从R-CNN到Faster R-CNN漫谈
本文相当长。。。。。。。。。 object detection,就是在给定的图片中精确找到物体所在位置,并标注出物体的类别。object detection要解决的问题就是物体在哪里,是什么这整个流程的问题。然而,这个问题可不是那么容易解决的,物体的尺寸变化范围很大,摆放物体的角度,姿态不定,而且可以出现在图片的任何地方,更何况物体还可以是多个类别。 R-CNN系列论文...原创 2019-04-18 20:00:48 · 3239 阅读 · 0 评论 -
深入理解深度学习中的激活函数
1. 什么是激活函数? 生物神经网络是人工神经网络的起源。然而,人工神经网络(ANNs)的工作机制与大脑的工作机制并不是十分的相似。不过在我们了解为什么把激活函数应用在人工神经网络中之前,了解一下激活函数与生物神经网络的关联依然是十分有用的。一个典型神经元的物理结构由细胞体、向其他神经元发送信息的轴突以及从其他神经元接受信号或信息的树突组成。 ...原创 2019-01-30 11:51:52 · 16959 阅读 · 6 评论 -
Tensorflow相关面试题
Tensorflow是一个通过计算图的形式来表述计算的编程系统,计算图也叫数据流图,可以把计算图看做是一种有向图,Tensorflow中的每一个节点都是计算图上的一个Tensor张量,而节点之间的边描述了计算之间的依赖关系(定义时)和数学操作(运算时)。 Tensorflow的关键优势并不在于提供多少的深度神经网络模型,函数或方法,关键的问题是很多神经网络模型从理论上存在,但在...原创 2019-07-23 11:25:18 · 17027 阅读 · 0 评论