一个分布在多次Softmax后,会趋于相同

news2024/11/27 20:59:19

本文其实是我在知乎上无意中翻到的一条提问:softmax到底有哪些作用?,其中苏剑林大佬关于第四个问题的回复,给我产生了一些思考。为什么一个分布在多次Softmax之后,每个值会趋于相同?例如[1,100]在大约10次Softmax操作后会变成[0.5,0.5];[1,2,3,4]大约5次Softmax操作后会变成[0.25,0.25,0.25,0.25]

苏剑林大佬的原话是:“这其实是一个没什么实用价值的结果,因为对Softmax的结果再次进行Softmax没有什么物理意义”。不过我还是本着好奇的心态看完了他对于这个问题的证明,感兴趣的同学直接看原回答即可。实际上由于篇幅限制,苏剑林大佬的证明过程省略了不少步骤,因此这里我给出完整的证明流程

设第 i i i次迭代后的向量为 ( p 1 ( i ) , p 2 ( i ) , . . . , p n ( i ) ) (p_1^{(i)},p_2^{(i)},...,p_n^{(i)}) (p1(i),p2(i),...,pn(i)),我们先证明 n ≥ 3 n\ge 3 n3的情形。不妨设其中最大值、最小值为 p max ( i ) , p min ( i ) p_{\text{max}}^{(i)},p_{\text{min}}^{(i)} pmax(i),pmin(i),则 Softmax ( p 1 ( i ) , p 2 ( i ) , . . . , p n ( i ) ) \text{Softmax}(p_1^{(i)},p_2^{(i)},...,p_n^{(i)}) Softmax(p1(i),p2(i),...,pn(i))的最大值为

p max ( i + 1 ) = e p max ( i ) ∑ j = 1 n e p j ( i ) ≤ e p max ( i ) n e p min ( i ) = e p max ( i ) − p min ( i ) n p_{\text{max}}^{(i+1)}=\frac{e^{p_{\text{max}}^{(i)}}}{\sum_{j=1}^ne^{p_j^{(i)}}}\leq \frac{e^{p_{\text{max}}^{(i)}}}{ne^{p_{\text{min}}^{(i)}}}=\frac{e^{p_{\text{max}}^{(i)}-p_{\text{min}}^{(i)}}}{n} pmax(i+1)=j=1nepj(i)epmax(i)nepmin(i)epmax(i)=nepmax(i)pmin(i)

同理,最小值为

p min ( i + 1 ) = e p min ( i ) ∑ j = 1 n e p j ( i ) ≥ e p min ( i ) n e p max ( i ) = e p min ( i ) − p max ( i ) n p_{\text{min}}^{(i+1)}=\frac{e^{p_{\text{min}}^{(i)}}}{\sum_{j=1}^ne^{p_j^{(i)}}}\ge \frac{e^{p_{\text{min}}^{(i)}}}{ne^{p_{\text{max}}^{(i)}}}=\frac{e^{p_{\text{min}}^{(i)}-p_{\text{max}}^{(i)}}}{n} pmin(i+1)=j=1nepj(i)epmin(i)nepmax(i)epmin(i)=nepmin(i)pmax(i)

p max ( i + 1 ) − p min ( i + 1 ) ≤ e p max ( i ) − p min ( i ) − e p min ( i ) − p max ( i ) n p_{\text{max}}^{(i+1)} - p_{\text{min}}^{(i+1)} \leq \frac{e^{p_{\text{max}}^{(i)}-p_{\text{min}}^{(i)}} - e^{p_{\text{min}}^{(i)}-p_{\text{max}}^{(i)}}}{n} pmax(i+1)pmin(i+1)nepmax(i)pmin(i)epmin(i)pmax(i)

a i = p max ( i ) − p min ( i ) a_{i}=p^{(i)}_{\text{max}} -p^{(i)}_{\text{min}} ai=pmax(i)pmin(i),则 0 ≤ a i + 1 ≤ e a i − e − a i n 0\leq a_{i+1}\leq \frac{e^{a_i}-e^{-a_i}}{n} 0ai+1neaieai,所以现在问题转化为证明 lim ⁡ i → ∞ a i + 1 = 0 \lim\limits_{i\to \infty}a_{i+1}=0 ilimai+1=0成立

