机器学习-神经网络

神经网络中的网络层

神经网络的预测:在这里插入图片描述每一层都输入一个数字向量,并对其应用逻辑回归单元,然后计算出另一个数字向量,从一层到下一层,直到得到最终的输出层的计算结果。并可以将阈值设为0.5,得出最终的预测。
更复杂的神经网络:
在这里插入图片描述
这个网络有4层,第0层是输入层,1、2、3是隐藏层,4层是输出层。
a j [ l ] = g ( w ⃗ j [ l ] ⋅ a ⃗ [ l − 1 ] + b j l [ l ] ) a_{j}^{[l]}=g\left(\vec{w}_{j}^{[l]} \cdot \vec{a}^{[l-1]}+b_{j l}^{[l]}\right) aj[l]=g(w j[l]a [l1]+bjl[l])
g是激活函数(activation function),因为g输出这个激活值。激活函数就是输出激活值的函数。

sigmoid激活函数的替代方案

1.ReLU激活函数:
在这里插入图片描述
2.线性激活函数:
g(z)=z
在这里插入图片描述

如何选择激活函数

我们可以在神经网络中的不同神经元中选择不同的激活函数,但在考虑激活函数对于输出层的预测标签时,总是会有一个相当自然的选择。如果正在处理的是一个二分类问题,那么在输出层中使用sigmiod激活函数;如果正在处理回归问题,那么将会用到不同的激活函数,如线性激活函数。最后如果输出值只能取非负值,那么最自然的选择将是ReLU激活函数。
事实证明,ReLU激活函数是迄今为止神经网络中最常见的选择。其中一个原因是它的计算速度要快一些,效率高。更重要的一个原因是ReUL激活函数的图像仅在图形的左半部分中变平,而sigmoid激活函数在图形的左右两侧都变平,如果使用梯度下降来训练神经网络将会变得很慢。所以ReUL激活函数是隐藏层中最常见的激活函数。
为什么模型需要激活函数?
如果我们在神经网络中的所有节点使用线性激活函数,那么这个大型神经网络将会变得与线性回归没有什么不同。
在这里插入图片描述
在这种情况下,这个模型等同于逻辑回归,所以这个大型神经网络没有做任何不能用逻辑回归做的事情,这就是为什么一个常见的经验法则是不要在神经网络的隐藏层中使用线性激活函数。

多分类问题:

在这里插入图片描述

Softmax回归算法

softmax回归算法是逻辑回归的推广。
逻辑回归的损失函数: loss ⁡ = − y log ⁡ a 1 − ( 1 − y ) log ⁡ ( 1 − a 1 ) \operatorname{loss}=-y \log a_{1}-(1-y) \log \left(1-a_{1}\right) loss=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值