深度学习---之softmax与交叉熵

来源:互联网 发布:化学化工的英文数据库 编辑:程序博客网 时间:2024/06/06 00:20
交叉熵到底是如何来定义损失函数的呢?首先看下面的公式:

不用完全对着上图公式看,因为我的解释没有加上log和-号,你只要看懂文字,加log和-号是一回事

q()表示神经网络的预测值

p()表示样本属于某一类(ground truth)的概率:这个是真实值,什么意思呢?

(1)就是我输入一个猫的图片,这个时候如果q(x=狗)预测这个图片为x=狗的概率是0.8,但是p()这个这个真实值,在x=狗的时候p(x=狗)=0,所以一切预测图片是其他类的结果都等于0,那么只有预测猫的概率的时候才不等于0,如下(2)

(2)q()预测这个图片为猫的概率为0.2即q(x=猫)=0.2这个时候因为输入的就是猫所以真实值p(x=猫)=1,

(3)在上面(2)的基础上,p(x=猫)×q(x=猫)=1×0.2=0.2,要使预测准确,你就必须使得q(x=猫)=1,即loss=1*1=1,所以只要训练神经网络Loss=1就可以了


原创粉丝点击