a i + 1 a_{i+1} ai+1的定义,即 p max ( i + 1 ) − p min ( i + 1 ) p_{\text{max}}^{(i+1)}-p_{\text{min}}^{(i+1)} pmax(i+1)pmin(i+1)(概率的差),所以 0 ≤ a i + 1 0\leq a_{i+1} 0ai+1很容易想到。接下来如果我们能够证明 e a i − e − a i n \frac{e^{a_i}-e^{-a_i}}{n} neaieai收敛到0,那么通过夹逼定理就可以证得 lim ⁡ i → ∞ a i + 1 = 0 \lim\limits_{i\to \infty}a_{i+1}=0 ilimai+1=0

因为 f ( x ) = e x − e − x n f(x) = \frac{e^x - e^{-x}}{n} f(x)=nexex是单调递增的,它只有一个不动点,只要初始值不大于0,那么迭代 x i + 1 = f ( x i ) x_{i+1}=f(x_i) xi+1=f(xi)必然收敛到0。所以 { a i } i = 1 ∞ \{a_i\}_{i=1}^\infty {ai}i=1也必然收敛到0

n = 2 n=2 n=2时,上述放缩太宽了,也就是从1出发,迭代 x i + 1 = f ( x i ) x_{i+1}=f(x_i) xi+1=f(xi)不收敛。我们可以直接考虑

p min ( i + 1 ) ≥ e p min ( i ) − p max ( i ) 2 = e p min ( i ) − ( 1 − p min ( i ) ) 2 = e 2 p min ( i ) − 1 2 p_{\text{min}}^{(i+1)}\ge \frac{e^{p_{\text{min}}^{(i)}-p_{\text{max}}^{(i)}}}{2}=\frac{e^{p_{\text{min}}^{(i)}-(1-p_{\text{min}}^{(i)})}}{2}=\frac{e^{2p_{\text{min}}^{(i)}-1}}{2} pmin(i+1)2epmin(i)pmax(i)=2epmin(i)(1pmin(i))=2e2pmin(i)1

基于类似的过程, g ( x ) = e 2 x − 1 2 g(x)=\frac{e^{2x-1}}{2} g(x)=2e2x1单调递增并且只有一个不动点 x = 1 2 x=\frac{1}{2} x=21,所以从0出发, p min ( i ) p_{\text{min}}^{(i)} pmin(i)会收敛到 1 2 \frac{1}{2} 21

Reference

  • softmax到底有哪些作用?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/51528.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[附源码]JAVA毕业设计高校心理咨询预约系统(系统+LW)

[附源码]JAVA毕业设计高校心理咨询预约系统(系统LW) 目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目…

新建esp32的vscode工程的三种方式

普通的idf工程在vscode下直接打开的时候,会发现很多头文件都是报错的,一些函数/类型等的定义也无法找到,比较影响阅读: 因此在vscode上开发esp32的时候,最好为这个工程提供vscode的支持,以下是三种实现的…

商务部研究院信用所、启信宝联合发布《中国商务信用发展指数报告(2022)》

近期,商务部国际贸易经济合作研究院信用研究所与合合信息全资子公司上海生腾数据科技有限公司(简称“生腾数据”)联合发布了《中国商务信用发展指数报告(2022)》(简称《报告》)。为准确反映中国…

NLP中的对抗训练(附PyTorch实现)

对抗样本的基本概念 要认识对抗训练,首先要了解"对抗样本",它首先出现在论文Intriguing properties of neural networks之中。简单来说,它是指对于人类来说"看起来"几乎一样,但对于模型来说预测结果却完全不…

[附源码]JAVA毕业设计公务用车管理智慧云服务监管平台(系统+LW)

[附源码]JAVA毕业设计公务用车管理智慧云服务监管平台(系统LW) 目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff0…

[附源码]Python计算机毕业设计SSM蓝色港湾房产交易与租赁系统(程序+LW)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

最近基于深度学习大火的AIGC将会抢原创工作者的饭碗?

NLG | CLIP | Diffusion Model GAN | AIGC | Stable Diffusion 随着CLIP、DALLE、Diffusion Model、Magic3D、Stable Diffusion等技术的快速发展,AIGC在全球各大科技巨头间可谓是高频词汇,连带着AI这个老生常谈的话题也一并火热起来。 去年三月&#xf…

【R】R包MethylCal安装问题解决 Rtools is required to build R packages

文章目录写在前面问题描述解决过程【1】安装INLA【2】安装Rtools写在前面 吐槽一番: 一般情况下,不是在万不得已,真心不想用R,最让人望而却步的就是包的安装问题,动不动就出现版本不兼容问题,或者下载这个…

