Machine-Learning

溫度在 Softmax 中的作用是什麼?

  • June 2, 2021

我最近在研究 CNN,我想知道 softmax 公式中溫度的函數是什麼?為什麼我們應該使用高溫來查看概率分佈中較軟的範數?

公式如下:

$$ \large P_i=\frac{e^{\frac{y_i}T}}{\sum_{k=1}^n e^{\frac{y_k}T}} $$

溫度是一種控制分佈熵的方法,同時保留每個事件的相對等級。


如果兩個事件 $ i $ 和 $ j $ 有概率 $ p_i $ 和 $ p_j $ 在你的softmax中,只要溫度是有限的,那麼調整溫度就會保持這種關係:

$$ p_i > p_j \Longleftrightarrow p'_i > p'_j $$


加熱分佈會增加熵,使其更接近均勻分佈。(親自嘗試:構建一個簡單的分佈,如 $ \mathbf{y}=(3, 4, 5) $ , 然後除所有 $ y_i $ 價值觀 $ T=1000000 $ 看看分佈如何變化。)

冷卻它會降低熵,突出常見事件。

我換一種說法。常談逆溫 $ \beta=1/T $ . 如果 $ \beta = 0 $ ,那麼你已經獲得了均勻分佈。作為 $ \beta \to \infty $ ,你達到了一個微不足道的分佈,所有質量都集中在最高概率的類上。這就是為什麼 softmax 被認為是 argmax 的軟鬆弛。

引用自:https://stats.stackexchange.com/questions/527080

comments powered by Disqus