⚡半分钟⚡浅入浅出理解Softmax函数

举报
府学路18号车神 发表于 2021/12/25 00:33:52 2021/12/25
【摘要】 ❤坚持读Paper,坚持做笔记,坚持学习❤!!! To Be No.1 哈哈哈哈 创作不易,过路能❤关注、收藏、点个赞❤三连就最好不过了 最近学习机器学习,项目也有用到分类,用到...

❤坚持读Paper,坚持做笔记,坚持学习❤!!!
To Be No.1


创作不易,过路能❤关注收藏点个赞三连就最好不过了

最近学习机器学习,项目也有用到分类,用到了Softmax函数。相信很多小伙伴都会用到。

简单说来,Softmax ⟶ \longrightarrow 归一化指数函数

为什么说是指数函数呢?

下面来看一下

当我们在做回归的时候


左边是我们的估计值和输出,右边使我们的回归模型


当我们需要做分类的时候,左边的估计值标签只有0-1,而我们得到的 y y y的值会有正有负,有大有小,若这样得到的损失函数 L L L则会有很大的偏差,影响分类效果

故引入了Softmax函数,将 y y y的值归一化到0-1之间。


y y y归一化的Soft-max函数公式:
y i ′ = exp ⁡ ( y i ) ∑ j exp ⁡ ( y i ) y_{i}^{\prime}=\frac{\exp \left(y_{i}\right)}{\sum_{j} \exp \left(y_{i}\right)} yi=jexp(yi)exp(yi)


1 > y i ′ > 0 ∑ y i ′ = 1

1>yi>0yi=1 1 > y i > 0 y i = 1
1>yi>0yi=1

其中,分子分母的 y i y_i yi 代表回归后的值,分母则是对 y i y_i yi 做exponential的Summation,这个操作和归一化原理一样,只不过是将 y i y_i yi 的值变为了统一的正值。

具体图解如下:


Caution

Softmax除了让 y 1 、 y 2 、 y 3 . . . . y_1、y_2、y_3.... y1y2y3....变到0-1之间且和为1,更重要的是,将本来 y 1 、 y 2 、 y 3 . . . . y_1、y_2、y_3.... y1y2y3....差距很大的值,Normalizaiton(归一化)之后会差距变得更大了。

比如上图的 y 1 = 3 , y 2 = 1 y_1=3,y_2=1 y1=3,y2=1差距为3倍,归一化之后,新的 y 1 ′ = 0.88 , y 2 ′ = 0.12 y_{1}^{'}=0.88,y_{2}^{'}=0.12 y1=0.88,y2=0.12,他们之间差距有0.88/0.12=7.3333循环倍,可见,Softmax的功能,通过exponential后差距会这么大。

这是在只有两三个 y i y_i yi,当有多个的时候会想到用Sigmoid,会发现Softmax和Sigmoid的结果一样。

Summary

  1. Softmax 让输入归一化到0-1之间。
  2. 归一化后的值比原本的值之间的差距更大。

学习DeepLearning坚持!30天计划!!!


打卡3 /30 Day!!!

ღ( ´・ᴗ・` )


I met the girl under full-bloomed cherry blossoms, and my fate has begun to change.

文章来源: blog.csdn.net,作者:府学路18号车神,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_44333889/article/details/119520616

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。