1. 激活函数

sigmoid激活函数:除了输出层是一个二分类问题基本不会用它。
tanh激活函数:tanh是非常优秀的,几乎适合所有场合。
ReLu激活函数:最常用的默认函数,如果不确定用哪个激活函数,就使用ReLu或者Leaky ReLu (max(0.01z,z),参数自行选择)
Relu: z在ReLu的梯度一半都是0,但是,有足够的隐藏层使得z值大于0,所以对大多数的训练数据来说学习过程仍然可以很快。
在我们的简明案例中,事实证明如果你在隐藏层用线性激活函数,在输出层用sigmoid函数,那么这个模型的复杂度和没有任何隐藏层的标准Logistic回归是一样的,如果你愿意的话,可以证明一下。
2. 激活函数的导数
-
sigmoid


-
tanh


3. backpropagation 推导(待解决)
4. 参数初始化
例如:
w = np.random.randn(n0, n1) x 0.01
b = np.zeros(n0,1)
w 初值不为零,因为零值使隐藏层中的单元对称
w 初值接近零,z = w'x+b, 过大的w值使输出值位于激活函数梯度(sigmoid, tanh) 很小处。
网友评论