深度学习
dqhl1990
这个作者很懒,什么都没留下…
展开
-
Deep learning II - III Batch Normalization - Normalizing activation in a network 激励函数输出归一化
Normalizing activation in a network 激励函数输出归一化 之前我们提到过将输入归一化,能够使学习加速;但是,由于深度神经网络的层数较多,每一层的输出又会变成下一层的输入,因此对于每一层z[l]z[l]z^{[l]}(常用,应作为default)或者a[l]a[l]a^{[l]}的输出进行归一化,同样能够加速学习。如何计算Batch Norm...原创 2018-06-21 08:17:31 · 325 阅读 · 0 评论 -
Deep learning I - III Shallow Neural Network - Backpropagation intuition反向传播算法启发
Backpropagation intuition简单的2层浅神经网络,第一层的activation function为tanh(z)tanh(z)tanh(z),第二层的activation function为sigmoid(z)sigmoid(z)sigmoid(z)。使用计算流图(computational graphs)表示如下图:...转载 2018-06-19 17:53:45 · 259 阅读 · 0 评论 -
Deep learning I - III Shallow Neural Network - Derivatives of activation functions激励函数导数推导
Derivatives of activation functions 激励函数的导数Derivatives of Sigmodsigmod=g(z)=11+e−z(1)(1)sigmod=g(z)=11+e−zsigmod = g(z) = \frac{1}{1+e^{-z}}\tag{1} g′(z)=ddzg(z)=d(1+e−z)−1d(1+e−z)∗d(1+e−z)d(...转载 2018-06-15 16:15:16 · 233 阅读 · 0 评论 -
Deep learning I - IV Deep neural network - Forward and backward propagation正向传播和反向传播模块化
Forward and backward propagation可以将正向传播和反向传播模块化。只需构建两个模块程序,即可完成模型的训练。 正向传播输入为A[l-1],输出为A[l],Cache为Z[l],W[l]和b[l] (W[l]和b[l]为了程序开发方便在这里作为cache存储) 反向传播输入为dA[l],输出为dA[l-1],dW[l],db[l] ...转载 2018-06-15 14:41:05 · 482 阅读 · 0 评论 -
Deep learning I - IV Deep Neural Network - why deep representations?为什么“深度”对神经网络这么重要?
Why deep representations? 为啥深度能这么有理? 如图一,通过一层一层的layers,deep learning能够通过初步的细节,一步一步提升其对数据的理解和表达如图二,一组数据的逻辑关系,在使用多层layers表达时所需要少量的Neuron,但是要在一层中表达是,需要的Neuron就会指数似的增加...转载 2018-06-15 14:14:32 · 481 阅读 · 0 评论 -
Deep learning I - III Shallow Neural Network - Random Initialization深度学习随机初始化的必要性
Random InitializationReference:Thanks for Deep Learning from Coursera, especially Andrew Ng’s team 1. 对于linear regression,将参数都初始化为0是可取的,随着梯度下降,参数不断更新至收敛 2. 对于Neural Network,将参数都初始化为0会造成相应l...转载 2018-06-15 13:59:13 · 242 阅读 · 0 评论 -
Deep learning I - III Shallow Neural Network - Activation functions深度学习常用激励函数
Activation functions 激励函数Reference:Deep Learning from Coursera, especially Andrew Ng’s team 1. 从前,使用sigmod function作为激励函数是常用的选择 2. 目前,用tanh function代替sigmod function是很好的选择 3. 但是,作为二分类网络最后的一层...转载 2018-06-15 11:19:11 · 201 阅读 · 0 评论 -
Deep learning III - I Machine Learning Strategy - train development and test sets 训练集、开发集和测试集
train development and test sets 训练集、开发集和测试集size of train development and test sets 待补充转载 2018-06-27 16:06:14 · 271 阅读 · 0 评论 -
Deep learning III - I Machine Learning Strategy - improving your model performance 如何减少可变避免的变差和方差
improving your model performance 如何减少可变避免的变差和方差转载 2018-06-27 16:12:16 · 201 阅读 · 0 评论 -
Deep learning III - II Machine Learning Strategy 2 - Mismatched training and dev/test set
Deep learning III - II Machine Learning Strategy 2 - Mismatched training and dev/test set 如何处理不相称的训练和测试集深度学习需要大量的数据来供其训练学习当你得到的金标准数据数量较少时(如10,000份),但你可以得到类似的大量数据数据(如200,000份),这时不应该将两部分数据shuffle...转载 2018-06-27 16:36:36 · 387 阅读 · 0 评论 -
Deep learning III - II Machine Learning Strategy 2 - Bias and Variance with mismatched data distribu
Bias and Variance with mismatched data distribution 不相称数据分布的偏差和方差应对在mismatched data distribution情况下的模型评估,构建了development-train set作为中间评估手段。各个数据集之间的error反应的模型的问题如下图所示 举个例子: 如何消除由于data misma...转载 2018-06-27 16:53:56 · 317 阅读 · 0 评论 -
Deep learning III - II Machine Learning Strategy 2 - Transfer Learning 转换学习
Transfer Learning 转换学习当你有类似的两个工作(如猫咪识别和狗狗识别),你已经有一个很不错的猫咪识别网络了,但是狗狗识别的数据不太多,网络也还没有搭建。这时候Transfer learning(pre-training and fine tuning )就要发挥用处了。通过更换已有的猫咪网络的最后一层或者几层,用狗狗的数据重新训练模型,将能够得到不错的结果(保留了一些...转载 2018-06-27 17:08:00 · 395 阅读 · 0 评论 -
Deep learning III - II Machine Learning Strategy 2 - Multi-task Learning 多任务学习
Multi-task Learning 多任务学习多任务学习和多分类学习不同,从其cost function就能看出。当训练的一组任务都能够共享一些低等级特征时当对于每个任务的数据都很相似时(从一幅图像中识别不同的东西,如行人、信号灯、车辆等等)当能训练足够大的神经网络时 ...转载 2018-06-27 17:34:43 · 265 阅读 · 0 评论 -
Deep learning II - I Practical aspects of deep learning - Regularizing your neural network 神经网络范数正则化
Regularizing your neural network 神经网络正则化Logistic regression regularization先用简单的逻辑回归正则化作为例子,因为神经网络的参数WWW是2维的。无正则 J(w,b)=1m∑i=1mL(y^(i)−y(i))J(w,b)=1m∑i=1mL(y^(i)−y(i))J(w,b) = \frac{1}{m} \...转载 2018-06-20 10:01:48 · 214 阅读 · 0 评论 -
Deep learning II - I Practical aspects of deep learning - 正则化如何较少过拟合
How regularization reduces overfitting?解释 1 通过regularization, 使得神经网络各个层级的参数WWW都更小更趋近于零,从而使得一个复杂的神经网络变得更像一个简单的神经网络(当参数真为零是,就是简单的神经网络了),从而减小过拟合。 解释 2 以tanhtanh\tanh激励函数为例,当w[l]w[l]w^{[l]}较小时,则z[l...转载 2018-06-20 10:16:09 · 124 阅读 · 0 评论 -
Deep learning II - I Practical aspects of deep learning - Dropout regularization 随机失活正则化
Dropout regularization 随机失活正则化在训练神经网络时,随机在每层选择一定数量的neuron关闭,从而达到减小过拟合的目的。看起来很疯狂,但是很有效。 1. 对应每一层生成以个mask d[3]d[3]d^{[3]} 2. 用mask与该层的neurons a[3]a[3]a^{[3]}覆盖,dropout一些neuron 3. 剩余的neur...转载 2018-06-20 10:43:13 · 258 阅读 · 0 评论 -
Deep learning II - III Hyperparameter tuning - Hyperparameter tuning process 如何调整超参数以及范围选择
Hyperparameter tuning process调整步骤有哪些超参数需要调(红色最优先,黄色次之,紫色随后) 在调谐时,不要用grid;而是要随机选择参数,因为你并不知道什么参数会更重要 由粗到细。 范围选择对于n[l],#layersn[l],#layersn^{[l]}, \# layers等参数,使用random sampling unifo...转载 2018-06-21 08:15:35 · 944 阅读 · 0 评论 -
Deep learning II - II Optimization algorithms - learning rate decay 学习速率衰减
learning rate decay 学习速率衰减对于mini-batch gradient descent,其梯度下降可能会围绕最优点附近徘徊,但是由于learning rate不变,可能不会进一步靠近最优点(蓝色路径)如果learning rate会随着学习的深入不断衰减,那么上述情况会得到改善,最终的结果和更加靠近最优点(绿色路径) 方法 一 1 epoc...转载 2018-06-21 08:13:27 · 302 阅读 · 0 评论 -
Deep learning II - II Optimization algorithms - Adam (Adaptive Moment Estimation)自适应矩估计
Adam optimization algorithms将gradient descent with momentum和RMSprop相结合的算法,具有更好的表现效果和下降速度。 Hyperparameters 选择建议如下转载 2018-06-21 08:12:20 · 1265 阅读 · 0 评论 -
Deep learning II - II Optimization algorithms - RMSprop (Root Mean Square prop)均方根传递
RMSprop相较于gradient descent with momentum,RMSprop的思想是,对于梯度震动较大的项,在下降时,减小其下降速度;对于震动幅度小的项,在下降时,加速其下降速度。通过使用指数加权平均计算得到Sdw, SdbSdw, SdbS_{{\rm d}w},\ S_{{\rm d}b};使用他们来更新参数(如下图所示) Sdw...转载 2018-06-21 08:11:23 · 2760 阅读 · 0 评论 -
Deep learning II - II Optimization algorithms - Gradient descent with momentum 动量梯度下降算法
Gradient descent with momentum 动量梯度下降算法运用指数加权平均算法,计算梯度的指数加权平均,然后用这个梯度来更新权重。 当使用梯度下降时,下降路径可能会和上图蓝色路径相似,不断震荡;所以我们不能用比较大的learning_rate,以防出现如紫色路径一样的diverging。 通过使用指数加权平均,在纵坐标(以上图阐述)方向的来回震荡通过加权之后...转载 2018-06-21 08:09:49 · 481 阅读 · 0 评论 -
Deep learning II - II Optimization algorithms - Exponentially weighted averages 指数加权平均
Exponentially weighted averages 指数加权平均指数加权平均指的是通过综合当前点之前的数据和该点数据,通过调整加权值,来得到需要的值的技术。 Vt=βVt−1+(1−β)θtVt=βVt−1+(1−β)θtV_t = \beta V_{t-1} + (1-\beta)\theta_t当ββ\beta接近于1时(0.98),当前点的值VtVtV_t...转载 2018-06-20 14:06:20 · 209 阅读 · 0 评论 -
Deep learning II - II Optimization algorithms - Mini-batch gradient descent
Mini-batch gradient descent 1. 用batch gradient descent时,当数据量巨大时,向量化的实现同样很慢,并且需要处理全部数据后,gradient才会得到更新 2. 使用mini-batch gradient descent来训练时,每一个mini-batch都能时gradient得到更新(但不一定都使LL{\cal L}下降) ...转载 2018-06-20 13:20:13 · 324 阅读 · 0 评论 -
Deep learning II - I Practical aspects of deep learning - Gradient checking 梯度检查
Gradient checking 梯度检查 1. 先把参数展开成一个巨大的横向量 2. 依次计算每个向量对应的梯度 3. 检查近似的梯度和实际的梯度相差多少转载 2018-06-20 12:59:30 · 227 阅读 · 0 评论 -
Deep learning II - I Practical aspects of deep learning - Vanishing/Exploring gradients 梯度消失/爆炸
Vanishing/Exploring gradients 梯度消失/爆炸 如图所示,由于深度神经网络深度较大,当每一层的www都小于1或者都大于1时,最终的输出值会成指数级较小或上升,造成梯度消失或者爆炸,从而使得梯度下降变得困难 1. 为了不让zzz太大,当nnn越大时,www的值应该越小 2. 针对ReLUReLUReLU,初始化w[l]=np.random.randn...转载 2018-06-20 11:40:02 · 173 阅读 · 0 评论 -
Deep learning II - I Practical aspects of deep learning - Normalizing inputs 输入归一化
Normalizing inputs 输入归一化 1. 输入归一化能够加快训练速度 2. 首先,将输入减去均值 μ=1m∑i=1mx(i)μ=1m∑i=1mx(i)\mu = \frac{1}{m} \sum_{i=1}^m x^{(i)} x:=x−μx:=x−μx := x - \mu 3. 其次,方差归一化 σ2=1m∑i=1mx(i)∗∗2(∗∗meanselem...转载 2018-06-20 11:19:05 · 200 阅读 · 0 评论 -
Deep learning II - I Practical aspects of deep learning - other regularization methods 其他正则化方法
Other regularization methods 其他正则化方法Data augmentation 通过变化已有数据,来丰富数据集,通过使用更大的数据集来防止过拟合发生 Early stopping 通过观察dev set的表现,提前终止训练,从而得到不是很大的www值,从而产生类似于L2L2L_2正则化的效果 ...转载 2018-06-20 11:03:56 · 188 阅读 · 0 评论 -
Deep learning II - I Practical aspects of deep learning - Understanding dropout 理解随机失活正则化
Understanding dropout解释 1 通过dropout,每次训练都构建一个更小的神经网络,从而减小过拟合现象发生解释 2 通过dropout,每个neuron不能依赖前一层的某个特定的feature,所以不得不将权重值分散开,从而起到了shrink weights的作用,从而减小过拟合。 注意 dropout使得function JJJ 不在能用来做debug的工...转载 2018-06-20 10:50:35 · 260 阅读 · 0 评论 -
Deep learning II - III Multi-class classification - Softmax activation
Softmax activation为了从二分类扩展到多分类,在最后一层神经网络上,设置与分类种类一样多的Neurons,然后使用Softmax activation function来得到多分类的网络...转载 2018-06-27 17:53:15 · 328 阅读 · 0 评论