神经网络概览
神经网络表示
计算神经网络的输出
多个例子中的向量化
向量化实现的解释
激活函数
吴老师只用ReLU(Rectified linear unit)的原因是,ReLU和带泄露的ReLU好处在于对于很多z空间,激活函数的导数,激活函数的斜率和0差很远。所以在实践中使用ReLU激活函数,神经网络的学习速度通常会快得多,比使用tanh或sigmoid函数快得多,主要原因在于Relu在函数斜率接近0时,不会减慢学习速度。虽然ReLU在斜率小于0时会等于0,但是有足够多的隐藏单元,另z大于0,所以对大多数训练样本来说还是很快的。
leaky ReLU中a=max(0.01*z,z),至于0.01不是确定的,但是最常用的,如果有更合适的,可以换成适合自己的。
为什么需要非线性激活函数
其实如果没有非线性激活函数,神经网络就失去了意义,因为神经网络最初就是模仿人的神经元。
激活函数的导数
神经网络的梯度下降法
直观理解反向传播
随机初始化权重
可以通过归纳法证明,如果将W所有值初始化为0,因为两个隐藏单元一开始就在做同样的计算,两个隐藏单元对输出单元的影响也一样大,那么在一次迭代之后,同样的对称性依然存在,两个隐藏单位依然是对称的。无论你训练神经网络多长时间,两个隐藏单元依然计算完全一样的函数。在这种情况下,多个隐藏单元毫无意义。