神经网络的基本组成元素
一个神经元:
单层神经网络:
多层神经网络:(前向计算)
为什么要使用激活函数
如果不使用激活函数,每层只对上层的输入进行线性变换,实际这些线性变换可以归为一层即可。如果神经网络中只存在这样的线性运算的话,那么多层的神经网络其实可以被转换为单层的神经网络,即多层的神经网络和单层的神经网络实际表达的能力是一样的。因此引入非线性的激活函数,这样防止多层的神经网络塌缩成单一的神经网络。运用它也可以增加表达能力来拟合更加复杂的函数。
常见激活函数
输出层
输出层具有多种形态,它取决于你想让模型去输出什么样的数据。
如何训练神经网络
想要训练神经网络,首先要设定一个目标,然后冲着目标对神经网络进行调整。
例1:回归问题,降低损失函数的值:
例2:文本分类任务:最小化交叉熵
交叉熵具体计算过程:
最小化损失函数方法:在神经网络中通常采用梯度下降法
反向传播: