笔记-softmax、softmax loss

为何须要softmax?
复制代码

咱们知道max,假如说我有两个数,a和b,而且a>b,若是取max,那么就直接取a,没有第二种可能数组

但有的时候我不想这样,由于这样会形成分值小的没法取到。因此我但愿分值大的那一项常常取到,分值小的那一项也偶尔能够取到,那么我用softmax就能够了 如今仍是a和b,a>b,若是咱们取按照softmax来计算取a和b的几率,那a的softmax值大于b的,因此a会常常取到,而b也会偶尔取到,几率跟它们原本的大小有关。cors

几率要求值必须在0~1之间,而且全部的几率加起来应该等于1;故能够用下面的公式表示
复制代码

假设咱们有一个数组,V,Vi表示V中的第i个元素,那么这个元素的Softmax值就是 spa

也就是说,是该元素的指数,与全部元素指数和的比值


弄懂了softmax,就要来讲说softmax loss了。 那softmax loss是什么意思呢?以下:
复制代码

首先L是损失。Sj是softmax的输出向量S的第j个值,前面已经介绍过了,表示的是这个样本属于第j个类别的几率。yj前面有个求和符号,j的范围也是1到类别数T,所以y是一个1*T的向量,里面的T个值,并且只有1个值是1,其余T-1个值都是0。那么哪一个位置的值是1呢?答案是真实标签对应的位置的那个值是1,其余都是0。因此这个公式其实有一个更简单的形式:

固然此时要限定j是指向当前样本的真实标签。

理清了softmax loss,就能够来看看cross entropy了。 
corss entropy是交叉熵的意思,它的公式以下:
复制代码

当cross entropy的输入P是softmax的输出时,cross entropy等于softmax loss。Pj是输入的几率向量P的第j个值,因此若是你的几率是经过softmax公式获得的,那么cross entropy就是softmax loss。
相关文章
相关标签/搜索