平滑最大值

平滑最大值是最大值函数\max(x_1,\ldots,x_n),的光滑函数。其是一个参数族,在 m_\alpha(x_1,\ldots,x_n)中,对于每个参数,函数 都是平滑的。参数族内包含最大值函数,并且 当 。 平滑最小值的概念也是类似的。 在大多数情况下,一个族满足两个条件:当参数趋向于正无穷大时为函数变为最大值函数,当参数变为负无穷大时函数变为最小值函数;符号表示为: 当 , 当 。平滑最大值也可以用于描述行为类似于最大值函数的其他平滑函数,而不一定必须在此参数族中。

例子
当正值参数较大时,且\alpha > 0 ,下列公式是最大函数的平滑函数,可微、近似于最大值函数。 对于绝对值较大的负值参数,其近似最小值函数。

:
\mathcal{S}_\alpha (x_1,\ldots,x_n) = \frac{\sum_{i=1}^n x_i e^{\alpha x_i}}{\sum_{i=1}^n e^{\alpha x_i}}

\mathcal{S}_\alpha具有以下属性:

\mathcal{S}_\alpha\to \max当\alpha\to\infty

\mathcal{S}_0是其输入的算术平均值

\mathcal{S}_\alpha\to \min当\alpha\to -\infty

\mathcal{S}_{\alpha}的梯度近似于softmax函数,由以下公式可得:

:
\nabla_{x_i}\mathcal{S}_\alpha (x_1,\ldots,x_n) = \frac{e^{\alpha x_i}}{\sum_{j=1}^n e^{\alpha x_j}} [1 + \alpha(x_i - \mathcal{S}_\alpha (x_1,\ldots,x_n))].

这使softmax函数使用梯度下降的优化时很有用。

LogSumExp
另一个平滑最大值函数例子是LogSumExp :

:
\mathrm{LSE}(x_1, \ldots, x_n) = \log( \exp(x_1) + \ldots + \exp(x_n))

如果x_i都是非负的,可产生定义域是[0,\infty)^n和值域是[0, \infty)的函数 :

:
g(x_1, \ldots, x_n) = \log( \exp(x_1) + \ldots + \exp(x_n) - (n - 1) )

(n - 1)项通过消除除零以外的所有零指数使得\exp(0) = 1,以及\log 1 = 0当x_i为零。

p范数函数
另一个平滑最大值函数是p范数 :

:
|| (x_1, \ldots, x_n) ||_p = \left( |x_1|^p + \cdots + |x_n|^p \right)^{1/p}

当p \to \infty ,收敛到|| (x_1, \ldots, x_n) ||_\infty = \max_{1\leq i\leq n} |x_i| 。

p范数的一个优点是它是一个范数 。 因此,它是“尺度不变”的(同质的): || (\lambda x_1, \ldots, \lambda x_n) ||_p = |\lambda| \times || (x_1, \ldots, x_n) ||_p ,它满足三角不等式。

数值方法
平滑函数的其他例子
:
\mathcal{max}_\alpha (x_1,x_2) = 0.5 \left( (x_1+x_2) + \sqrt{ (x_1-x_2)^2 + \alpha } \right)

参见

  • LogSumExp
  • Softmax函数
  • 广义均值

参考文献
M. Lange, D. Zühlke, O. Holz, and T. Villmann, "Applications of lp-norms and their smooth approximations for gradient based learning vector quantization," in Proc. ESANN, Apr. 2014, pp. 271-276. (https://www.elen.ucl.ac.be/Proceedings/esann/esannpdf/es2014-153.pdf )

评论 (0)

  • 还没有评论,来抢沙发吧。