详解softmax函数「建议收藏」

做过多分类任务的同学一定都知道softmax函数。softmax函数,又称归一化指数函数。它是二分类函数sigmoid在多分类上的推广,目的是将多分类的结果以概率的形式展现出来。下图展示了softmax的计算方法:下面为大家解释一下为什么softmax是这种形式。首先,我们知道概率有两个性质:1)预测的概率为非负数;2)各种预测结果概率之和等于1。softmax就是将在负无穷到正无穷上的预测结果按照…

大家好,又见面了,我是你们的朋友全栈君。

做过多分类任务的同学一定都知道softmax函数。softmax函数,又称归一化指数函数。它是二分类函数sigmoid在多分类上的推广,目的是将多分类的结果以概率的形式展现出来。下图展示了softmax的计算方法:

详解softmax函数「建议收藏」

下面为大家解释一下为什么softmax是这种形式。

首先,我们知道概率有两个性质:1)预测的概率为非负数;2)各种预测结果概率之和等于1。

softmax就是将在负无穷到正无穷上的预测结果按照这两步转换为概率的。

1)将预测结果转化为非负数

下图为y=exp(x)的图像,我们可以知道指数函数的值域取值范围是零到正无穷。softmax第一步就是将模型的预测结果转化到指数函数上,这样保证了概率的非负性。

详解softmax函数「建议收藏」

2)各种预测结果概率之和等于1

为了确保各个预测结果的概率之和等于1。我们只需要将转换后的结果进行归一化处理。方法就是将转化后的结果除以所有转化后结果之和,可以理解为转化后结果占总数的百分比。这样就得到近似的概率。

下面为大家举一个例子,假如模型对一个三分类问题的预测结果为-3、1.5、2.7。我们要用softmax将模型结果转为概率。步骤如下:

1)将预测结果转化为非负数

y1 = exp(x1) = exp(-3) = 0.05

y2 = exp(x2) = exp(1.5) = 4.48

y3 = exp(x3) = exp(2.7) = 14.88

2)各种预测结果概率之和等于1

z1 = y1/(y1+y2+y3) = 0.05/(0.05+4.48+14.88) = 0.0026

z2 = y2/(y1+y2+y3) = 4.48/(0.05+4.48+14.88) = 0.2308

z3 = y3/(y1+y2+y3) = 14.88/(0.05+4.48+14.88) = 0.7666

总结一下softmax如何将多分类输出转换为概率,可以分为两步:

1)分子:通过指数函数,将实数输出映射到零到正无穷。

2)分母:将所有结果相加,进行归一化。

下图为斯坦福大学CS224n课程中最softmax的解释:

详解softmax函数「建议收藏」

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/129700.html原文链接:https://javaforall.net

(0)
上一篇 2022年4月14日 下午12:40
下一篇 2022年4月14日 下午1:00


相关推荐

  • Bean @session_spring类方法注解

    Bean @session_spring类方法注解刚开始的时候,在controller层使用@RequestParam的时候,发现这个参数是必须要输入值的,但是我们有时候必须查询的时候允许参数为空,使用这个注解就不行了。在集成了swagger2后,找了半天的原因,发现使用@ApiImplicitParam这个注解可以解决这个问题。对应下面的参数。所以我们可以使用这个注解来解决我们所遇到的参考为空的问题。而且已经集成了swagger2,所以我们尽量…

    2025年8月8日
    3
  • 主从复制、读写分离、集群、为什么要使用Redis数据库[通俗易懂]

    主从复制、读写分离、集群、为什么要使用Redis数据库[通俗易懂]一、什么是主从复制、读写分离、为什么要使用主从复制:是一种数据备份的方案。简单来说,是使用两个或两个以上相同的数据库,将一个数据库当做主数据库,而另一个数据库当做从数据库。在主数据库中进行相应操作时,从数据库记录下所有主数据库的操作,使其二者一模一样。读写分离:是一种让数据库更稳定的的使用数据库的方法。是在有从数据库的情况下使用,当主数据库进行对数据的增删改也就是写操作时,将查询的…

    2022年6月13日
    26
  • 稳压管(齐纳二极管)封装型号大全

    稳压管(齐纳二极管)封装型号大全在很多电路中 都能看到稳压二极管的身影 比如稳压电源 过压保护电路 电子点火器 限幅电路 直流电平平移等 根据稳压二极管的特性及工作原理可知 稳压是稳压二极管的天职 稳压二极管种类繁多 型号齐全 根据东沃电子供应的稳压二极管封装来分 有

    2026年3月18日
    2
  • Kimi沦为二线大模型,月之暗面的时间不多了

    Kimi沦为二线大模型,月之暗面的时间不多了

    2026年3月12日
    2
  • maven本地仓库配置了不起作用_仓库数量出错的原因

    maven本地仓库配置了不起作用_仓库数量出错的原因在配置前请先看看这个链接里的东西https://blog.csdn.net/qq_35109803/article/details/80025853如果还是有错误的话就往下文看吧。如果你在配置maven本地仓库输入mvnhelp:system 运行出错的话,不妨试试以下方法。该方法仅对输入mvn-v可以成功运行,而输入mvnhelp:system出现Error的解决方…

    2025年12月2日
    6
  • Windows 反消息钩子(1)

    Windows 反消息钩子(1)消息钩子在Windows编程中有着非常广泛的应用,它可以任意拦截Windows系统,这个以消息为驱动的系统中的绝大多数消息类型。一方面这给编程者带来了巨大的灵活性,另一方面也埋下了巨大隐患,大多数窃密软件都使用这种方法。此篇文章给您提供一种钩子的反拦截方法,希望对您有所帮助。文章中使用了API钩子,您之前必须对此技术有一定了解。      为求完整,文章分为两部分,第一部分为

    2022年7月25日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号