卷积神经网络
1.BP算法
BP算法是由学习过程由信号的正向传播与误差的反向传播两个过程组成。由于多层前馈网络的训练经常采用误差反向传播算法,人们也常把将多层前馈网络直接称为BP网络。
发展:LeCun利用BP算法训练LeNet5网络,标志卷积神经网络CNN真正面世
2.卷积网络构成
卷积神经网络由多个层级组成,包括输入层、卷积层、激活层、池化层和全连接层。
1.输入层:接收原始输入数据,通常是图像或其他形式的二维数据。
2.卷积层:应用一系列的卷积核(单个卷积核是二维矩阵)对输入数据进行卷积操作。每个卷积核都可以学习不同的特征,例如边缘、纹理等。通过卷积操作,输出新的特征图。
3.激活层:在卷积层之后,会应用一个激活函数(如ReLU)对特征图进行激活。这样可以引入非线性性质,增强网络的表达能力。
4.池化层:通过降采样操作,减小特征图的空间尺寸。常用的池化操作有最大池化和平均池化。池化可以减少参数数量,提高计算效率,并具有一定的平移不变性。
5.全连接层:将池化层得到的特征图转换为一维向量,并连接到一个全连接层中。全连接层的神经元与前一层的所有神经元相连,通过学习权重来进行分类或回归任务。
3.误差
在卷积神经网络(CNN)中,误差的计算是通过损失函数(代价函数)来完成的。常见的损失函数有均方误差(MSE)、交叉熵损失等。
计算误差:
1.输入数据通过网络的各层(卷积层、激活层、池化层、全连接层)进行前向传播,最终得到输出预测值
2.根据具体任务选择合适的损失函数。例如,对于分类任务,通常使用交叉熵损失;对于回归任务,通常使用均方误差。
3.计算损失:损失函数将网络的输出预测值与真实标签进行比较,并计算出一个标量值,表示预测值与真实值之间的差异
4.反向传播:通过反向传播算法计算损失函数相对于输出层的梯度;将梯度通过链式法则逐层传递,从输出层逐层向输入层计算每一层的梯度
5.调整权重:使用优化算法(如随机梯度下降SGD、Adam等)更新网络的权重,以最小化损失函数。
意义:卷积神经网络可以不断减少预测误差,提高模型的准确性