首页 > 编程知识 正文

衣服上的标签c类什么意思,根据类名获取标签

时间:2023-05-05 06:32:52 阅读:26145 作者:4817

使用softmax和sigmoid激活函数来做多类分类和多标签分类

在实际应用中,softmax用于多类分类,而sigmoid用于多标签分类较为普遍。 在图像处理中,网络模型提取图像特征的机制基本相同,但只有按任务变更了全连接层的输出层。 本节介绍如何使用softmax和sigmoid完成相应的分类任务。

softmax激活函数应用于多类分类

假设神经网络模型最后一层的全连通层输出一维向量logits=[1、2、3、4、5、6、7、8、9、10],这里假设总类别数为10,使用softmax分类器进行多

通过tensorflow实现:

TF.argmax(TF.softmax ) logits ) )首先在softmax中将logits转换为概率分布,其次将概率值最大的作为样本的分类。 softmax的主要作用其实是在计算交叉熵方面,把logits转换成一个概率分布再计算,把概率分布中最大的作为最终的分类结果。 这就是将softmax激活函数应用于多分类。

categorical_crossentropy损失函数

sigmoid一般用于二分类,而不是多类分类。 它将标量数字在[ 0,1 ]之间转换,如果概率阈值[通常大于0.5,则认为它属于某个类,否则不属于某个类。 该属性适用于多标签分类,多标签分类多使用sigmoid激活函数应用于多标签分类。 标量数字在[ 0,1 ]之间的转换,如果大于概率阈值(通常为0.5 ),则被认为属于某个类别。 本质上,这是对logits中的每个分类计算的结果分别作用一个sigmoid分类器,分别判定样本是否属于某一类别的相同假说。 神经网络模型的最后一个输出是这样的向量logits=[1、2、3、4、5、6、7、8、9、10],并且是神经网络的最终所有连接的输出。 这里假设共有10个分类。 路径:

TF.sigmoid(logits ) sigmoid应该将logits中的每个数字转换为[ 0,1 ]之间的概率值。 假设结果为[ 0.01、0.05、0.4、0.6、0.3、0.1、0.5、0.4、0.06、0.06 ],即一个样本具有多个标签。

现在,如果将sigmoid激活函数应用于多标签分类,则强调必须将损耗函数设置为binary_crossentropy。

参考博客:

3359 blog.csdn.net/legalhighhigh/article/details/81409551

3359 blog.csdn.net/uncle _ ll/article/details/82778750

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。