Softmax 機率 使用指南
Softmax 機率轉換器,將一組 logits 歸一化為機率分佈(和為1),用於多分類模型輸出層機率化。
計算公式與原理
Pᵢ = e^{zᵢ} / Σⱼ e^{zⱼ}
Softmax 把 logits 變成和為 1 的機率分佈,指數放大差距使最大值更突出。實現上通常先減去 max(z) 再取指數以避免上溢;輸出機率並不等於模型置信度,未經校準的模型常過度自信。
使用步驟
- 填寫「Logit 1」。
- 填寫「Logit 2」。
- 填寫「Logit 3」。
- 填寫「Logit 4」。
- 結果區會即時更新;可一鍵複製結果用於記錄或彙報。
典型使用場景
- softmax(z)_i=exp(z_i)/Σⱼexp(z_j),將 logits 歸一化為和為 1 的機率分佈。
- 輸出具平移不變性(全體加常數不變),但對尺度敏感(乘係數放大差異)。
- 多分類輸出層標配,配合交叉熵作損失;數值上先減最大值防溢位。
算例參考
- 機率歸一化:logits=[2,1,0.1],減最大值 2 得 [0,−1,−1.9],exp=[1,0.368,0.149],Σ=1.517 → 機率=[0.659,0.243,0.098],和為 1。
注意事項
結果為按上述公式得到的理論估算值,實際表現受資料分佈、實現細節與執行環境影響,落地決策請以實測為準;本工具純前端執行,輸入不上傳伺服器。
- 為什麼要減去最大值?
- exp 大數會溢位。softmax 具平移不變性,先減最大值不改變結果卻把所有指數壓到 ≤0,避免 exp 上溢、數值穩定。
- softmax 和 sigmoid 在二分類下等價嗎?
- 等價。二分類 softmax 兩維機率互為補數,與對單 logit 用 sigmoid 一致;多分類才必須用 softmax 歸一化。