fixedpoint.jp


log-sum-expは知っているがexp-sum-logは聞いたことがないという方へ (2021-08-15)

Log-Sum-Exp (LSE)関数は昨今流行している機械学習のモデルで用いられ、softplus関数を一般化したものと見なせます。このLSE関数の勾配を取ると、softmax関数になります。数値解析の専門家による、短いですが分かりやすい解説記事が以下にあります: "What Is the Log-Sum-Exp Function?"

一方、"log-sum-exp"の順番を逆にした"exp-sum-log"という関数はどんなものでしょうか?形式的には\[\exp \left(\sum_{i=1}^n \log(x_i) \right) = \exp \left(\log \left(\prod_{i=1}^n x_i \right) \right) = \prod_{i=1}^n x_i\]となり、回りくどい乗法にしか見えません。しかし、仮に"sum"のところを"avg"と読み替えると幾何平均と一致します。\[\exp \left(\sum_{i=1}^n \frac{\log(x_i)}{n} \right) = \sqrt[n]{\prod_{i=1}^n x_i}\](ただし各\(x_i\)がいずれも正であるとする。)この形から、Jensenの不等式を使って、多変数の幾何平均が算術平均以下であることを示すことができます。また、最初に対数を取ることで計算の途中での桁あふれを防ぐことができるという点で、この"exp-avg-log"が好都合なこともありそうです。


© 2006-2023 fixedpoint.jp