深度学习与计算机视觉
文章平均质量分 98
Greeksilverfir
这个作者很懒,什么都没留下…
展开
-
Multi-Sample Dropout for Accelerated Trainingand Better Generalization
使用pytorch进行multi-sample dropout试验,代码地址:https://github.com/lonePatient/multi-sample_dropout_pytorch内容后续补上。。。。。。。原创 2019-08-28 14:57:11 · 473 阅读 · 0 评论 -
深度学习与计算机视觉(PB-12)-ResNet
在上一章中,我们讨论了GoogLeNet网络结构和Inception模块,这节中,我们将讨论由一个新的微结构模块组成的网络结构,即由residual微结构组成的网络结构——ResNet。ResNet网络由residual模块串联而成,在原论文中,我们发现作者训练的ResNet网络深度达到了先前认为不可能的深度。在2014年,我们认为VGG16和VGG19网络结构已经非常深了。然而,通过ResNe...翻译 2019-01-06 20:07:13 · 1204 阅读 · 0 评论 -
深度学习与计算机视觉(PB-13)—ImageNet数据集准备
前面几节内容中,我们都是对小数据集(相对于工业界而言)进行实验,使用CPU环境也可以完美地实现。接下来,我们将使用ImageNet数据集进行实验,该数据集比较大,需要在GPU环境下进行。在对ImageNet数据进行建模之前,我们首先来认识下ImageNet数据集以及对该数据集进行预处理。ImageNet数据集介绍ImageNet是一个计算机视觉系统识别项目,是目前世界上图像识别最大的数据库。是...原创 2018-12-04 09:38:09 · 13791 阅读 · 39 评论 -
深度学习与计算机视觉(PB-11)-GoogLeNet
在本节中,我们将研究Szegedy等人在2014年的论文《Going Deeper With Convolutions》中提出的GoogLeNet架构。这篇论文之所以重要,主要是:与AlexNet和VGGNet网络结构相比,模型非常小(整个权重文件大小约为28MB)。并且从论文中,我们可以看到作者使用Global Average Pooling代替了全连接层,一方面减小了模型的大小,另一方面...原创 2018-12-03 14:10:59 · 1280 阅读 · 2 评论 -
深度学习与计算机视觉(PB-10)-Kaggle之猫狗比赛
在第9节中,我们提到了当数据太大无法加载到内存中时,如何使用HDF5保存大数据集——我们自定义了一个python脚本将原始图像数据集序列化为高效的HDF5数据集。在HDF5数据集中读取图像数据集可以避免I/O延迟问题,从而加快训练过程。假设我们有N张保存在磁盘上的图像数据,之前的做法是定义了一个数据生成器,该生成器按顺序从磁盘中加载图像,N张图像共需要进行N个读取操作,每个图像一个读取操作,这样...原创 2018-12-03 14:10:29 · 1688 阅读 · 4 评论 -
深度学习与计算机视觉(PB-09)-使用HDF5保存大数据集
到目前为止,我们使用的数据集都能够全部加载到内存中。对于小数据集,我们可以加载全部图像数据到内存中,进行预处理,并进行前向传播处理。然而,对于大规模数据集(比如ImageNet),我们需要创建数据生成器,每次只访问一小部分数据集(比如mini-batch),然后对batch数据进行预处理和前向传播。Keras模块很方便进行数据加载,可以使用磁盘上的原始文件路径作为训练过程的输入。你不需要将整个数...原创 2018-12-03 14:09:53 · 3389 阅读 · 2 评论 -
深度学习与计算机视觉(PB-08)-应用深度学习最佳途径
在Starter Bundle第10章中,我们提到了训练一个神经网络模型所需要的四个因素,即:数据集loss函数神经网络结构优化算法有了这四个因素,实际上我们是可以训练任何深度学习模型,但是,我们如何训练得到一个最优的深度学习模型?如果效果达不到理想效果,又该如何去优化模型?在深度学习实践中,你会发现,深度学习最难的部分其实是如何根据模型的准确性/损失曲线来进行下一步操作。如果模型...原创 2018-12-03 14:09:14 · 300 阅读 · 0 评论 -
深度学习与计算机视觉(PB-07)-优化算法
在之前的章节中,我们只研究和使用了随机梯度下降法(SGD)来优化网络模型,但是,在深度学习中还有其他高级的优化算法,这些高级方法可以加速训练过程或者提高准确度:在可接受的准确度下,高级算法可以减少训练时间(比如更少的迭代次数epochs)。模型可以更好的适应其他超参数,而不仅仅是学习率。理想情况下,可以获得比SGD更高的分类准确度。随着深度学习的不断发展,新的优化技术层出不穷,每一种新...原创 2018-12-03 14:08:49 · 887 阅读 · 0 评论 -
深度学习与计算机视觉(PB-06)-模型集成
在本章中,我们将探讨集成方法的概念——多个分类器合并成一个大型元分类器的过程。将多个模型的平均结果最为最终结果,可以比随机的单一模型获得更高的性能(比如准确度)。事实上,几乎你所看到的在ImageNet数据挑战赛上获得最佳的结果都是通过集成多个卷积神经网络结果得到的。首先,我们将讨论下Jensen不等式,这是集成方法的关键。然后,我们相互独立地训练多个CNN模型,并对每个CNN模型进行评估,最后...原创 2018-12-03 14:08:02 · 907 阅读 · 3 评论 -
深度学习与计算机视觉(PB-05)-网络微调
在第3节中,我们学习了如何将预训练好的卷积神经网络作为特征提取器。通过加载预训练好的模型,可以提取指定层的输出作为特征向量,并将特征向量保存到磁盘。有了特征向量之后,我们就可以在特征向量上训练传统的机器学习算法(比如在第3节中我们使用的逻辑回归模型)。当然对于特征向量,我们也可以使用手工提取特征方法,比如SIFT[15],HOG[14],LBPs[16]等。一般来说,在计算机视觉任务中,深度学习...原创 2018-12-03 14:07:32 · 1149 阅读 · 0 评论 -
深度学习与计算机视觉(PB-04)-rank-N准确度
在我们深入讨论高级深度学习主题(如迁移学习)之前,先来了解下rank-1、rank-5和rank-N准确度的概念。当你在阅读深度学习相关文献时,尤其是关于计算机视觉和图像分类,你很可能会看到关于rank-N 准确度。例如,几乎所有在ImageNet数据集上验证的机器学习方法的论文都给出了rank-1和rank-5准确度 (我们将在本章后面解释为什么需要使用rank-1和rank-5准确度).ra...原创 2018-12-03 14:07:05 · 1966 阅读 · 0 评论 -
深度学习与计算机视觉(PB-03)-特征提取
从这节开始,我们将讨论关于迁移学习的内容,即用预先训练好的模型(往往是在大型数据上训练得到的)对新的数据进行学习.首先,从传统的机器学习场景出发,即考虑两个分类任务:第一个任务是训练一个卷积神经网络来识别图像中的狗和猫。第二个任务是训练一个卷积神经网络识别三种不同的熊,即灰熊、北极熊和大熊猫。正常情况下,当我们使用机器学习、神经网络和深度学习等进行实践时,我们会将这两个任务视为...原创 2018-12-03 13:46:54 · 3587 阅读 · 0 评论 -
深度学习与计算机视觉(PB-02)-数据增强
在深度学习实践中,当训练数据量少时,可能会出现过拟合问题。根据Goodfellow等人的观点,我们对学习算法的任何修改的目的都是为了减小泛化误差,而不是训练误差。我们已经在sb[后续补充]中提到了不同类型的正则化手段来防止模型的过拟合,然而,这些都是针对参数的正则化形式,往往要求我们修改loss函数。事实上,还有其他方式防止模型过拟合,比如:1.修改网络本身架构2.增加数据Dropou...原创 2018-12-03 13:46:09 · 2625 阅读 · 0 评论