深度学习
文章平均质量分 82
xiamentingtao
这个作者很懒,什么都没留下…
展开
-
Pytorch——对应点相乘和矩阵相乘
1. 点乘,对应元素相乘,不求和import torcha = torch.Tensor([[1,2], [3,4], [5,6]])b1 = a.mul(a)//b2=a*a原创 2021-06-10 12:03:07 · 695 阅读 · 0 评论 -
为什么torch.nn.Linear的表达形式为y=xA^T+b而不是常见的y=Ax+b?
今天看代码,对比paper常见的公式与实际的代码,发现了torch.nn.Linear的表达形式和我预想的有点不一致,于是思索了一番。原创 2021-06-10 10:27:47 · 667 阅读 · 0 评论 -
FCN-加载训练与测试数据
当我们生成了数据后,我们来看看FCN是如何加载数据的。FCN 代码预览其中: - data : 训练测试数据 - ilsvrc-nets:存放预训练的模型 - 剩下的框:不同数据集的训练测试prototxt - voc_layers,siftflow_layers等:数据生成层 - snapshot:保存快照(若没有自建)加载训练测试数据我们从solve.py看起。 在这里郑重原创 2017-12-02 17:01:58 · 1346 阅读 · 0 评论 -
FCN-数据篇
从本篇开始,我们来记录一下全卷积网络用来做语义分割的全过程。 代码:https://github.com/shelhamer/fcn.berkeleyvision.org 下面我们将描述三方面的内容: 1. 官方提供的公开数据集 2. 自己的数据集如何准备,主要是如何标注label 3. 训练结束后如何对结果着色。公开数据集这里分别说一下SiftFlowDataset与pascal voc数原创 2017-12-02 15:48:51 · 5478 阅读 · 3 评论 -
关于FCN的数据集着色说明
前方我们讲解了《 FCN-数据篇》。里面包含了如何制作类似pascal voc的label。很大篇幅在谈如何着色,如何转化为索引图像。 由于一些内容参考网上的资料,所以对里面的一些操作含义也有些糊涂。 其实网上的东西也不都对,很多人云亦云。所以需要我们仔细甄别。 其中我就发现了一个错误。我们来从头谈起。pascal voc数据集 当我们从网上下载pascal voc2012的数据集,会发现S原创 2017-12-04 17:29:07 · 4314 阅读 · 4 评论 -
softmax logistic loss详解
softmax函数–softmax layersoftmax用于多分类过程中,它将多个神经元的输出,映射到(0,1)区间内,可以看成概率来理解,从而来进行多分类!假设我们有一个数组z=(z1,z2,...zm)z=(z_1,z_2,...z_m),则其softmax函数定义如下: σi(z)=exp(zi)∑mj=1exp(zj),i=1,2..,m\sigma_i(z)=\frac{exp(z原创 2017-10-22 13:56:01 · 4656 阅读 · 0 评论 -
【论文阅读】Illuminating Pedestrians via Simultaneous Detection & Segmentation
论文来源ICCV2017 arXiv reportgithub代码(caffe-matlab)本文的主要问题是行人检测。作者探讨了如何将语义分割应用在行人检测上,提高检测率,同时也不损坏检测效率。作者提出了一种语义融合网络(segmentation infusion networks)去促进在语义分割与行人检测上的联合监督。其中行人检测为主要任务,语义分割主要起到了矫正,指导共享层的特征生成原创 2017-10-22 15:26:37 · 2336 阅读 · 1 评论 -
deeplab运行指南
以下仅仅为一个总结,参考了网上的众多资料,仅备忘记。主要链接deeplab主页:http://liangchiehchen.com/projects/DeepLab.html官方代码:https://bitbucket.org/aquariusjay/deeplab-public-ver2python 版caffe实现:https://github.com/TheLegendAli/DeepL原创 2017-12-14 21:20:54 · 4998 阅读 · 1 评论 -
sigmoid函数的数值稳定性
在深度学习中,我们常常选用sigmoid函数作为激活函数。sigmoid函数的具体形式如下: f(x)=11+e−x f(x)=\frac{1}{1+e^{-x}} 曲线表示为: 再画大一点,取x区间更大一些,则为: 显然从图像上看,sigmoid函数是数值稳定的,即对于更大范围的x,y的取值是连续的,有效的。从理论上看,原创 2018-01-22 16:45:05 · 2777 阅读 · 1 评论 -
语义分割深度学习方法集锦
转载:https://github.com/handong1587/handong1587.github.io/edit/master/_posts/deep_learning/2015-10-09-segmentation.mdPapersDeep Joint Task Learning for Generic Object Extractionintro: NIPS 2014homepage转载 2018-01-19 16:49:27 · 12858 阅读 · 3 评论 -
Pytorch的C++接口实践
Pytorch1.1版本已经提供了相对稳定的c++接口,网上也有了众多的资料供大家参考,进行c++的接口的初步尝试。可以按照对应的选项下载,下面我们要说的是:如何利用已经编译好的官方libtorch库和其他的opencv库等联合编写应用?其实很简单,大概的步骤有三步:第一步:在python环境下将模型导出为jit的模型第二步:编写对应的c++ inference 程序。...原创 2019-08-06 23:23:34 · 29559 阅读 · 8 评论 -
Mask RCNN笔记
mask rcnn简介mask rcnn是何凯明基于以往的faster rcnn架构提出的新的卷积网络,一举完成了object instance segmentation. 该方法在有效地目标的同时完成了高质量的语义分割。 文章的主要思路就是把原有的Faster-RCNN进行扩展,添加一个分支使用现有的检测对目标进行并行预测。同时,这个网络结构比较容易实现和训练,速度5fps也算比较快点,可以很方便原创 2017-11-22 00:22:25 · 63195 阅读 · 16 评论 -
Feature Pyramid Networks for Object Detection 总结
最近在阅读FPN for object detection,看了网上的很多资料,有些认识是有问题的,当然有些很有价值。下面我自己总结了一下,以供参考。 1. FPN解决了什么问题?答: 在以往的faster rcnn进行目标检测时,无论是rpn还是fast rcnn,roi 都作用在最后一层,这在大目标的检测没有问题,但是对于小目标的检测就有些问题。因为对于小目标来说,当进行卷积池化到最后一层,实际原创 2017-11-21 22:52:43 · 19218 阅读 · 13 评论 -
faster rcnn学习之rpn、fast rcnn数据准备说明
在上文《 faster-rcnn系列学习之准备数据》,我们已经介绍了imdb与roidb的一些情况,下面我们准备再继续说一下rpn阶段和fast rcnn阶段的数据准备整个处理流程。由于这两个阶段的数据准备有些重合,所以放在一起说明。我们并行地从train_rpn与train_fast_rcnn说起,这两个函数在train_faster_rcnn_alt_opt.py中。def tra原创 2017-11-08 13:57:12 · 3833 阅读 · 1 评论 -
faster rcnn学习之rpn 的生成
接着上一节《 faster rcnn学习之rpn训练全过程》,假定我们已经训好了rpn网络,下面我们看看如何利用训练好的rpn网络生成proposal.其网络为rpn_test.pt# Enter your network definition here.# Use Shift+Enter to update the visualization.name: "VGG_CNN_M_102原创 2017-11-08 23:05:53 · 1459 阅读 · 1 评论 -
faster rcnn学习之rpn训练全过程
上篇我们讲解了rpn与fast rcnn的数据准备阶段,接下来我们讲解rpn的整个训练过程。最后 讲解rpn训练完毕后rpn的生成。我们顺着stage1_rpn_train.pt的内容讲解。name: "VGG_CNN_M_1024"layer { name: 'input-data' type: 'Python' top: 'data' top: 'im_info'原创 2017-11-08 18:55:29 · 13799 阅读 · 0 评论 -
R-CNN detection 运行问题及办法
运行caffe官方提供的jupyter 的rcnn detection,总是出现各种问题。先将问题及方法汇集在此: 1. Selective Search 的安装问题 按照官网,我下载了selective_search_ijcv_with_python,但是在我的linux matlab2017a上总是出现问题,`Error using CountVisualWordsIndex (l原创 2017-10-26 20:55:10 · 1179 阅读 · 5 评论 -
caffe 初学参考链接
最近在学习caffe,也搜集了一些资料,主要是一些网上公开的博客资源,现汇总一下,以便后面参考。caffe 安装编译py-faster-rcnn全过程caffe依赖库安装(非root)编译py-faster-rcnn的问题汇总及解决方法caffe 基本架构python版本 Caffe for Python 官方教程(翻译)官方提供的示例官方提供的示例注释版caffe 模型微调py原创 2017-10-29 22:09:00 · 492 阅读 · 0 评论 -
faster rcnn的测试
当训练结束后,faster rcnn的模型保存在在py-faster-rcnn/output目录下,这时就可以用已有的模型对新的数据进行测试。下面简要说一下测试流程。测试的主要代码是./tools/test_net.py,并且使用到了fast_rcnn中test.py。 主要流程就是:1. 读取imdb,主要就是测试数据的位置等信息。2. 然后循环读取图片原创 2017-11-13 21:57:14 · 1325 阅读 · 0 评论 -
faster-rcnn系列学习之准备数据
如下列举了 将数据集做成VOC2007格式用于Faster-RCNN训练的相关链接。RCNN系列实验的PASCAL VOC数据集格式设置 制作VOC2007数据集用于Faster-RCNN训练将数据集做成VOC2007格式用于Faster-RCNN训练这一篇比较详细地介绍了如何制造voc2007的所有文件,内含相关软件和代码,值得一看。voc2007数据集的下载和解压转载 2017-11-05 15:39:20 · 3388 阅读 · 0 评论 -
faster rcnn在自己的数据集上训练
本文是一个总结,参考了网上的众多资料,汇集而成,以供自己后续参考。一般说来,训练自己的数据,有两种方法:第一种就是将自己的数据集完全改造成VOC2007的形式,然后放到py-faster-rcnn/data 目录下,然后相应地改变相应模型的参数,比如种类等。 data目录下存放的数据如下:VOCdevkit2007 └── VOC2007 ├── Annotations │原创 2017-11-13 18:44:43 · 1508 阅读 · 2 评论 -
py-faster-rcnn代码roidb.py的解读
roidb是比较复杂的数据结构,存放了数据集的roi信息。原始的roidb来自数据集,在trian.py的get_training_roidb(imdb)函数进行了水平翻转扩充数量,然后prepare_roidb(imdb)【定义在roidb.py】为roidb添加了一些说明性的属性。在这里暂时记录下roidb的结构信息,后面继续看的时候可能会有些修正:roidb是由字典组成的li原创 2017-11-05 19:58:32 · 2934 阅读 · 0 评论 -
faster rcnn end2end 训练与测试
除了前面讲过的rpn与fast rcnn交替训练外,faster rcnn还提供了一种近乎联合的训练,姑且称为end2end训练。根据论文所讲,end2end的训练一气呵成,对于前向传播,rpn可以作为预设的网络提供proposal.而在后向传播中,rpn,与fast rcnn分别传导,而汇聚到shared layer.,但是没有考虑掉roi pooling层对于predicted bound原创 2017-11-14 22:58:14 · 4652 阅读 · 2 评论 -
Faster RCNN minibatch.py解读
minibatch.py 的功能是: Compute minibatch blobs for training a Fast R-CNN network. 与roidb不同的是, minibatch中存储的并不是完整的整张图像图像,而是从图像经过转换后得到的四维blob以及从图像中截取的proposals,以及与之对应的labels等在整个faster rcnn训练中,有两处用到了minibatch原创 2017-11-06 23:48:33 · 3722 阅读 · 0 评论