ソフトマックス関数
ソフトマックス関数（ソフトマックスかんすう、softmax function）は、ロジスティック関数を多次元に拡張したもの。ネットワークの出力を確率分布に変換することができるので、ニューラルネットワークの最後の活性化関数としてよく用いられる。
ソフトマックス関数は、 "K" 個の実数からなるベクトル "z" を入力として受け取り、入力の指数に比例する "K" 個の確率で構成される確率分布に正規化する。つまり、ソフトマックス関数を適用することで、各成分は区間 formula_1 に収まり、全ての成分の和が 1 になるため、「確率」として解釈できるようになる。入力値が大きいほど「確率」も大きい。
formula_2 に対し、標準（単位）ソフトマックス関数 formula_3 は次のように定義される。
簡単に言えば、入力ベクトルの formula_5 の各成分 formula_6 に標準的な指数関数を適用し、これらすべての指数の合計で割ることによって、値を正規化する。この正規化により、出力ベクトル formula_7 の成分の和が 1 になることが保障される。
（ネイピア数）の代わりに別の基底 を用いることもできる。 であれば、入力値が小さいほど出力される確率が高くなり、 の値を小さくすると、入力値が小さいところに集中する確率分布となる。の場合、入力値が大きいほど出力される確率が大きくなり、 の値を大きくすると、最大の入力値が大きい位置に集中する確率分布が作成される。
実数 を用いて formula_8 ないし formula_9 と記載すると、次の表現を得る。
基底が固定されている分野もあれば、基底を変化させる分野もある。