大泽之国

以技术的名字灌水

在mnist上尝试triplet loss (mxnet)

triplet loss Triplet Loss损失函数在mnist上做相似度计算 triplet loss的核心包括三个部分 anchor/positive/negative 代表三个输入图,尺寸相同,训练的目标是令anchor和positive距离最小化,同时anchor和negative...

2019-03-17 20:00:40

阅读数 23

评论数 0

github上如何修改submodule url

github上fork工程A,而A中有一个submodule B, 如果修改了B,是没法直接提交到github上的,因为B指向别人的工程,那么如何让B指向自己的工程,进而保存自己的修改呢? 首先要从B的原始工程fork一份属于自己的代码,然后修改自己的A工程中.gitmodules文件里B对应的u...

2019-03-07 01:40:25

阅读数 42

评论数 0

cv::parallel_for_ 的一个例子

cv::parallel_for_是opencv封装的一个多线程接口,利用这个接口可以方便实现多线程,不用考虑底层细节,以下是一个具体的例子 继承ParallelLoopBody,重载运算符() class LoopBody : public cv::ParallelLoopBod...

2019-01-20 22:12:51

阅读数 109

评论数 0

经典网络参数和top-score

2019-01-20 21:00:42

阅读数 56

评论数 0

cuda编程 MergeSort

gpu codes #include "windows.h" #include "cuda_sort.h" #include &am...

2019-01-13 11:49:55

阅读数 94

评论数 0

cmake中prebuild/postbuild命令

add_custom_command(TARGET target                      PRE_BUILD | PRE_LINK| POST_BUILD                      COMMAND command1[ARGS] [args1...]        ...

2019-01-11 01:09:08

阅读数 137

评论数 0

深度学习中的优化策略

SGD w=w−lr∗∂ww = w - lr*\partial ww=w−lr∗∂w 其中 lrlrlr是学习速率 ∂w=∂loss∂w\partial w = \frac{\partial loss}{\partial w}∂w=∂w∂loss​ sgd_momentum v=mu∗v−lr∗...

2019-01-05 19:50:53

阅读数 159

评论数 0

batch norm反向公式推导

输入 Xi=(xi0,xi1,...,xi(n−1))X_i=(x_{i0},x_{i1},...,x_{i(n-1)})Xi​=(xi0​,xi1​,...,xi(n−1)​) i∈[0,m−1]i \in [0,m-1]i∈[0,m−1] batch-size等于m,特征维度n 输出 Yi=(...

2019-01-05 16:35:28

阅读数 92

评论数 0

pvanet 训练自定义数据

源码 编译方法 到lib目录下执行 make caffe-fast-rcnn目录下执行 cp Makefile.config.example Makefile.config #编辑Makefile.config内容,启动WITH_PYTHON_LAYER := ...

2018-12-04 23:30:59

阅读数 58

评论数 0

validation accuracy vs train accuracy

训练时validation accuracy和train accuracy之间没有差距,本义为这是一个还不错的曲线,但是今天讨论时有人评论说这种情况说明网络参数不足,因为在参数充足的情况下多多少少会有过拟和,所以正常情况下train accuracy会高于validiation accuracy,...

2018-11-18 23:00:08

阅读数 565

评论数 0

softmax_loss梯度推导

softmax_loss的真正名字应该是softmax cross entropy loss。因为softmax的定义是 f(zi)=softmax(zi)=ezi∑jezjf(z_i)=softmax(z_i)=\frac{e^{z_i}}{\sum_je^{z_j}}f(zi​)=softma...

2018-11-18 02:54:50

阅读数 214

评论数 0

faster R-CNN 生成anchor box

以下代码来自faster R-CNN的generate_anchors.py,目的是基于预定的base_box(正方形),生成若干长宽比和尺度的新的anchor box。 其中 _whctrs()是把一个矩形用(中心点,宽高)的形式表达 _mkanchors()是给定一个中心点,和若干不同的宽高,...

2018-11-16 00:25:37

阅读数 212

评论数 0

yolov3 中box坐标的处理

yolov2吸收faster rcnn的anchor box机制时遇到训练不稳定的问题,分析认为是bbox坐标回归时没有限制,导致anchor box可能会去预测一个距离很远的object,效率不高,因此yolov2对bbox的坐标进行一系列的处理,令anchor box只会对邻近的object负...

2018-11-15 00:46:26

阅读数 1286

评论数 0

shuffleNetV2

ShuffleNet V2: Practical Guidelines for Efficient CNN Architecture Design Why ResNet,DenseNet等网络已经把分类问题的精度推到一个很高的水平,而很多轻量级网络MobleNet, XceptionNet和Shu...

2018-11-11 20:48:24

阅读数 407

评论数 0

darknet yolov3 训练自定义数据集

VOC数据集上的训练步骤 修改类别 yolo层的classes修改成新的类别书 yolo层前一个convolution层的filters修改成(classes+4+1)*3

2018-11-10 22:03:50

阅读数 286

评论数 0

强化学习的一点理解

从可用作输入的信息多少的角度,可以把机器学习划分成三个类别: 无监督学习:包括降维和聚类任务,几乎任何东西都可以当作输入,但输出往往很模糊。 有监督学习:包括分类和回归任务,因为需要人工标注,可以当作输入的信息要少很多 强化学习:和前面两类不同,强化学习适合做的是行为控制。其能够接触到的...

2018-11-08 00:49:04

阅读数 40

评论数 0

经典网络结构之InceptionNet

InceptionNet又称googleNet,最初的设计思路是增加网络宽度:InceptionNet核心结构包括多个分支,分别对应不同的感受野。大的感受野适用大的目标,小的感受野适用小目标,如此网络具备了scale不变性。 不同感受野最终通过concat合并在一起,为了避免通道数爆炸,在每个分支...

2018-11-07 00:06:42

阅读数 250

评论数 0

解决样本不均衡问题-SMOTE

原文链接 SMOTE: Synthetic Minority Over-sampling Technique 解决的问题 很多算法都有一个默认的假设:样本中各个类别的样本数目是均衡的,比如深度学习中几个经典网络结构直接用于不均衡数据效果会很差。本文提出的SMOTE是一种通过线性插值过采样的方法解决...

2018-11-05 21:57:52

阅读数 308

评论数 0

训练一次得到多个模型做集成的方法

参考论文 SNAPSHOT ENSEMBLES: TRAIN 1, GET M FOR FREE 解决的问题 多个分类器集成可以获得超过单个分类器的效果,但集成分类器就要求有多个分类器,在训练速度和测试速度方面不占优势。本文提出的方法可以提高集成学习的训练速度,通过一次训练,获得多个分类器,解决了...

2018-11-04 20:42:57

阅读数 1005

评论数 0

深度学习和传统机器学习的差别

特征构造 是否需要人工构造特征,这应该是深度学习和传统机器学习的最明显的差异。feature engining是传统机器学习中的一个重要组成部分,sift,hog,wavelet等都是解决如何描述数据的问题。深度学习兴起后,feature engining的研究几乎停滞,而end-to-end成...

2018-11-04 01:50:35

阅读数 1856

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