【大白话 AI 答疑】第9篇 深入浅出:sigmoid函数公式设计原理——为何是$e^{-x}$而非$e^x$

【大白话 AI 答疑】第9篇 深入浅出:sigmoid函数公式设计原理——为何是e−xe^{-x}ex而非exe^xex

在神经网络的激活函数家族中,sigmoid函数是当之无愧的“元老级”成员。它凭借输出值域稳定在(0,1)(0,1)(0,1)的特性,成为二分类任务中概率预测的经典工具。很多初学者会疑惑:sigmoid函数为什么是σ(x)=11+e−x\sigma(x)=\frac{1}{1+e^{-x}}σ(x)=1+ex1这个形式?为什么偏偏选用e−xe^{-x}ex,而不是更直观的exe^xex 本文从数学本质和神经网络任务需求出发,拆解这个公式的设计逻辑。

一、 sigmoid函数的核心目标:将任意输入映射为(0,1)区间的概率值

在二分类任务中,我们需要一个函数满足两个核心要求:

  1. 输入无界:能接收任意实数输入(x∈(−∞,+∞)x\in(-\infty,+\infty)x(,+)),适配神经网络线性层的输出范围;
  2. 输出有界:输出严格落在(0,1)(0,1)(0,1)之间,可直接解释为“预测为正类的概率”。

指数函数y=ety=e^ty=et的特性恰好能实现这个目标——它的值域是(0,+∞)(0,+\infty)(0,+),通过分母叠加常数的方式,就能把输出压缩到(0,1)(0,1)(0,1)区间。
由此,我们可以先确定sigmoid函数的基础框架
σ(x)=11+f(x)\sigma(x)=\frac{1}{1 + f(x)}σ(x)=1+f(x)1
其中f(x)f(x)f(x)需要满足:值域为(0,+∞)(0,+\infty)(0,+),这样分母1+f(x)1+f(x)1+f(x)的范围就是(1,+∞)(1,+\infty)(1,+),最终11+f(x)\frac{1}{1+f(x)}1+f(x)1的输出才会落在(0,1)(0,1)(0,1)

二、 为什么选择f(x)=e−xf(x)=e^{-x}f(x)=ex?从单调性和任务逻辑说起

满足“值域为(0,+∞)(0,+\infty)(0,+)”的函数有很多,比如x2x^2x2x≠0x\neq0x=0)、exe^xexe−xe^{-x}ex等。sigmoid函数最终选择f(x)=e−xf(x)=e^{-x}f(x)=ex,核心是为了满足单调递增的特性,这和二分类任务的逻辑强绑定。

1. 标准设计:f(x)=e−xf(x)=e^{-x}f(x)=ex,实现单调递增的概率映射

f(x)=e−xf(x)=e^{-x}f(x)=ex代入基础框架,得到标准sigmoid公式:
σ(x)=11+e−x\sigma(x)=\frac{1}{1+e^{-x}}σ(x)=1+ex1
我们分三种输入情况分析函数行为:

xxx的取值趋势e−xe^{-x}ex的变化分母1+e−x1+e^{-x}1+ex的变化σ(x)\sigma(x)σ(x)的输出任务逻辑匹配度
x→+∞x\to+\inftyx+e−x→0e^{-x}\to0ex01+e−x→11+e^{-x}\to11+ex1σ(x)→1\sigma(x)\to1σ(x)1输入越大,正类概率越接近1
x=0x=0x=0e−0=1e^{-0}=1e0=11+e−0=21+e^{-0}=21+e0=2σ(x)=0.5\sigma(x)=0.5σ(x)=0.5输入为0时,正/负类概率相等
x→−∞x\to-\inftyxe−x→+∞e^{-x}\to+\inftyex+1+e−x→+∞1+e^{-x}\to+\infty1+ex+σ(x)→0\sigma(x)\to0σ(x)0输入越小,正类概率越接近0

