softmax函数的全称、定义、作用、公式推导
时间: 2023-10-03 12:07:37 浏览: 235
softmax函数的全称是Softmax Regression,也称为多项逻辑回归。它是一种用于将多个线性输出转换为概率分布的函数。
给定一个含有 $K$ 个类别的分类问题,softmax函数将 $K$ 个线性输出 $\boldsymbol{z} = [z_1, z_2, ..., z_K]$ 转换成概率分布 $\boldsymbol{p} = [p_1, p_2, ..., p_K]$,其中 $p_i$ 表示属于第 $i$ 个类别的概率。softmax函数的定义为:
$$\boldsymbol{p}_i = \frac{\exp(z_i)}{\sum_{j=1}^{K}\exp(z_j)}$$
softmax函数的作用是将多个线性输出映射到概率分布上,使得输出更易于解释和理解。在分类问题中,softmax函数可以用于多分类任务,例如图像分类、文本分类等。
推导softmax的公式如下:
首先将线性输出 $\boldsymbol{z}$ 通过指数函数进行变换,得到 $\boldsymbol{e}_i = \exp(z_i)$。然后对所有的 $\boldsymbol{e}_i$ 进行求和,得到 $\sum_{j=1}^{K}\exp(z_j)$。最后将 $\boldsymbol{e}_i$ 除以 $\sum_{j=1}^{K}\exp(z_j)$,即可得到 $\boldsymbol{p}_i$ 的值。
具体地,我们可以将 $\boldsymbol{z}$ 中的最大值减去,以防止指数函数的上溢或下溢:
$$\boldsymbol{p}_i = \frac{\exp(z_i-\max{\boldsymbol{z}})}{\sum_{j=1}^{K}\exp(z_j-\max{\boldsymbol{z}})}$$
这样得到的 $\boldsymbol{p}$ 是一个概率分布,即 $\sum_{i=1}^{K}\boldsymbol{p}_i=1$。
阅读全文