
The LogSumExp (LSE) (also called RealSoftMax[1] or multivariable softplus) function is a smooth maximum – a smooth approximation to the maximum function, mainly used by machine learning algorithms.[2] It is defined as the logarithm of the sum of the exponentials of the arguments:
The LogSumExp function domain is
\Rn
\R
maxixi
n=1
m=maxixi
\exp(m)\leq
| n | |
| \sum | |
| i=1 |
\exp(xi)\leqn\exp(m)
In addition, we can scale the function to make the bounds tighter. Consider the function
| 1 | |
| t |
LSE(tx1,...,txn)
xi
txi
t>0
t>0
t
Also, if we multiply by a negative number instead, we of course find a comparison to the
min
The LogSumExp function is convex, and is strictly increasing everywhere in its domain.[3] It is not strictly convex, since it is affine (linear plus a constant) on the diagonal and parallel lines:[4]
LSE(x1+c,...,xn+c)=LSE(x1,...,xn)+c.
| + | |
| LSE | |
| 0 |
Writing
x=(x1,...,xn),
The convex conjugate of LogSumExp is the negative entropy.
The LSE function is often encountered when the usual arithmetic computations are performed on a logarithmic scale, as in log probability.[5]
Similar to multiplication operations in linear-scale becoming simple additions in log-scale, an addition operation inlinear-scale becomes the LSE in log-scale:
A common purpose of using log-domain computations is to increase accuracy and avoid underflow and overflow problemswhen very small or very large numbers are represented directly (i.e. in a linear domain) using limited-precisionfloating point numbers.[6]
Unfortunately, the use of LSE directly in this case can again cause overflow/underflow problems. Therefore, thefollowing equivalent must be used instead (especially when the accuracy of the above 'max' approximation is not sufficient).
where
x*=max{\{x1,...,xn\}}
Many math libraries such as IT++ provide a default routine of LSE and use this formula internally.
LSE is convex but not strictly convex.We can define a strictly convex log-sum-exp type function[7] by adding an extra argument set to zero:
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.
In tropical analysis, this is the sum in the log semiring.