一般一个CNN网络主要包含卷积层,池化层,全连接层,损失层等。
卷积层与池化层在本篇中不做多理解,之后有时间再记录一下,本篇着重讲一下全连接层与损失层。
——————————————————————————————————————
全连接层:
W为全连接层的参数,X是全连接层的输入,也就是特征,经上层卷积或者池化层输出。
从图中可以看出X是NX1的向量,这是怎么得到的呢?
这个输入X就是由全连接层前面多个卷积层和池化层处理后得到的,假设全连接层前面连接的是一个卷积层,这个卷积层的num output是100,就是卷积之后输出一百张不同的特征图。每个特征的大小是4X4,那么在将这些特征输入给全连接层之前会将这些特征flat成NX1的向量,例如此时就应该是N=1600(4X4X100 )。
再来看W,W是全连接层的参数,是个TXN的矩阵,这个N和X的N对应,T表示类别数,比如你是7分类,那么T就是7。我们所说的训练一个网络,对于全连接层而言就是寻找最合适的W矩阵。
——————————————————————————————————————
Softmax层:
因此全连接层就是执行WXX得到一个TX1的向量(也就是图中的logits[TX1]),这个向量里面的每个数都没有大小限制的,也就是从负无穷大到正无穷大。然后如果你是多分类问题,一般会在全连接层后面接一个softmax层,这个softmax的输入是TX1的向量,输出也是TX1的向量(也就是图中的prob[TX1],这个向量的每个值表示这个样本属于每个类的概率),只不过输出的向量的T个值的大小范围为0到1,分别表示各个类别的概率。
softmax的表达式如下所示,

在经过softmax层输出后,得到一个TX1的向
卷积神经网络中全连接层、softmax与softmax loss理解
最新推荐文章于 2025-04-12 12:17:37 发布

最低0.47元/天 解锁文章
983

被折叠的 条评论
为什么被折叠?



