没有合适的资源?快使用搜索试试~ 我知道了~
(完整版)深度神经网络及目标检测学习笔记.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 194 浏览量
2022-11-26
19:09:23
上传
评论
收藏 1.27MB PDF 举报
温馨提示
试读
14页
(完整版)深度神经网络及目标检测学习笔记.pdf(完整版)深度神经网络及目标检测学习笔记.pdf
资源推荐
资源详情
资源评论
深度神经网络及目标检测学习笔记
https://youtu.be/MPU2HistivI
上面是一段实时目标识别的演示,计算机在视频流上标注出物体的类别,包
括人、汽车、自行车、狗、背包、领带、椅子等。
今天的计算机视觉技术已经可以在图片、视频中识别出大量类别的物体,甚
至可以初步理解图片或者视频中的内容,在这方面,人工智能已经达到了 3 岁儿
童的智力水平。这是一个很了不起的成就,毕竟人工智能用了几十年的时间,就
走完了人类几十万年的进化之路,并且还在加速发展。
道路总是曲折的,也是有迹可循的。在尝试了其它方法之后,计算机视觉在
仿生学里找到了正确的道路(至少目前看是正确的)。通过研究人类的视觉原理,
计算机利用深度神经网络(Deep Neural Network,NN)实现了对图片的识别,包
括文字识别、物体分类、图像理解等。在这个过程中,神经元和神经网络模型、
大数据技术的发展,以及处理器(尤其是 GPU)强大的算力,给人工智能技术的
发展提供了很大的支持。
本文是一篇学习笔记,以深度优先的思路,记录了对深度学习(Deep Learning)
的简单梳理,主要针对计算机视觉应用领域。
一、神经网络
1.1 神经元和神经网络
神经元是生物学概念,用数学描述就是:对多个输入进行加权求和,并经过
激活函数进行非线性输出。
由多个神经元作为输入节点,则构成了简单的单层神经网络(感知器),可
以进行线性分类。两层神经网络则可以完成复杂一些的工作,比如解决异或问题,
而且具有非常好的非线性分类效果。而多层(两层以上)神经网络,就是所谓的
深度神经网络。
神经网络的工作原理就是神经元的计算,一层一层的加权求和、激活,最终
输出结果。深度神经网络中的参数太多(可达亿级),必须靠大量数据的训练来
设置。训练的过程就好像是刚出生的婴儿,在父母一遍遍的重复中学习“这是苹
果”、“那是汽车”。有人说,人工智能很傻嘛,到现在还不如三岁小孩。其实可
以换个角度想:刚出生婴儿就好像是一个裸机,这是经过几十万年的进化才形成
的,然后经过几年的学习,就会认识图片和文字了;而深度学习这个“裸机”用
了几十年就被设计出来,并且经过几个小时的“学习”,就可以达到这个水平了。
1.2 BP 算法
神经网络的训练就是它的参数不断变化收敛的过程。像父母教婴儿识图认字
一样,给神经网络看一张图并告诉它这是苹果,它就把所有参数做一些调整,使
得它的计算结果比之前更接近“苹果”这个结果。经过上百万张图片的训练,它
就可以达到和人差不多的识别能力,可以认出一定种类的物体。这个过程是通过
反向传播(Back Propagation,BP)算法来实现的。
建议仔细看一下 BP 算法的计算原理,以及跟踪一个简单的神经网络来体会
训练的过程。
1.3 小结
人工神经网络就是根据人的神经元模型而构建的一个感知算法,利用大量的
神经元组合对人的认知行为进行拟合。目前我们仍然无法精确的知道它为什么能
工作、如何工作,如同我们仍然无法精确知道人的大脑是如何工作一样。
在摸索过程中,我们好像应该更多地思考人类自己是怎么去“看”的,这会
更有助于设计更好的算法。比如本文开头的视频识别算法,它很快,但是不够精
确,而有些可以“看清”细节的算法,就会非常慢。就像我们人类自己,走马观
花只能看到概貌,驻足观赏才能看清细节。
我们越了解自己,就越能做得更好。
二、卷积神经网络
2.1 简介
卷积神经网络(Convocational Neural Network,CNN)是一个特殊的深层神
经网络,目前在计算机视觉领域广泛使用,可以认为它是一个二维向量(图片就
是一个二维向量)的感知器。
CNN 算法的核心是对图像(二维向量)进行矩阵卷积运算,这就相当于是
对图像进行加权求和。为了减小计算量,CNN 采用了局部感知和权值共享的方
法。局部感知,就是用一个 N×N(如 N=3)的矩阵(称为卷积核)去滑动扫描
图像,进行卷积运算。权值共享,就是扫描图片的滑动矩阵的权值是共享的(相
同的)。在实际运算中,这个卷积核相当于一个特征提取的过滤器(filter)。举例
来说,假设一个 10×10 的图像,用一个 3×3 的卷积核以步长 1 做一次卷积运
算,那么会得到一个 8×8 的特征图(feature map)。为了使得到的 feature map 和
原图等大小,一般给原图进行扩充为 12×12,这样卷积一次以后,得到的仍然是
10×10 大小的图像。在这个例子中,如果不采用权值共享,则一共需要 100 个
权值参数,权值共享后,只需要 3×3=9 个权值参数。
在实际中,一个 RGB 图像是三个通道,而卷积核也可能有多个。这样计算
起来会比上面的例子复杂些,但基本原理是一样的。
2.2 CNN 计算流程
一个典型的 CNN 算法的流程大概是这样的:首先是输入,然后是 n 个卷积
和池化的组合,最后全连接层感知分类。
在这个流程里,卷积运算主要是用来提取特征。一个典型的卷积计算如下图
所示。
<卷积计算示意图>
图中 input 是同一个图像的三个通道,周边有填充 0;有两个卷积核 Filter W0
和 Filter W1,一个 filter 滑动到一个位置后计算三个通道的卷积,求和,加 bias,
得到这个 filter 在该位置的最终结果;每个 filter 的输出是各个通道的汇总;输出
的个数与 filter 个数相同。在这里还要加上激活函数,对计算结果进行非线性变
换。常用的激活函数有 tanh、ReLU、sigmoid 等。激活函数的作用好像可以解释
为:过滤掉一些可以忽略的不重要因素,以避免其对决策产生过度影响。
池化是为了降维,有最大池化(Max Pooling)和平均池化(Average Pooling)。
一个 2×2 最大池化的示例如下图。
剩余13页未读,继续阅读
资源评论
G11176593
- 粉丝: 6691
- 资源: 3万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功