Chapter9.5:线性系统的状态空间分析与综合考研参考题

此系列属于胡寿松《自动控制原理题海与考研指导》(第三版)习题精选,仅包含部分经典习题,需要完整版习题答案请自行查找,本系列属于知识点巩固部分,搭配如下几个系列进行学习,可用于期末考试和考研复习。 自动控制原理(…

Java本地高性能缓存的几种实现方式

Java缓存技术可分为远端缓存和本地缓存,远端缓存常用的方案有著名的redis和memcache,而本地缓存的代表技术主要有HashMap,Guava Cache,Caffeine和Encahche。本篇博文仅覆盖了本地缓存,且突出探讨高性能的本地缓存。 本…

美信监控易:网络管理之链路专线管理

专线通常是指运营商为企事业单位提供的专用网络线路,用于满足其业务需求。专线管理可以提供对专线基础信息的维护,以及性能数据的监测能力。通过系统自动地、周期性地执行专线测试,获取指标数据,实现专线连通性、性能数据的全面感…

图数据结构之邻接链表Adjacency List(Python版)

前面学过两种图的数据结构,有兴趣的可以查阅:图数据结构之字典实现(Python版)https://blog.csdn.net/weixin_41896770/article/details/128125901 图数据结构之邻接矩阵Adjacency Matrix(Python版)https://blog.csdn.net/weixin_41896770/article/detai…

中文Stable Diffusion模型太乙使用教程

中文Stable Diffusion模型太乙使用教程 太乙模型介绍 在线体验地址: Stable Diffusion 太乙模型,首个开源的中文Stable Diffusion模型,基于0.2亿筛选过的中文图文对训练。 生成内容一直被视为 AI 领域中最具有挑战性的能力,最近大火的 AI 绘…

文献管理软件Zotero的安装和使用

文章目录前言一、Zotero简介二、安装与使用1、账号注册2、软件安装3、插件安装4、关联账户设置5、坚果云扩充(WebDAV)6、保存路径设置7、与Connected Papers联动8、参考文献的引用前言 随着阅读文献数量的增加,感觉一个好用的文献管理工具必…

08【SpringMVC的放行规则】

文章目录二、SpringMVC的放行规则2.1 SpringMVC提供的拦截规则2.2 缺省Servlet放行2.3 resources放行2.4 Handler放行2.5 放行规则小结二、SpringMVC的放行规则 2.1 SpringMVC提供的拦截规则 *.form:代表以*.form结尾的后缀请求都会进入springmvc管/:代…

Vue2.0开发之——Vue基础用法-axios(29)

一 概述 axios-使用axios发起基本的Get请求axios-结合async和await调用axiosaxios-使用解构赋值axios-基于axios.get和axios.post发起请求 二 axios-使用axios发起基本的Get请求 2.1 axios介绍 axios(发音:艾克C奥斯)是前端圈最火的、专注于数据库请求的库 在后面…

Linux---awk

Linux三剑客之一awk 简单介绍一下awk的用法 再谈三剑客 grep awk sed 三个并称Linux的三剑客 awk:适合编辑,处理匹配到的文本内容 grep:擅长单纯的查找或匹配文本内容 链接: Linux—grep sed:适合格式化文本内容,对文本进行复杂处理 链接: Linux—sed 文章目录Lin…

如何选择合适的香港物理服务器?

所有企业在部署自己的网络业务时,要有目标,正确的技术,尤其是服务器,可以帮助他们实现这些目标。比如,国内站长开展大型外贸业务又想要国内访问速度快,可以选择合适的香港物理服务器来解决这个问题。那么&a…

天舟系列货运飞船介绍

天舟系列货运飞船是由中国空间技术研究院研制的一款货运飞船,其主要任务是在我国空间站建造及运营期间进行物资运输补给。 天舟系列货运飞船主要用于对中国空间站在轨运行期间,。天舟系列货运飞船包括天舟一号、天舟二号、天舟三号、天舟四号、天舟五号等…

Chatbot(五)

一、走进聊天机器人 目标 知道常见的bot的分类知道企业中常见的流程和方法 1.1 目前企业中的常见的聊天机器人 QA BOT (问答机器人) : 回答问题 1.代表:智能名服 2.比如: 提问和回答TASK BOT(任务机器人): 助人们做事情 1.代表: siri 2.比如:设五明天早上9点的闹钟CHAT BOT…