DNN
天才狂想者
这个作者很懒,什么都没留下…
展开
-
SSD边框预测原理
在ssd检测中,有一个重要的功能就是物体框的回归,接下来我来说一下ssd是怎么进行边界框回归的。首先上图 我们观察图中狗的边框,其中黑色的是真实框(预先人为标定的),红色的为预测框(ssd最后预测的结果),黄色的为先验框(形成预测框的,首先得到的框)。通俗的来说一下,我们经过6层不同大小的featmap后,会有很多的候选框,论文中一个类别有8732个,我们选取与真实框IOU最大的...原创 2019-12-22 11:56:35 · 2269 阅读 · 0 评论 -
vgg理解
Vgg16这个名词对于要做神经网络深度学习的人来说一定不陌生,当我们在看相关的教程或者案例的时候,都会出现Vgg16。那么它到底是什么?Vgg16是一个卷积神经网络的模型,它是一个被预训练好的模型。 Vgg模型(网上配图) 每次网上都是贴出这个网络模型结构就不了了之,我就来仔细说一下(个人理解,欢迎指出错误)。首先这个网络...原创 2019-10-12 16:50:32 · 3509 阅读 · 2 评论 -
DNN理解(一)
再说DNN之前,我们先说一下什么是机器机器学习以及他们的关系。首先说一下机器学习是什么,在这里我不会去将机器学习的定义列出来,当然目前对于机器学习也没有一个真正的的定义。我会将我理解的机器学习说出来,也许说的会有错误,大家只需参考即可。在我看来,机器学习就是机器通过大量的样本进行所谓的学习,得到一个尽量逼近真实的模型,这个行为就叫做机器学习。机器学习中的学习说白了就是调整参数的过程。我们根...原创 2019-04-10 16:40:40 · 12221 阅读 · 0 评论 -
DNN理解(二)
书接上文,上面介绍的是DNN的基本结构和一些要用到的公式。在这里我将要说一下DNN的前向传播,上图先:我来解释一下这个图。layer1是输入层,layer2是隐藏层,layer3是输出层。当然层数不是固定的,每层的神经元个数也不是固定的。一般来说第一层是输入参数的,最后一层是输出层,中间的都叫做隐藏层。在输入层,每一个参数对应一个神经元(可以这么理解),每一个参数都要传给下一层(隐...原创 2019-04-17 14:21:03 · 1281 阅读 · 0 评论 -
DNN理解(三)
这次我们来说一说梯度下降问题。1.什么是梯度下降?2.梯度下降用来干什么的?3.如何使用梯度下降?我们将围绕着三个问题进行说明。首先我先来说一下梯度下降是什么。举一个例子:,这是一个一元二次函数。对于这个函数来说,就是它的梯度,也就是他的导数。这个很好理解,梯度可以看做一个使得函数变大变小的方向,角度,我们顺着这个梯度就可以使得这个函数变大或者变小,并且依次得到该函数极值点(不...原创 2019-04-24 19:21:16 · 629 阅读 · 0 评论 -
DNN理解(五)
代价函数的选择在我们训练时可能会遇到学习缓慢的问题。学习缓慢问题可能时步长的问题,步长设置的太小导致每次权重的变化过慢,而另一个原因就可能是激活函数的问题了,我们可以通过选择不同的代价函数来规避这个问题。如下图神经元所示::我们训练有一个参数的神经元,使其输入1,输出为0,激活函数为sigmoid的模型。初始w=0.6,b=0.9,训练情况如下cost为代价函数 Epoch为训...原创 2019-05-08 20:35:21 · 548 阅读 · 0 评论 -
DNN理解(四)
这次我们来说一说DNN的反向传播过程。首先,我们要明白一点,反向传播的目的是什么?前向传播是为了计算出最后结果,将输入的变量进行一层一层的进行计算,直至最后的输出层。前向传播是为了得出最后结果,而后向传播是为了能够让前向传播得到正确的结果。反向传播就是神经网络的训练过程,也就是利用梯度下降调整参数,得到正确结果的过程。所以说,研究反向传播的时候,得先弄明白前向传播的过程和具体计算过程。...原创 2019-04-30 17:20:31 · 701 阅读 · 0 评论