keisoku

ソフトプラス関数 計算機

ソフトプラス関数 softplus(x)=ln(1+eˣ) とその微分(シグモイド)、ReLU との差を計算。機械学習の活性化関数をグラフ付きで可視化します。

入力

x を入力すると、ソフトプラス関数 softplus(x)=ln(1+eˣ) と、その1次微分(シグモイド)、ReLU との差を計算します。

任意の実数を入力できます(例: 1, -2.5, 0)。

計算結果

softplus(1) = ln(1+e^(1))

1.3132616875

微分 σ(1)(シグモイド)

0.7310585786

ReLU(1) = max(1, 0)

1

softplus − ReLU の差

0.3132616875

softplus と ReLU の比較グラフ

softplus(x)

ReLU(x)

計算方法・使い方

  • ソフトプラス関数は softplus(x)=ln(1+eˣ) で定義され、すべての実数 x に対して正の値を返します。出力は常に 0 より大きく、x が大きくなるほど x 自身に近づきます。
  • ソフトプラス関数の1次微分は標準シグモイド(ロジスティック)関数 σ(x)=1/(1+e^(-x)) と一致します。微分の値域は 0 から 1 で、勾配法での重み更新に使われます。
  • ソフトプラスは ReLU(x)=max(x,0) の滑らかな近似です。ReLU が原点で折れ曲がるのに対し、ソフトプラスは全域でなめらかに微分可能なため、勾配が途切れません。
  • 機械学習・ニューラルネットワークの活性化関数として用いられます。出力が常に正であることから、分散などの正の量を出力する層にも利用されます。
  • 計算では指数のオーバーフローを避けるため max(x,0)+ln(1+e^(-|x|)) の形に変形して評価しています。x が非常に大きいときは softplus(x)≒x、非常に小さい(負に大きい)ときは softplus(x)≒0 となります。

お客様の声

このツールを使った感想をお聞かせください。

レビューを投稿する

  1. ホーム
  2. ソフトプラス関数 計算機