文章 12
评论 4
浏览 20909
神经网络反向传播算法的推导

神经网络反向传播算法的推导

概述   在深度学习领域的研究中,神经网络有着举足轻重的地位,神经网络相关的理论也是整个深度学习研究的基石。其中,神经网络的反向传播算法又是神经网络理论的核心所在。如今各种深度学习框架百花齐放,相关的开源社区也蓬勃发展,这些深度学习框架大部分都为我们封装了神经网络的基本操作以及自动求导的功能,这样我们只需用几十行代码就可以训练一个简单的神经网络而不需要明白其内部的原理。当然,深度学习框架的发展有利亦有弊。一方面,使用深度学习框架就可以不用重复造轮子,让我们可以专注于算法本身的研究上,不需要编写过多的额外代码。另一方面,深度学习框架的出现大大降低了深度学习的门槛,这导致了广大所谓的“研究者”只知其然不知其所以然,所谓的深度学习研究就退化成了“调参”,这恐怕也是深度学习被广为诟病的特点之一。   基于上述观点,我认为一个合格的深度学习研究者在数学上一定要过关,事实上任何理工科的科研脱离了数学都是扯淡。我很早就想学习一下神经网络反向传播算法的具体内容,但却一直拖到了现在。这几天趁着矩阵论刚考完还热乎着,准备结合网上的一些资料尝试一下推导反向传播算法,就写下了这篇博客,本文只讨论全连接神经网络....

目标检测框架——mmdetection的使用总结

目标检测框架——mmdetection的使用总结

简介   mdetection 是商汤和香港中文大学联合开源的一个基于 PyTorch 的目标检测工具包,属于香港中文大学多媒体实验室 open-mmlab 项目的一部分,项目地址为 https://github.com/open-mmlab/mmdetection。   mmdetection 使用模块化设计,将一般的目标检测算法分成了几个不同的模块,使用时只需在配置文件中声明各个模块使用的组件名称和相应的参数,就可以像搭积木一样搭建出一个完整的目标检测模型。mmdetection 有着很好的灵活性和扩展性,如果希望在其中添加新的目标检测算法,只需按照 mmdetection 的接口设计增加关键模块的代码并编写相应的配置文件即可,这样实现了不同算法间相同代码的复用,大大减少了实现一个目标检测算法所需编写的代码量。除此之外,mmdetection 大多数运算都在 GPU 上进行,这使得它有着不俗的性能。目前,mmdetection 已经集成了很多经典的目标检测算法如 Fast RCNN,Faster RCNN,Mask RCNN,retinanet,FCOS 等,未来将会添加更多的算法....

Region Proposal by Guided Anchoring 论文阅读笔记

Region Proposal by Guided Anchoring 论文阅读笔记

概述 这篇文章提出了提出了一种新的 anchor 生成方法,即通过图像特征来指导 anchor 的生成。通过预测 anchor 的位置和形状,来生成稀疏而且形状任意的 anchor,并且设计了 Feature Adaption 模块来修正特征图使之与 anchor 形状更加匹配。 文章提出手工设计 anchor 有两个要求:1)alignment,为了用卷积特征作为 anchor 的表示,anchor 的中心需要和特征图的像素中心比较好地对齐;2)consistency,feature map 不同区域的 anchor 的形状和大小应当与其感受野和语义范围一致。论文还认为,这种手工设计 anchor 的方式存在两点不足:1)必须针对不同的问题设计相应比例和大小的 anchor,错误的设计可能会影响检测器的速度和精度;2)为了得到极高的召回率,需要设计非常多的 anchor,而其中大部分 anchor 并不会覆盖到真实目标,大量的 anchor 也会带来非常大的运算开销。 方法 文章指出,对于一张图片 I,其 anchor 的位置和形状分布满足下式 P(x,y,w,h|I)=P(x,y|....

Everything that kills me makes me feel alive