Logistic Loss的简单讨论

首先应该知道Logistic Loss和Crossing Entropy Loss本质上是一回事。

所以所谓的SoftMaxLoss就是一般二分类LogisitcLoss的推广。之所以在网络中采取这种损失,而不是均方误差的原因是LogisticLoss更易于求导:采用交叉熵做损失要比均方误差更合理。详细解释见:https://zhuanlan.zhihu.com/p/61944055

也可以统一写成

Loss=ln(1+exp(-(2*y_i-1)*v_i)))

 

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

上面的推导都是基于Logistic Loss和Crossing Entropy Lossing本质一样的前提讨论的。

其实Logistic Loss和最大似然也是一样的出发点。

我们假设x为数据输入。SoftMax层的输入为(/theta_1^{T}x,/theta_2^{T}x,...,/theta_K^{T}x)^T,即假设x的分类可能有K种。

那么SoftMax层的输出就是(p_1,p_2,...,p_K),其中 p_i=exp(/theta_i^{T}x)/(/sigma_{j=1}^K{expexp(/theta_j^{T}x)}), i=1,...,K

这里p_i=p(x;/theta_i)就是数据x属于第i类的概率,也就是x的似然,亦即p_i=p(x;/theta_i)=L(/theta_i;x)

我们假设x的groundtruth为第c类,所以我们训练的目标就使似然函数L_c=L(/theta_c;x)最大。

当时实际上我们都是求对数似然函数,亦即使得Loss=-log(L(/theta_c;x))最小。

即Loss=-log(p_c)。这个就和SoftMax的损失完全一致了。

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++2018.5.15++++++++++++++++++++

 

posted on 2018-05-12 10:43  博闻强记2010  阅读(8371)  评论(0编辑  收藏  举报

导航