卷积神经网络是一种深度学习模型,在图像识别,语音识别,自然语言处理等领域取得了巨大的成功。
关键术语包括:
【卷积层(convolution layer)】
卷积层是CNN的基本组成单元,它通过卷积运算来提取图像的特征。 卷积运算是将一个卷积核滑动在输入图像上,并根据卷积核的值计算输出。
【池化层(pooling layer)】
池化层用于降低图像的维度,并减少对输入数据的依赖。 池化运算是将输入图像划分为若干个区域,然后对每个区域的值进行最大值,平均值或其他统计运算。
【激活函数(activation function)】
激活函数用于增加模型的非线性,从而提够模型的表达能力。 常用的激活函数包括Sigmoid, ReLU, Tanh等。
【全连接层(fully connected layer)】
全连接层是CNN的输出层,它用于对输入数据进行分类或回归。 全连接层的输入和输出都是向量。
【特征提取(feature extraction)】
CNN通过卷积层和池化层来提取图像的特征。特征提取是CNN的核心任务。
【数据增强(data augmentation)】
数据增强是一种提高模型幻化能力的技术。 数据增强通过对原始数据的一些变换,来生成新的训练数据。
【正则化(regularization)】
正则化是一种用于防止模型过拟合的技术。 正则化通过对模型参数施加约束,来降低模型的复杂度。
【stride】
卷积原始的步长,表示卷积核在输入图像上滑动的步长。 stride越大,卷积层的感受野越大,但图像的维度也会越小。
【epoch】
训练模式的完整循环,表示从头到尾训练一次数据集的循环次数。 epoch越多,模型的性能也越好,但训练时间也会越长。
【padding】
在输入图像的周围添加一些像素,以保持输出图像的尺寸不变。
【dropout】
dropout是一种正则化技术,它在训练过程中随机丢弃一些神经元。 dropout可以防止模型过拟合。
【batch size】
batch size是指一次训练中,使用的数据量, batch size越大,训练效率越高,但训练时间也会越长。
【loss】
loss 是指模型预测值与真实值之间的差距,它用来衡量模型的性能。 loss 越小,模型的性能就越好。 在卷积神经网络的训练过程中,我们需要不断地调整模型的参数,以使 loss 达到最小值。 这是一个反向传播(backpropagation)的过程,它通过计算 loss 的梯度,来更新模型的参数。
常用的 loss 函数包括:
交叉熵损失(cross entropy loss):交叉熵损失是图像分类任务中常用的 loss 函数。它计算预测概率分布与真实概率分布之间的差异。
均方误差损失(mean squared error loss):均方误差损失是回归任务中常用的 loss 函数。它计算预测值与真实值之间的差异。
绝对误差损失(absolute error loss):绝对误差损失是回归任务中常用的 loss 函数。它计算预测值与真实值之间的绝对差异。
在选择 loss 函数时,需要根据实际应用场景来进行选择。例如,在图像分类任务中,我们通常使用交叉熵损失。在回归任务中,我们通常使用均方误差损失或绝对误差损失。