- 博客(58)
- 资源 (13)
- 收藏
- 关注
原创 fblualib安装教程
源码地址https://github.com/facebook/fblualib整个安装教程都建立在你没有ROOT权限的情况下的,所以一切的安装都需要你打开shell脚本,一步步执行里面的安装指令,并且要修改很多因为没有root权限而造成的问题。
2016-06-24 21:02:17 7911 22
原创 Max Jaderberg用于生成合成样本的脚本解析
博主十分青睐于使用合成样本来训练模型,因为这种方法非常简单可依赖,而在text detection领域里,提到合成样本不得不说一下VGG组的工作,有关利用合成样本(Synthetic Data)来训练模型的文章大家可以去http://www.robots.ox.ac.uk/~vgg/research/text/下查找。其中一作Max Jaderberg把他们合成样本的工具公开在了https://b
2015-12-15 14:48:57 3041 13
原创 篮球最强队伍与马尔科夫模型
打篮球的时候经常遇到这样的情况,11个人,分成4、4、3一共三组,人少的一组上场的时候,由上一场败下阵的队伍中出一个人来补上空位。于是我就想,如此反复的组合队伍,会不会出现一个最强组合,使得这4个人一直赢比赛呢?当然,这忽略了体力不支等现实因素。于是,在场下我就小小的BrainStorm了一下,给了这个问题的一些假设与简化: 假如有N(N>=5)个人打篮球,分成K个队伍(
2014-06-05 10:05:08 1904 2
原创 MMCV分布式训练的隐藏bug
在实用mmcv框架(mmdetection或者是mmsegmentation)进行分布式训练的时候,存在一个隐藏bug。正常来说,分布式训练的示意图如下,代表了不同的GPU卡,代表了不同task的输出,分布式训练时会有一步汇总操作(代码里是dist.all_reduce),将不同卡的进行平均。 但是,dist.all_reduce操作的前提是在每个GPU卡的产生顺序一定要是固定的,比如有四个分类任务,代码里指定GPU0卡依次产生,GPU1卡依次产生,如果只有GPU0与...
2021-08-19 19:05:39 741
原创 caffe中所有Layer都不进行backward的BUG
在caffe中,假如loss_layer指定了propagate_down参数,那么必须将loss_weight也同时在loss_layer设定好,这样让caffe知道这是一个loss层,不然……全部的layer都不进行backward……玛德,这问题差点把我坑死……
2016-10-12 21:31:53 1796 6
原创 关于Batch Normalization在Caffe中的使用
在Caffe中使用Batch Normalization需要注意以下两点,1. 要配合Scale层一起使用,具体参见http://blog.csdn.net/sunbaigui/article/details/50807398以及Residual Network2. 训练的时候,将BN层的use_global_stats设置为false,然后测试的时候将use_global_stats
2016-08-26 18:48:48 12111 12
原创 Affine Transformation中Rotate Transformation的等价变换
2D图像中的仿射变换种类有平移,旋转,放缩与SHEAR变换,具体公式可以参考http://cn.mathworks.com/discovery/affine-transformation.html最近的工作是为了训练一个网络来回归这些仿射变换参数,比如平移了多少,放缩了多少等等,但是博主发现,当不考虑SHEAR变换的时候,其他三个变换的参数量都能极好的学习,而且泛化性有很好的保障,但是加入了S
2016-07-19 15:33:39 1094
原创 关于caffe里面image_data_layer的使用
刚入门caffe的肯定是用demo里面的leveldb格式的数据库,说实话这数据库用起来太麻烦了,所以推荐大家入门到精通都用image_data_layer.cpp使用方法如下所示layer { name: "demo" type: "ImageData" top: "data" top: "label" include { phase: TRAIN }
2016-05-05 16:22:22 18293 14
原创 利用向量化对图像做快速赋值
问题背景:假如我们有一张图,像素值全部取自一个颜色集合C (有点像是png的压缩原理) ,目的是将其分辨率降低为原来的1/2,而且降低分辨率之后的图像像素一定还是都属于原来的颜色集合C,假如直接用imresize的话,就会出现压缩之后像素值有损失的问题,导致会出现不在颜色集合C的像素,所以需要自己写一个不破坏像素信息的imresize函数。解决思路:1. 一个最简单的方法就是声
2015-10-08 21:02:08 3593
原创 才发现CSDN的Rachel Zhang大神就在身边工作
http://blog.csdn.net/abcjennifer/ 这是她的博客 = = 竟然才知道她现在在百度IDL,下周要给我们讲Image to Text的东西。还是经理一句话提醒了我,“我们都是读你的博客长大的” → →
2015-08-11 15:44:08 6039 2
转载 Caffe的Layer介绍
http://demo.netfoucs.com/danieljianfeng/article/details/42929283见所附网址,搜要找的layer的关键字即可
2015-08-11 14:36:50 1079
原创 memset使用注意事项
我在Caffe中用memset给一个数组赋初始值1,但是结果是赋值赋不了,只能用for循环去赋值。至于什么问题,先放着,有时间解决,写个博客,挖个坑。
2015-08-05 16:10:55 2223 2
原创 CNN中感受野的计算
感受野(receptive field)是怎样一个东西呢,从CNN可视化的角度来讲,就是输出featuremap某个节点的响应对应的输入图像的区域就是感受野。比如我们第一层是一个3*3的卷积核,那么我们经过这个卷积核得到的featuremap中的每个节点都源自这个3*3的卷积核与原图像中3*3的区域做卷积,那么我们就称这个featuremap的节点感受野大小为3*3如果再经过pooling
2015-07-10 15:38:08 49175 20
原创 RCNN的安装与简单使用
最近准备从物体检测的角度来重新审视文本检测这个方向,所以看了下CNN大火以后的几篇经典文献,OverFeat,Region CNN, Dense Neural Pattern等等。对这个方向来说,百闻不如一试,趁着其他程序还在跑没什么事,我安装了一下RCNN来看看效果
2015-07-03 16:09:01 26821 33
原创 神经进化学的简单介绍和一个简单的CPPN(Compositional Pattern Producing Networks)DEMO
最近迷上神经进化(Neuroevolution)这个方向,感觉是Deep Learning之后的一个很不错的研究领域。该领域的一个主导就是仿照人的遗传机制来进化网络参数与结构。注意,连网络结构都可以进化,就是不像是传统的神经网络,结构是提前定义好的。最近这个领域研究的比较多的是 弗罗里达大学的Stanley教授,主要的贡献有NEAT,HyperNEAT以及Novelty Search,
2015-06-03 14:38:31 5686 4
原创 如何用手机接收自动化所邮箱的邮件
接收服务器: pop.ia.ac.cn发送服务器: smtp.ia.ac.cniPhone设置的时候不用开启ssl模式,接收服务器的用户名跟密码是要填的(虽然写着可填,但是还是必须填)
2015-06-01 12:39:32 3076
原创 谈谈如何训练一个性能不错的深度神经网络
深度学习大火,将各个数据集的state of the art不断地刷新,到了开源代码一放出,有种全民皆可刷排名的节奏。不过可别把刷数据想的那么简单,不然大家去哪发paper,怎么混饭吃= = 但是我不想发paper就想占坑刷数据怎么办,看到cifar10都尼玛刷到了95%了,我这用caffe自带的小demo才得出78%的结果,caffe你确定不是在骗我?caffe确实没在骗
2015-05-18 16:25:14 12932 6
原创 胡言乱语找节奏 —— 什么才是机器学习的未来
模板匹配什么才是描述像不像的最直白简单的算法——KNN什么才是学习出最贴近人的认知的模板匹配算法——KMEAN?KMEDOID?or other clustering methods?什么样的结构最贴近人的认知生成模型进化 -> 生成+判别模型判别模型应该只是一种认知的一种,不是认知的全部,认知的全部应该是有概念的,但是判别模型却没法体现这一点但是并不是说有
2015-04-27 17:14:48 1409
原创 ICDAR2015 Robust Reading Task4参赛感想
Robust Reading的Task 4是今年才推出的比赛,与已经公开多年的Task1和Task2相比,Task4的样本是用手机随机拍摄的生活场景,不是刻意针对文字拍摄的。Task1的图像样例Task2 的图像样例Task4的图像样例比赛要求是只检测人眼可以看出来的文字,比较直观,不做过多赘述。下面是一些我的感想吧。代码
2015-04-11 12:15:33 8149 13
原创 hdf5格式的matlab读写操作
最近要用caffe处理一个multi-label的回归问题,就是输出是一个向量,不是一个具体的数值,这个时候之前的leveldb格式就不凑效了,因为caffe源代码里面默认label是一个数值,网上搜了下,都说hdf5格式可以解决这个问题在caffe里面,有一个hdf5的datalayer作为数据输入,从源代码来看,对于label的维数没做限制,剩下的问题就是如何生成hdf5的数据,目
2015-02-03 13:24:24 33223 17
原创 caffe中cifar10的full_train模型出现nan的解决办法
caffe在cifar10 的example上给出了两个模型,一个是quick模式,一个是full模式,训练full模式时会出现loss=nan的错误
2014-12-24 10:53:52 15039 10
原创 哺乳动物视觉皮层的深层结构研究
哺乳动物视觉皮层的深层结构研究参考文献 Deep Hierarchies in the Primate Visual Cortex : what can we learn for computer vision ?----------------------------------------------------------------------------------------------------------
2014-12-07 11:29:26 2639
原创 caffe安装指南
其实caffe上的安装已经介绍的很清楚,而且也不乏介绍caffe的文章,之所以写这篇是因为这是一个中文版本的,再就是我在实验室服务器安装时遇到了很多问题,我觉得后来人可能会遇到,所以贴出来Linux平台下的Caffe安装指南
2014-10-23 13:38:18 59511 16
原创 cuda-convnet 在其他数据集上的使用教程
cuda-convnet 是 Alex Krizhevsky 公开的一套CNN代码,运行于Linux系统上,使用GPU做运算,在cuda-convnet中仅仅提供了Cifar数据集的demo,并且网站上并没有说明cuda-convnet代码是如何用于其它数据库的,所以博主我就尝试修改源码,以用于MNIST数据集上,做一个手写数字的识别CNNdemo文章分三个部分:首先,IO模块
2014-09-16 16:02:42 9416 19
翻译 ZCA白化变换推导——Learning Multiple Layers of Features from Tiny Images
参考文献:Learning Multiple Layers of Features from Tiny Images:附录设数据集 X 的维数为 d×n ,且已经中心化则协方差矩阵为1/(n-1)*X*X'我们想让这n个d维向量中任意两维都不相关,则假定去相关矩阵为WY = W*X为了使W达到去相关的目的,Y*Y‘必须是对角阵,可以进一步约束Y满足Y * Y’ = (n
2014-08-04 09:41:28 8551 5
原创 UFLDL 教程答案 稀疏编码与softmax篇的答案已经传到资源,大家可以免费下载~
UFLDL 教程答案 稀疏编码篇与softmax篇的答案已经传到资源,大家可以免费下载~另外,关于资源里面描述的低效率的代码的问题,逗比的博主已经找到了解决方案,大家需要修改两个文件的两处代码,绿色是需要被注释的softmaxCos.m文件%% 非向量化%for i = 1 : numCases% thetagrad = thetagrad + (groundTruth(
2014-07-30 09:54:19 2473
原创 论程序员如何画水粉画
思路:图像分割算法:meanshift参数:半径为r=2代码:clear all;close all;clc;filename = dir('flower\*.jpg');for nn = 2 : length(filename) fullname = strcat('flower\', filename(nn).name); r=2; %滤波
2014-03-20 10:27:02 1452
原创 DoglegMethod——“狗腿”算法(下)
好吧,楼主经过努力的调试找BUG,终于可以给大家写这个下篇了,为了验证Dogleg算法对于一般的函数也管用,楼主把优化的函数换成了y = (x1-1)*(x1-2)*(x1-3)*(x1-4) + (x2-1)*(x2-2)*(x2-3)*(x2-4);然后,很神奇,不论我怎么调试,结果都是很差很差,而且算法定的方向是原理最小值点的,这让我非常的困惑。经过不断地
2013-12-05 23:17:54 3447 1
原创 DoglegMethod——“狗腿”算法(中)
这周上完最优化算法,又跑去问了问老师Dogleg算法上的疑问,应该说是解决了上篇日志《DoglegMethod——“狗腿”算法(上)》的疑问,也纠正了我对于信赖域方法的一些错误的看法。首先对于信赖域方法以及基于信赖域方法的Dogleg算法,我有一个错误的观点是:信赖域方法本质是在求最优下降方向dk,而步长ak则用线搜索等方法求解。但是信赖域方法实际上是给出了sk=ak·dk,只不过如果
2013-11-28 20:01:10 5755 19
原创 我觉得PCA与因子分析的本质是一样的
今天考完多元统计分析,巨水的一门课,因为在我看来不写程序的统计课基本就是纸上谈兵的废课。其中有道题论述PCA跟因子分析的基本思想,我写的非常简略,因为我觉得这两个方法本质就是一样的,因为思想就是一样的,只不过实现方式不同而已。显然保守的老师是想让我们抄抄课本,别一两句话就结了,对我说“你这就写这么点儿,怎么给你分”。(爱给多少给多少呗,反正我能及格)而且对我那句“PCA跟因子分析本质相同”的话非常
2013-11-26 16:10:26 3257
原创 DoglegMethod——“狗腿”算法(上)
参考文献:“Numerical Optimization” ---Page71 Dogleg MethodAuthor:Jorge Nocedal & Stephen J. Wright问题来源:对于最速下降法,本质的等式在于x(k+1) = x(k) + a(k)*d(k),x(k)为定义域上的点,a(k)为前进的步长,是一个标量,d(k)是前进的方向, 对于高维变量d(k)就
2013-11-22 13:19:11 13177 7
原创 为什么要写上万行的代码?
初学编程,编写到上百行就兴奋不已觉得是个飞跃,殊不知更有千行代码等着你;当你自己一个人写了几千行的代码,你才明白,你最想做的是把代码写少,写精细,写的可扩展性与可复用性强,这样你的工作量更后续修改量才能少,所以你开始琢磨怎么设计架构,来避免重复的代码以及可复用性以及可扩展性;然后你终于明白老师的那句,没有自己亲手写上万行的代码是没有质的飞跃的,上万行的代码已经叫做“盖楼”了
2013-10-29 20:22:45 2793 4
原创 Unity3D SetActive二三事
事情1:BUG— NullReference在Unity3D的使用中,有时需要将一些模型停用,也就是停止渲染,这样可以达到提高性能的效果,有时也是为了场景需要,SetActive的应用不慎会出BUG,经常遇到的就是NullReference,也就是找不到对象。BUG原因1. 无该gameObject2. 使用GameObject.Find() 名字的索引有误3. 被操作
2013-09-09 17:07:11 27993 1
原创 Unity3D的碰撞检测遇到的有趣BUG
Assume that A and B are both given the Box Collider. If we use the function bound.Intersect() to detect the collide between A and B, there seems a way to make this kind of detection effectiveness and
2013-09-07 09:29:25 4995
原创 LAPACK使用中出现问题的解决方案(VS平台下的)
安装方法引自http://blog.csdn.net/michealmeng555/article/details/6525840可能会报的错1. 错误类型:重复定义 解决方案:在项目属性->链接器->输入->忽略特定默认库,中输入要忽略的库,我这里是忽略了MSVCRTD.lib2. 错误类型:类型未定义,不识别integer类型 解决方案:错误的原因是因为
2013-07-07 09:54:58 2837
原创 图像的定义
《般若波罗蜜心经》中有句非常有名的话——”色不异空,空不异色,色即是空,空即是色“,也就是“色即是空”的来源。那么这跟图像有什么关系呢?其实图像给人的直观感受一定是可以看得到的,但是一幅图像可不可以是抽象的?也就是说图像仅仅是一片抽象描述的集合,假如如此定义,那么我们通常意义上处理的图像其实是最为浮华的图像,而我们所做的工作其实是处理这个可以用肉眼看到的“色”,来用抽象的东西得到它的“空”,也就是
2013-03-24 16:27:42 1909 1
原创 Kinect中动态手势的识别算法——倒序识别法
做Kinect开发的人士肯定少不了用到动态手势,对于动态手势的识别,我想大家基本都会研究过判定的算法。今天我在这里向大家介绍一个我自己发明的,而且还挺不错的算法,叫倒序识别法,这个算法可以说能把一部分的动态手势甚至动态姿势识别的精确度提高百分百。 拿一个非常简单的例子来作介绍,就是挥手翻动PPT的动作检测。我把我前后两次的算法介绍给大家:
2013-03-17 11:05:57 5143 2
network in network 基于caffe的实现
2015-01-08
UFLDL Tutorial Exercise Answer 练习答案—PCA and ZCA
2014-07-30
UFLDL教程练习题答案——self-taught learning
2014-07-30
UFLDL Tutorial Exercise Answer 练习题答案—softmax篇
2014-07-29
UFLDL Tutorial Exercise Answer 练习题答案—AutoEncoder
2014-07-29
LBP算法的C++代码,与最经典的原文献算法一致
2013-09-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人