摘要:
因工作需要,构造一个用于演示的多应用的Docker镜像,记录下其中的步骤和坑。 需要依次安装Jdk、mysql、redis、nginx、6个java应用、3个react应用 1. 安装基础镜像 sudo docker pull docker.io/ubuntusudo docker run -it 阅读全文
摘要:
从tensorflow1.10 升级到1.12版本后,对依赖的CuDNN不兼容产生的问题。鉴于一直使用的是Keras,未使用新版本tensorflow的功能,故果断回退到旧版本。 方法为:pip3 install --index-url http://pypi.douban.com/simple - 阅读全文
摘要:
在深度学习中,数据短缺是我们经常面临的一个问题,虽然现在有不少公开数据集,但跟大公司掌握的海量数据集相比,数量上仍然偏少,而某些特定领域的数据采集更是非常困难。根据之前的学习可知,数据量少带来的最直接影响就是过拟合。那有没有办法在现有少量数据基础上,降低或解决过拟合问题呢? 答案是有的,就是数据增强 阅读全文
摘要:
一、如何在使用docker时去掉sudo 1、添加账户 $ sudo groupadd docker 2、授权给docker账户 sudo gpasswd -a yourname docker 3、重启docker sudo service docker restart 4、退出shell 重新进入 阅读全文
摘要:
Global Average Pooling(简称GAP,全局池化层)技术最早提出是在这篇论文(第3.2节)中,被认为是可以替代全连接层的一种新技术。在keras发布的经典模型中,可以看到不少模型甚至抛弃了全连接层,转而使用GAP,而在支持迁移学习方面,各个模型几乎都支持使用Global Avera 阅读全文
摘要:
Dropout是过去几年非常流行的正则化技术,可有效防止过拟合的发生。但从深度学习的发展趋势看,Batch Normalizaton(简称BN)正在逐步取代Dropout技术,特别是在卷积层。本文将首先引入Dropout的原理和实现,然后观察现代深度模型Dropout的使用情况,并与BN进行实验比对 阅读全文
摘要:
当我们费劲周章不断调参来训练模型时,不可避免地会思考一系列问题,模型好坏的评判标准是什么?改善模型的依据何在?何时停止训练为佳? 要解决上述问题,我们需要引入偏差和方差这两个概念,理解他们很重要,也是后续了解过拟合、正则化、提早终止训练、数据增强等概念和方法的前提。 一、概念定义 偏差(bias): 阅读全文
摘要:
Batch Normalization(批量标准化,简称BN)是近些年来深度学习优化中一个重要的手段。BN能带来如下优点: 加速训练过程; 可以使用较大的学习率; 允许在深层网络中使用sigmoid这种易导致梯度消失的激活函数; 具有轻微地正则化效果,以此可以降低dropout的使用。 但为什么BN 阅读全文
摘要:
深层网络需要一个优良的权重初始化方案,目的是降低发生梯度爆炸和梯度消失的风险。先解释下梯度爆炸和梯度消失的原因,假设我们有如下前向传播路径: a1 = w1x + b1 z1 = σ(a1) a2 = w2z1 + b2 z2 = σ(a2) ... an = wnzn-1 + bn zn = σ( 阅读全文
摘要:
在统计学中,损失函数是一种衡量损失和错误(这种损失与“错误地”估计有关,如费用或者设备的损失)程度的函数。假设某样本的实际输出为a,而预计的输出为y,则y与a之间存在偏差,深度学习的目的即是通过不断地训练迭代,使得a越来越接近y,即 a - y →0,而训练的本质就是寻找损失函数最小值的过程。 常见 阅读全文