softmax
softmax是一个全连接层,功能是将卷积神经网络计算后的多个神经元输出,映射到(0,1)区间,给出每种分类的概率情况。下面主要记录全连接层到损失层是如何计算的。
![fbf67a7cd28b316fc27eb71e27238ef1.png](https://img-blog.csdnimg.cn/img_convert/fbf67a7cd28b316fc27eb71e27238ef1.png)
- 图的等号左边为全连接,w为权值,x是全连接层的输入(卷积运算激活池化后的特征向量,不一定为N*1,可以为S*P,这里只不过为了便于理解计算,把向量拉直为SP*1,即N*1,N=SP)。假设全连接层前面连接的是一个卷积层,这个卷积层的输出是100个特征(也就是我们常说的feature map的channel为100),每个特征的大小是4*4,那么在将这些特征输入给全连接层之前会将这些特征flat成N*1的向量(这个时候N就是100*4*4=1600。
- 再看W,W是T*N的矩阵,其中N是由输入决定的,T是由网络输出的类别决定的,比如输出为10个类,则T=10。
- W和x运算后得到一个T*1的向量,向量大小没有限制。
- 下一步就是softmax,softmax作用是将T个输入映射为概率,刚才打比方说有10个类别,则每个输出值就是每种类别的概率,显然概率之和为1。分母为所有情况之和,分子为各种单一情况运算。
- 终于转化为概率了,那接下