资源描述
bluer,irit胡wi1程0忒-忖共有类,令网络的输出为人,巴K,对应屋个类,,ypjyp+v,y均为0。对这个样本,交叉熵(crossentropy)损失为.,y。对某个属于p类的样本,其labeI中yp=1,直观理解为什么分类问题用交叉熵损失而不用均方误差损失?目录博客:|交叉熵损失与均方误差损失常规分类网络最后的softmax层如下图所示,传统机器学习方法以此类比,+y2)=-(yJogY+ylogy=-yplogyp=-|ogyp均方误差损失(meansquarederror,MSE)为=(y1-y1)2+(y_y)2=(1-y)2+(y2+y2+y2p1p_1p+1则m个样本的损失为丄工=m=1对比交叉熵损失与均方误差员失,只看单个样本的损失即可,下面从两个角度进行分析。损失函数弟度损失函数是网络学习的指挥棒,它引导着网络学习的方一一能让损失函数变小的参数就是好参数。所以,损失函数的选择和设计要能表达你希望模型具有的性质与倾向。对比交叉熵和均方误差损失,可以发现,两者均在y=y=1时取得最小值0,但在实践中yp只会趋近于1而不是恰好等于1,在yp1的情况下,交叉熵只与labeI类别有关,冷越趋近于1越好1_y入入入入入P均方误差不仅与yp有关,还与其他项有关,它希望丫,,yp_1,yp+1,y越平均越好,即在_1时取得最小值分类问题中,对于类别之间的相关性,我们缺乏先验。虽然我们知道,与“狗”相比,“猫”和“老虎”之间的相似度更高,但是这种关系在样本标记之初是难以量化的,所以abel都是onehot。在这个前提下,均方误差损失可能会给出错误的指示,比如猫、老虎、狗的3分类问题,label为1,0,0,在均方误差看来,预测为0.8,0.1,0.1要比0.8,0.15,0.05要好,即认为平均总比有倾向性要好,但这有悖我们的常识。而对交叉熵损失,既然类别间复杂的相似度矩阵是难以量化的,索性只能关注样本所属的类别,只要越接近于1就好,这显示是更合理的。softmax反向传播角度softmax的作用是将(-8,+8)的几个实数映射到(0,1)之间且之和为1,以获得某种概率解释。令softmax函数的输入为,输出为y对结点有,=1e不仅与有关,还与|H有关,这里仅看,则有为正确分类的概率,为0时表示分类完全错误,越接近于1表示越正确。根据链式法则,按理来讲,对与相连的权重,损失函数的偏导会含有(1-)这一因子项,=0时分类错误,但偏导为0,权重不会更新,这显然不对一一分类越错误越需要对权重进行更新。对交叉熵损失,d1d则有dddddd-=1恰好将(1)中的消掉,避免了上述情形的发生,且越接近于1,偏导越接近于0,即分类越正确越不需要更新权重,这与我们的期望相符。而对均方误差损失,ddp=2(1p)=2(p1)则有,ddddddo=-=2(1)2显然,仍会发生上面所说的情况一一=0,分类错误,但不更新权重。交叉熵都比均方误差要好。参考分类问题而言,无论从损失函数角度还是softmax反向传播角度,Processingmath:100%
展开阅读全文