显然,当f(x)=e−xf(x)=e^{-x}f(x)=ex时,sigmoid函数是单调递增的——输入xxx越大,输出概率越高,完全契合“输入特征越强,预测为正类的概率越高”的二分类需求。

2. 反向尝试:若选择f(x)=exf(x)=e^xf(x)=ex,函数趋势完全颠倒

如果我们将f(x)f(x)f(x)替换为exe^xex,得到的函数是:
σ′(x)=11+ex\sigma'(x)=\frac{1}{1+e^{x}}σ(x)=1+ex1
同样分析三种输入情况:

xxx的取值趋势exe^{x}ex的变化分母1+ex1+e^{x}1+ex的变化σ′(x)\sigma'(x)σ(x)的输出任务逻辑匹配度
x→+∞x\to+\inftyx+ex→+∞e^{x}\to+\inftyex+1+ex→+∞1+e^{x}\to+\infty1+ex+σ′(x)→0\sigma'(x)\to0σ(x)0输入越大,正类概率反而越接近0
x=0x=0x=0e0=1e^{0}=1e0=11+e0=21+e^{0}=21+e0=2σ′(x)=0.5\sigma'(x)=0.5σ(x)=0.5输入为0时,概率仍为0.5
x→−∞x\to-\inftyxex→0e^{x}\to0ex01+ex→11+e^{x}\to11+ex1σ′(x)→1\sigma'(x)\to1σ(x)1输入越小,正类概率越接近1

此时函数变为单调递减,输出概率和输入xxx的大小完全负相关。这意味着:特征越强(xxx越大),预测为正类的概率反而越低,和二分类任务的直观逻辑完全相悖。

3. 补充:e−xe^{-x}ex的等价变形——本质是exe^xex的另一种写法

我们可以对标准sigmoid公式做等价变换:
σ(x)=11+e−x=exex+1\sigma(x)=\frac{1}{1+e^{-x}} = \frac{e^x}{e^x+1}σ(x)=1+ex1=ex+1ex
这个变形后的公式里,分子和分母都出现了exe^xex,但函数的单调性和值域没有任何变化。这说明:不是不能用exe^xex,而是需要搭配对应的分子分母结构,最终实现单调递增的效果。而11+e−x\frac{1}{1+e^{-x}}1+ex1是最简洁的写法。

三、 额外优势:e−xe^{-x}ex让sigmoid的导数推导更简洁

除了匹配任务逻辑,选择e−xe^{-x}ex还有一个隐藏优势——简化导数计算,这对神经网络的反向传播至关重要。

sigmoid函数的导数公式为:
σ′(x)=σ(x)⋅(1−σ(x))\sigma'(x)=\sigma(x)\cdot(1-\sigma(x))σ(x)=σ(x)(1σ(x))
这个简洁的推导结果,核心依赖于指数函数ete^tet的导数特性:(et)′=et(e^t)'=e^t(et)=et
如果换成其他函数(比如x2x^2x2)作为f(x)f(x)f(x),导数公式会变得极其复杂,大幅增加反向传播的计算成本。

四、 总结

sigmoid函数的公式设计σ(x)=11+e−x\sigma(x)=\frac{1}{1+e^{-x}}σ(x)=1+ex1,是数学特性任务需求共同作用的结果:

  1. 选用指数函数e−xe^{-x}ex,是为了保证函数单调递增,让输出概率和输入特征强度正相关,匹配二分类任务逻辑;
  2. 分母1+e−x1+e^{-x}1+ex的结构,将任意输入映射到(0,1)(0,1)(0,1)区间,赋予输出概率含义;
  3. e−xe^{-x}ex的导数特性,简化了反向传播中的梯度计算。

至此,我们彻底搞懂了sigmoid函数公式的设计巧思——每一个符号的选择,都不是偶然。

写在最后

sigmoid函数虽然经典,但也存在梯度消失的问题。在深度学习的实际应用中,ReLU函数家族逐渐成为主流。但理解sigmoid的设计原理,是掌握神经网络激活函数设计思想的关键一步。


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值