
Deep Learning算法及知识
seasermy
专注AI算法研究与应用,AI软硬件协同优化,AI系统解决方案
展开
-
Learning to See in the Dark
在做图像低曝光增强时,Learning to See in the Dark这篇文章能够达到较好的效果,如下图,网络能够很好的展示文章的逻辑,文章的其他部分比较好理解,有不理解之处可以做探讨. 在网络中,为了节省上采样时间,作者用了pixel shuffle功能, depth_to_space函数,函数的意思比较抽象,难于理解,下面通过简单程序表明,网络最后的feature m...原创 2019-11-25 14:24:20 · 377 阅读 · 0 评论 -
训练样本不平衡对CNN训练结果的影响
今天在网上看到这篇文章The Impact of Imbalanced Training Data for Convolutional Neural Networks,里面做了一系列实验讨论训练样本对CNN的影响。作者前面先是介绍了CNN和深度学习的相关知识,然后介绍了几个流行的数据集,ImageNet、mnist、CIFAR-10 and CIFAR-100。然后利用较小转载 2017-06-16 14:18:19 · 4736 阅读 · 0 评论 -
深度学习性能提升的诀窍
深度学习性能提升的诀窍[转载]原文: How To Improve Deep Learning Performance作者: Jason Brownlee提升算法性能的想法这个列表并不完整,却是很好的出发点。我的目的是给大家抛出一些想法供大家尝试,或许有那么一两个有效的方法。往往只需要尝试一个想法就能得到提升。我把这个列表划分为四块:· 从数据上提升性能· 从算转载 2017-06-16 14:28:14 · 547 阅读 · 0 评论 -
类间数据量不均衡
这篇博文是作者的一个实验笔记,研究一个”飞机-背景“二分类器在不同样本比例下精度,召回率的规律。1. 问题描述 固定正样本(飞机)2000个,改变负样本(背景)的训练数据量 1 : 0.5 、 1 : 1 、 1 : 2 、 1 : 5 、 1 : 10 、 1: 30. 随着负样本数量的增多,类间数据量不均衡的情况更为显著。 测试时,分别随机选取4096张飞转载 2017-06-15 17:23:41 · 1759 阅读 · 0 评论 -
训练集噪声对于深度学习的影响
总所周知,在深度学习的训练中,样本的质量和数量都是非常重要的一环。然后在实际的生产过程中,样本的数量往往可以通过一些手段得到满足,但是质量却非常依赖人工的标注,因此往往在训练中会包含一定数量的标注不正确的数据。一般认为这样的一些数据,会对于最终的结果造成负面影响,但是具体怎样影响训练和最终的模型推广效果我们来做一个小实验。实验设置使用工具 :MXNET数据集:MNIST训练集大小:原创 2017-10-09 14:35:14 · 19054 阅读 · 3 评论 -
CNN训练Cifar-10技巧
CNN训练Cifar-10技巧关于数据集 Cifar-10是由Hinton的两个大弟子Alex Krizhevsky、Ilya Sutskever收集的一个用于普适物体识别的数据集。Cifar是加拿大政府牵头投资的一个先进科学项目研究所。说白了,就是看你穷的没钱搞研究,就施舍给你。Hinton、Bengio和他的学生在2004年拿到了Cifar投资的少量转载 2017-10-09 14:57:14 · 1682 阅读 · 0 评论 -
物体检测算法的历史发展脉络综述
物体检测(或目标检测),是计算机视觉领域非常重要的应用,是许多项目的基础。在计算机视觉识别领域,主要有分类和检测两大主要任务,分类只需要把当前物体归属到特定类别,而检测除了需要分类外,还需要检测出物体的具体位置坐标,是一种更严格意义上的识别。物体检测应用领域很广,比如人脸检测, 汽车检测、人体及其他部件检测、logo检测、常见物体检测等。对于一个专业的计算机视觉从业者来说,能较好的了解物...原创 2019-05-14 16:50:05 · 1751 阅读 · 0 评论 -
MobileNetV2经典解读,通俗明白
前生今世-------------------------------------------->早期的CNN网络,如VGG,利用的是直接堆叠卷积层和池化层的办法,如下图所示(vgg16):从左(bottom)到右(top),feature map的分辨率逐渐减小,这其中有两个问题如下:(1)卷积或池化的本质其实是滤波,滤波必然造成信息损失,层层滤波会造成信息层层损失,t...原创 2019-05-16 12:11:34 · 4191 阅读 · 1 评论 -
数据白化预处理
欢迎关注公众号,更多知识分享,多谢数据白化预处理随机向量的“零均值化”和“空间解相关”是最常用的两个预处理过程,其中“零均值化”比较简单,而“空间解相关”涉及一些矩阵的知识。 设有均值为零的随机信号向量 ,其自相关矩阵为很明显, 是对称矩阵,且是非负定的(所有特征值都大于或等于0)。 现在,寻找一个线性变换 对 进行变换,即 ,使得上式...转载 2016-03-15 17:43:13 · 24613 阅读 · 1 评论 -
Object Detection
Original url:http://blog.youkuaiyun.com/u010167269/article/details/52563573https://handong1587.github.io/deep_learning/2015/10/09/object-detection.htmlObject Detection Published:转载 2017-04-26 11:51:59 · 2108 阅读 · 0 评论 -
loss weight
Loss(损失)与绝大多数的机器学习引擎一样,Caffe是由一个loss function(损失函数)驱动的。loss function也称为 error function,cost function或者objective function。loss function利用模型中的参数(比如模型中网络的weights-权重参数)运算得出一个(标量)结果,这个结果表明参数设置的ba转载 2017-04-07 11:41:38 · 2268 阅读 · 0 评论 -
maxout简单理解
maxout出现在ICML2013上,作者Goodfellow将maxout和dropout结合后,号称在MNIST, CIFAR-10, CIFAR-100, SVHN这4个数据上都取得了start-of-art的识别率。 从论文中可以看出,maxout其实一种激发函数形式。通常情况下,如果激发函数采用sigmoid函数的话,在前向传播过程中,隐含层节点的输出表达式为: 其转载 2016-04-15 18:49:03 · 1469 阅读 · 0 评论 -
windows下用caffe加载二进制模型(linux下训练)的问题
最近,需要移植faster-rcnn的detect部分到android平台上,为方便删减代码与调试,需要跨平台兼容到windows下运行,windows下调试的时候,用的是linux下的模型定义proto与训练好的二进制模型,但是,一直加载模型不成功,逐步解决方法如下:(1)核对protobuf版本,均为2.5.0,不可能是因为版本不兼容所致;(2)核对cafe.proto,这个文件...原创 2016-05-26 18:55:20 · 3153 阅读 · 5 评论 -
dp-dpm与matcaffe编译
Deformable Part Model are Convolution Neural Network可变形部件模型即卷积神经网络,大神rbg咋论文里,对这个观点进行了阐述,用cnn feature map代替hog特征,进行latent svm的训练,从而将DPM扩展为cnn在编译dp-dpm的caffe代码时,由于matlab的gcc版本较低,而linux原创 2016-05-04 12:02:33 · 1304 阅读 · 2 评论 -
caffe中的backward理解
1. 在本质上backward解决的是导数计算的问题,用的就是BP算法,所谓的BP算法就是使用当前层权重对于当前误差加权然后传递到下层节点的一个流程。下图是caffe的doc中示意的,这里面有两部分,一个部分就是向下传递的对于g的偏导数,这个数值就是反向传播的输出;另外一部分就是在当前层中对于当前权重的求导。study(2) 关于forward和backward - backward"转载 2016-08-10 12:42:32 · 2160 阅读 · 0 评论 -
常用 blas 函数
常用 blas 函数Y=alpha * X +beta*Y template <>void caffe_cpu_axpbyfloat>(const int N, const float alpha, const float* X, const float beta, float* Y) { cblas转载 2016-08-10 17:51:32 · 965 阅读 · 0 评论 -
为什么要使用relu激活函数
ReLu(Rectified Linear Units)激活函数论文参考:Deep Sparse Rectifier Neural Networks (很有趣的一篇paper)起源:传统激活函数、脑神经元激活频率研究、稀疏激活性传统Sigmoid系激活函数传统神经网络中最常用的两个激活函数,Sigmoid系(Logistic-Sigmoid、Tanh-Sigmoid)被转载 2016-08-11 12:17:10 · 14223 阅读 · 1 评论 -
理解droupout
dropout理解转载 2016-12-20 11:04:37 · 11035 阅读 · 3 评论 -
告诉你为什么数据要取对数
告诉你为什么数据要取对数2016-06-07 16:04 746人阅读 评论(0) 收藏 举报 分类:机器学习(13) 平时在一些数据处理中,经常会把原始数据取对数后进一步处理。之所以这样做是基于对数函数在其定义域内是单调增函数,取对数后不会改变数据的相对关系,取对数作用主要有:1. 缩小数据的绝对数值,方便计算。例如,每个数据项的值都很大,许多转载 2017-01-13 14:47:27 · 7106 阅读 · 0 评论 -
RELU函数理解
在CNN卷积神经网络中,习惯用RELU函数代替sigmoid, tahh等目标激活函数,这应该是因为,RELU函数在大于0的时候,导数为恒定值,而sigmoid和tahh函数则不是恒定值,相反,sigmoid和tahh的导数,类似于高斯函数的曲线形状,在两端接近目标时,导数变小。导数小的话,在训练神经网络的时候,会BP反向传播误差,导致收敛减慢;而relu函数则避免了这点,很好原创 2015-07-01 14:10:17 · 10683 阅读 · 0 评论