LogSumExp

LogSumExp(LSE,也称RealSoftMax[1]或多变量softplus函数是一个平滑最大值——一个对极值函数的光滑近似,主要用在机器学习算法中。[2] 其定义为参数的指数的和的对数

性质

LogSumExp函数的定义域 实数空间英语real coordinate space),共域是 实数线)。它是对极值函数 的近似,同时有如下的界限:

第一个不等式 以外的情况是严格成立的,第二个不等式仅在所有元素相等时取等号。(证明:令 ,则 。将不等式取对数即可。)

另外,我们可以将不等式缩放到更紧的界限。考虑函数 。然后,

(证明:将上式 替换,得到

由于

最后,同除 得到结果。)

此外,如果我们乘上一个负数,可以得到一个与 有关的不等式:

LogSumExp函数是凸函数,因此在定义域上严格递增[3] (但并非处处都是严格凸的[4]。)

偏导数为:

表明LogSumExp的梯度softmax函数

LogSumExp的凸共轭负熵英语negative entropy

对数域中的log-sum-exp计算技巧

当通常的算术计算在对数尺度上进行时,经常会遇到LSE函数,例如对数概率。[5]

类似于线性尺度中的乘法运算变成对数尺度中的简单加法,线性尺度中的加法运算变成对数尺度中的LSE:

使用对数域计算的一个常见目的是在使用有限精度浮点数直接表示(在线性域中)非常小或非常大的数字时提高精度并避免溢出问题.[6]

不幸的是,在一些情况下直接使用 LSE 依然会导致上溢/下溢问题,必须改用以下等效公式(尤其是当上述“最大”近似值的准确性不够时)。 因此,IT++等很多数学库都提供了LSE的默认例程,并在内部使用了这个公式。

其中

一个严格凸的log-sum-exp型函数

LSE是凸的,但不是严格凸的。我们可以通过增加一项为零的额外参数来定义一个严格凸的log-sum-exp型函数[7]

This function is a proper Bregman generator (strictly convex and differentiable). It is encountered in machine learning, for example, as the cumulant of the multinomial/binomial family.

热带分析英语tropical analysis中,这是对数半环英语log semiring的和。

参见

参考资料