Logistic 函數 vs Softmax 函數

嘿,大家好。你知道機器學習中的分類模型么?你知道 Softmax 和 Logistic 函數么?如果你不是很了解這些內容的話,那麼請繼續往下看吧。

眾所周知,機器學習中最經典的模型是分類模型。根據維基百科的敘述,分類模型(監督學習模型)是根據標記數據來推斷未知樣本歸屬類別的模型。


為了簡化起見,我們的數據集中標籤的數目必須是有限的,即對於一張貓的照片我們需要計算機告訴我們這是一隻貓。

本文中用到的圖片全部來自於Pixabay(https://pixabay.com/),該網站上提供了許多免費照片。

首先我們來看一個簡單的分類模型——二分類問題,比如判斷圖片中是否存在貓。本文中主要採用一個黑箱模型——神經網路模型,不過本文的重點並不是介紹神經網路模型的建模過程,而是關注該模型的最後一個計算步驟。

Advertisements

對於黑箱模型來說,我們無法得知其內部的構建過程,我們只能得到給定輸入結果對應的預測標籤。相反地,同樣存在白箱模型,我們不但能獲取輸出結果,還能得知模型的內部結構。

因此,神經網路的計算模塊是一個黑箱過程,我們輸入一張圖片,該模型返回相應的標籤結果。輸出結果如下所示:

為了獲得輸出結果所對應的標籤情況,我們需要利用 logistic 函數,其形式如下所示:

從上圖我們可以看出,該函數可以很好地處理二分類問題:當概率值大於 0.5 時,我們認為該樣本屬於類 『1』,而當概率值小於 0.5 時,我們認為該樣本屬於類 『0』。

轉換后的結果如下所示:

那麼,什麼是 Softmax 函數呢?該函數通常用於處理多分類問題,它可以計算得到樣本歸屬於每個類別的概率。

Advertisements

比如,


那麼問題來了,給定某個樣本它歸屬於每個類別的概率分別是多少呢?我們假設每個樣本只能有一個標籤,此時我們利用 Softmax 函數即可獲得樣本歸屬於每個類別的概率,該函數的形式非常簡單:


因此,我們可以得到給定樣本的概率向量:


需要注意的是,這些概率值的總和為1。

總結

  • Softmax 函數通過給定的任意向量輸出對應的概率值,它可以處理多標籤分類問題。

  • Logistic 函數通過給定的任意向量輸出 Sigmoid 函數的值,它可以處理二分類問題。

如果你發現本文中存在問題,請及時告訴我,我很樂意聽到這些消息並從中學會更多的知識。

一些有用的鏈接

  • Udacity course on ML

  • Wikipedia article for sigmoid function

  • Wikipedia article for softmax function

***

更多課程和文章盡在微信號:「datartisan數據工匠」

原文鏈接:https://medium.com/@demidovs/ml-1-logistic-function-vs-softmax-44c73399c3c4#.78vsb0ato

原文作者:Alexander Demidovskij

譯者:Fibears

Advertisements

你可能會喜歡