CNN学习笔记:目标函数
分类任务中的目标函数
目标函数,亦称损失函数或代价函数,是整个网络模型的指挥棒,通过样本的预测结果与真实标记产生的误差来反向传播指导网络参数学习和表示学习。
假设某分类任务共N个训练样本,针对网络最后分类层第i个样本的输入特征为xi,其对应的真实标记为yi∈{1,2,...,C},另h=(h1,h2,...,hC)⊤为网络的最终输出,即样本i的预测结果,其中C为分类任务类别数。
交叉熵损失函数
交叉熵损失函数又称为Softmax损失函数,是目前卷积神经网络中最常用的分类目标函数,softmax用于多分类过程中,它将多个神经元的输出,映射到(0,1)区间内,可以看成概率来理解,从而来进行多分类!
其形式为:
它能将一个含任意实数的K维向量 z “压缩”到另一个K维实向量 σ ( z ) 中,使得每一个元素的范围都在 ( 0 , 1 ) 之间,并且所有元素的和为1。
例如:输入向量 [ 1 , 2 , 3 , 4 , 1 , 2 , 3 ] 对应的Softmax函数的值为 [ 0.024 , 0.064 , 0.175 , 0.475 , 0.024 , 0.064 , 0.175 。输出向量中拥有最大权重的项对应着输入向量中的最大值“4”。这也显示了这个函数通常的意义:
对向量进行归一化,凸显其中最大的值并抑制远低于最大值的其他分量。
更多:关于交叉熵的推导及理解,可以查看https://www.zhihu.com/question/23765351。