关于softmax在CV多通道中的理解

1、采用分类任务时,我们通常会采用逻辑回归算法,最关键的步骤就是将线性模型输出的实数域映射到[0, 1]表示概率分布的有效实数空间,其中Sigmoid函数刚好具有这样的功能。但是这通常只适用于二分类问题。要多多分类任务各个输出节点的输出值范围映射到[0, 1],通常可以采用softmax。

2、所谓的softmax主要分类两个部分解答,soft也就是软的意思,与之相对的就是hard,通常可以采用np.max()等方法实现,这个方法就是获取的最大值。而我们在多分类任务中,更期望得到这个类的置信度(个人理解,就是一个可行的范围,并不局限于一个值)。(懒得敲公式了,直接cc+cv了)

3、我们在DL分类任务中经常用到这个函数。我做了一下实现。

import torch
import torch.nn.functional as F
image = torch.randn((3,3,3))#这里可以理解为一个3通道的3x3图像
softmax = F.softmax(image, dim=0) #在第一个维度进行计算,可以得到每个通到的softmax结果

 

softmax之前
softmax之后

 

 

posted @ 2022-10-30 20:09  九叶草  阅读(235)  评论(0编辑  收藏  举报