透過 MCP 連接 →

輸入計算

任意實數(正數、負數或零)

數學公式

廣告

結果

Softsign 一階導數
0.4444444444
phi'(x)
phi(x) = x / (1 + |x|) 0.3333333333
phi'(x) = 1 / (1 + |x|)^2 0.4444444444

什麼是 Softsign 函數?

Softsign 是神經網路中常用的平滑激活函數,定義為 \(\phi(x) = x / (1 + |x|)\)。它能將任意實數輸入映射到開區間 \((-1, 1)\),性質與雙曲正切(tanh)相似,但趨近飽和上下限的速度更慢。這種較為和緩的飽和特性,有助於在訓練過程中減輕梯度消失(vanishing gradient)的問題。本計算器會同時回傳函數值 \(\phi(x)\),並以一階導數 \(\phi'(x)\) 作為主要輸出。

Two overlaid curves on x-y axes: an S-shaped curve flattening toward horizontal asymptotes and a bell-shaped curve peaking at the center
The Softsign function phi(x) = x/(1+|x|) (S-shaped) and its derivative phi'(x) = 1/(1+|x|)^2 (bell-shaped).

如何使用本計算器

在 \(x\) 欄位輸入任意實數——正數、負數或零皆可——即可讀取 \(\phi'(x)\)(Softsign 曲線的斜率)以及 \(\phi(x)\)(激活輸出值)。計算過程不涉及任何單位,\(x\) 是純粹的無因次實數。預設輸入值為 \(x = 0.5\)。

公式解析

\(\phi(x) = x / (1 + |x|)\) 的導數為 $$\phi'(x) = \frac{1}{\left(1 + \left|x\right|\right)^{2}}$$ 由於分母 \((1 + |x|)\) 必定大於或等於 \(1\),因此導數恆為正值,且落在 \((0, 1]\) 區間內。其最大值 \(1\) 出現在 \(x = 0\) 處,此時函數曲線最為陡峭。當 \(|x|\) 越來越大時,\(\phi'(x)\) 會趨近於 \(0\),正好反映出函數逐漸進入飽和的特性。

Advertisement
Single bell-shaped curve peaking at value 1 above the origin, symmetric and decaying to zero on both sides
Graph of the derivative phi'(x) = 1/(1+|x|)^2, symmetric about x=0 with a maximum of 1 at the origin.

實例演算

以 \(x = 0.5\) 為例:\(|x| = 0.5\),因此 \(1 + |x| = 1.5\)。函數值為 $$\phi(0.5) = \frac{0.5}{1.5} = 0.333333\ldots$$ 而導數為 $$\phi'(0.5) = \frac{1}{1.5^{2}} = \frac{1}{2.25} = 0.444444\ldots$$ 換言之,Softsign 曲線在 \(x = 0.5\) 處的輸出值約為 \(0.3333\),斜率約為 \(0.4444\)。

常見問題

Softsign 在所有點都可微分嗎?是的。雖然 \(|x|\) 在 \(x = 0\) 處有一個尖點,但 \(\phi\) 在該點的左導數與右導數同樣都等於 \(1\),因此 \(\phi\) 在 \(0\) 以及其他所有點都是可微分的。

導數有可能為負值嗎?不可能。\(\phi'(x) = \frac{1}{\left(1 + \left|x\right|\right)^{2}}\) 恆為正值,因為它是 \(1\) 除以一個正數的平方。

Softsign 與 tanh 有何差異?兩者都飽和於 \((-1, 1)\),但 Softsign 採用多項式型(\(1/x^2\))的尾部,而非 tanh 的指數型尾部,因此飽和速度較慢,在遠離原點處也能保留稍大的梯度。

最後更新: