随笔分类 -  00-深度学习与计算机视觉

摘要:本文从信息论和最大似然估计得角度推导交叉熵作为分类损失函数的依据。 从熵来看交叉熵损失 信息量 信息量来衡量一个事件的不确定性,一个事件发生的概率越大,不确定性越小,则其携带的信息量就越小。 设$X$是一个离散型随机变量,其取值为集合$X = {x_0,x_1,\dots,x_n}$ ,则其概率分布 阅读全文
posted @ 2019-12-19 15:29 Brook_icv 阅读(53726) 评论(6) 推荐(46) 编辑
摘要:均方误差(Mean Square Error,MSE)和平均绝对误差(Mean Absolute Error,MAE) 是回归中最常用的两个损失函数,但是其各有优缺点。为了避免MAE和MSE各自的优缺点,在Faster R CNN和SSD中使用$\text{Smooth} L_1$损失函数,当误差在 阅读全文
posted @ 2019-12-17 15:27 Brook_icv 阅读(7509) 评论(1) 推荐(4) 编辑
摘要:总结对比下$L_1$ 损失函数,$L_2$ 损失函数以及$\text{Smooth} L_1$ 损失函数的优缺点。 均方误差MSE ($L_2$ Loss) 均方误差(Mean Square Error,MSE)是模型预测值$f(x)$ 与真实样本值$y$ 之间差值平方的平均值,其公式如下 $$ M 阅读全文
posted @ 2019-12-11 11:46 Brook_icv 阅读(50256) 评论(6) 推荐(39) 编辑
摘要:咸鱼了半年,年底了,把这半年做的关于目标的检测的内容总结下。 本文主要有两部分: 目标检测中的边框表示 Anchor相关的问题,R CNN,SSD,YOLO 中的anchor 目标检测中的边框表示 目标检测中,使用一个矩形的边框来表示。在图像中,可以基于图像坐标系使用多种方式来表示矩形框。 最直接的 阅读全文
posted @ 2019-12-09 17:49 Brook_icv 阅读(40738) 评论(3) 推荐(35) 编辑
摘要:本文是PyTorch使用过程中的的一些总结,有以下内容: 构建网络模型的方法 网络层的遍历 各层参数的遍历 模型的保存与加载 从预训练模型为网络参数赋值 主要涉及到以下函数的使用 ,`ModulesList Sequential` 模型创建 ,`named_modules() children() 阅读全文
posted @ 2019-06-20 14:25 Brook_icv 阅读(28567) 评论(4) 推荐(22) 编辑
摘要:设计好神经网络结构以及loss function 后,训练神经网络的步骤如下: 1. 初始化权值参数 2. 选择一个合适的梯度下降算法(例如:Adam,RMSprop等) 3. 重复下面的迭代过程: 1. 输入的正向传播 2. 计算loss function 的值 3. 反向传播,计算loss fu 阅读全文
posted @ 2019-06-13 00:32 Brook_icv 阅读(7156) 评论(2) 推荐(1) 编辑
摘要:人群计数的方法分为传统的视频和图像人群计数算法以及基于深度学习的人群计数算法,深度学习方法由于能够方便高效地提取高层特征而获得优越的性能是传统方法无法比拟的。本文简单了秒速了近几年,基于单张图像利用CNN估计人群密度图和计数的方法。 1. 传统的人群计数方法 传统的人群计数方法可以分为两类,基于检测 阅读全文
posted @ 2019-03-29 15:17 Brook_icv 阅读(16425) 评论(0) 推荐(11) 编辑
摘要:本文算是对常用梯度图下降的算法综述,从方向导数开始得到梯度下降的原始算法,接着描述了动量梯度下降算法。 而由于超参数学习率对梯度下降的重要性,所以梯度算法就有多个自适应梯度下降算法。 主要有以下内容: 方向导数和梯度下降 梯度下降的形式,批量梯度下降,SGD以及mini batch 梯度下降 梯度下 阅读全文
posted @ 2019-03-13 10:19 Brook_icv 阅读(19700) 评论(2) 推荐(14) 编辑
摘要:YOLO V2 YOLO V2是在YOLO的基础上,融合了其他一些网络结构的特性(比如:Faster R CNN的Anchor,GooLeNet的$1\times1$卷积核等),进行的升级。其目的是弥补YOLO的两个缺陷: YOLO中的大量的定位错误 和基于区域推荐的目标检测算法相比,YOLO的召回 阅读全文
posted @ 2019-03-06 02:00 Brook_icv 阅读(4941) 评论(2) 推荐(4) 编辑
摘要:前面介绍的R CNN系的目标检测采用的思路是:首先在图像上提取一系列的候选区域,然后将候选区域输入到网络中修正候选区域的边框以定位目标,对候选区域进行分类以识别。虽然,在Faster R CNN中利用RPN网络将候选区域的提取以放到了CNN中,实现了end to end的训练,但是其本质上仍然是提取 阅读全文
posted @ 2019-02-20 14:21 Brook_icv 阅读(3741) 评论(1) 推荐(4) 编辑
摘要:前面对R CNN系的目标检测方法进行了个总结,其中对目标的定位使用了 边框回归 ,当时对这部分内容不是很理解,这里单独学习下。 R CNN中最后的边框回归层,以候选区域(Region proposal)为输入,来对Region proposal中包含的目标进行准将的定位。但是,这个输入的候选区域通常 阅读全文
posted @ 2019-02-18 09:50 Brook_icv 阅读(6478) 评论(0) 推荐(3) 编辑
摘要:Object Detection,在给定的图像中,找到目标图像的位置,并标注出来。 或者是,图像中有那些目标,目标的位置在那。这个目标,是限定在数据集中包含的目标种类,比如数据集中有两种目标:狗,猫。 就在图像找出来猫,狗的位置,并标注出来 是狗还是猫。 这就涉及到两个问题: 1. 目标识别,识别出 阅读全文
posted @ 2019-02-15 15:48 Brook_icv 阅读(15934) 评论(5) 推荐(10) 编辑
摘要:2014年,牛津大学计算机视觉组(Visual Geometry Group)和Google DeepMind公司的研究员一起研发出了新的深度卷积神经网络:VGGNet,并取得了ILSVRC2014比赛分类项目的第二名(第一名是GoogLeNet,也是同年提出的).论文下载 "Very Deep C 阅读全文
posted @ 2019-01-30 16:13 Brook_icv 阅读(32699) 评论(1) 推荐(10) 编辑
摘要:由于受到计算机性能的影响,虽然LeNet在图像分类中取得了较好的成绩,但是并没有引起很多的关注。 知道2012年,Alex等人提出的 AlexNet 网络在ImageNet大赛上以远超第二名的成绩夺冠,卷积神经网络乃至深度学习重新引起了广泛的关注。 AlexNet特点 AlexNet是在LeNet的 阅读全文
posted @ 2019-01-29 11:44 Brook_icv 阅读(86495) 评论(6) 推荐(42) 编辑
摘要:开局一张图,内容全靠编。 上图引用自 "【卷积神经网络 进化史】从LeNet到AlexNet" . 目前常用的卷积神经网络 深度学习现在是百花齐放,各种网络结构层出不穷,计划梳理下各个常用的卷积神经网络结构。 目前先梳理下用于图像分类的卷积神经网络 LeNet AlexNet VGG GoogLeN 阅读全文
posted @ 2019-01-28 11:15 Brook_icv 阅读(11771) 评论(2) 推荐(6) 编辑
摘要:在前面两篇文章介绍了深度学习的一些基本概念,本文则使用Python实现一个简单的深度神经网络,并使用MNIST数据库进行测试。 神经网络的实现,包括以下内容: 神经网络权值的初始化 正向传播 误差评估 反向传播 更新权值 主要是根据反向传播的4个基本方程,利用Python实现神经网络的反向传播。 初 阅读全文
posted @ 2019-01-07 11:29 Brook_icv 阅读(3938) 评论(1) 推荐(3) 编辑
摘要:BP算法,在深度神经网络的发展中有着举足轻重的地位,对于反向传播算法的推导过程,各种资料介绍可谓是多不胜数。但,由于深度神经网络的复杂性,要比较深刻的理解反向传播算法还是需要自己手动的推导一遍。 本文以前篇 "深度学习与计算机视觉: 深度学习必知基本概念以及链式求导" 介绍了神经网络的反向传播中的链 阅读全文
posted @ 2018-12-29 09:45 Brook_icv 阅读(3165) 评论(2) 推荐(5) 编辑
摘要:深度学习与计算机视觉,开篇。 深度学习的几个基本概念 反向传播算法中的链式求导法则。 关于反向传播四个基本方程的推导过程,放在下一篇。 深度学习基础 深度学习的几度沉浮的历史就不多说了,这里梳理下深度学习的一些基本概念,做个总结记录,内容多来源于网络。 神经元 神经网络的基本组成单元 神经系统的基本 阅读全文
posted @ 2018-12-28 16:19 Brook_icv 阅读(5065) 评论(2) 推荐(7) 编辑