分类: IT业界
2017-01-04 17:24:33
初次接触深度学习时,大家可能会感到无从下手。这里有一些有关深度学习的技巧和要点可供大家参考。
在本篇文章,我们将介绍一些深度学习中的常见概念,以帮助大家快速了解这个神奇的领域。
梯度可视化。图中红色箭头为蓝色函数对应的梯度。
梯度是一个函数的偏导数,以多个向量作为输入,并输出一个单一的数值(即神经网络中的代价函数)。当我们需要使函数输出增加时,梯度能够告诉我们输入变量在图中的应变化的方向。我们在深度学习中应用梯度,并使用梯度的反方向来降低我们算法的损失。
也称为反向传播,是指在网络中正向传播输入数据之后,反向传播误差并根据误差调整网络权重的过程。这种方法在实际应用时使用了微积分中的链式法则。
用于将网络权重映射至[0, 1]区间的激活函数。该函数在图中的曲线类似一个字母'S',函数因此得名,在希腊语中sigma表示字母S。该函数也被称为logistic函数。
Geoffrey Hinton定义的ReLU计算公式
sigmoid函数的值域限制在[0, 1]区间内,而ReLU的值域为0到正无穷。这意味着,sigmoid更适合logistic回归,而ReLU能够更好地表示正数输出。ReLU不会产生梯度消失问题。
Tanh函数
Tanh函数是一个可将你的网络权重初始化为[-1, 1]区间内实数的函数。假设你的数据已经规范化,那么我们会得到一个更大的梯度:因为数据以0为中心分布,函数的导数更高。为了验证这点,我们计算tanh函数的导数,并观察函数在[0, 1]区间内的输入。tanh函数的值域为[-1, 1]区间,而sigmoid函数的值域为[0, 1]区间。这也避免了在梯度中的偏差。
通常应用于递归神经网络,也可扩展至其他场景使用,其充当小型"记忆单元",能够保持输入数据间的状态,用于模型训练,同时,也可解决梯度消失问题,梯度消失问题会导致递归神经网络在进行大约7次迭代后失去先前输入数据的上下文。