关于softmax、argmax、softargmax

本文介绍了softmax、argmax和softargmax的概念及它们在深度学习中的作用。softmax用于将向量转换为概率分布,argmax用于找到最大值的索引但不可导,而softargmax作为可微的argmax替代品,常用于端到端学习中,如LIFT论文中提出的可微分非极大值抑制。
摘要由CSDN通过智能技术生成

在阅读LIFT:Learned Invariant Feature Transform一文时,文中第1节提到为了保证端到端的可微性,利用softargmax来代替传统的NMS(非极大值抑制)来挑选极值点位置。由于只了解softmax,对于softargmax不甚了解,所以记录下来。

1)softmax

输入为向量,输出为值为0-1之间的向量,和为1。在分类任务中作为概率出现在交叉熵损失函数中。

import numpy as np
data=np.array([0.1, 0.3, 0.6, 2.1 ,0.55])
np.exp(data)/np.sum(np.exp(data))          # softmax
回答: softmaxargmax是用于获取类别index的两种常用方法。softmax是一种常用的激活函数,它将输入的向量转化为概率分布,使得每个类别的概率值都在0到1之间,并且所有类别的概率之和为1。通过对softmax输出的概率分布进行argmax操作,可以得到概率最大的类别的index。这个index可以用来表示模型对于输入数据的分类结果。\[3\] 然而,softmaxargmax在某些情况下可能存在问题。首先,softmax输出的概率分布可能会过于自信,导致对于不确定的样本也给出了确定的分类结果。这可能会导致模型的过拟合和泛化能力的下降。其次,argmax操作只选择了概率最大的类别,忽略了其他类别的信息。这可能会导致模型对于类别之间的细微差别不敏感。\[2\] 为了解决这些问题,研究者提出了一种称为Soft-Argmax的方法。Soft-Argmax相当于对人工标注进行了一次软化,将原本的one-hot标注转化为概率分布。这种思想在分类任务中早有应用,被称为LabelSmoothing。Soft-Argmax通过学习一种概率分布来表示类别的权重,从而使得模型对于不确定性的样本更加鲁棒。\[2\] 另外,为了解决Gumbel-Softmax的随机性带来的问题,研究者引入了重参数技巧。重参数技巧通过引入一个可微的噪声分布来近似Gumbel-Softmax的采样过程,从而使得模型的训练更加稳定和可控。\[3\] #### 引用[.reference_title] - *1* *2* *3* [Sampling-Argmax:用重参数技巧优化Soft-Argmax](https://blog.csdn.net/qq_27590277/article/details/123081210)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值