1. 程式人生 > >關於Logistic Regression、Softmax Loss和Cross-entropy的隨筆

關於Logistic Regression、Softmax Loss和Cross-entropy的隨筆

最近看深度學習影象分類的相關知識的時候,發現對於Softmax損失函式的相關概念沒有搞明白,因此講設計到的相關知識一些梳理,供大家參考。

本文以CIFAR-10資料集圖片分類任務為例展開,定義第i 個輸入樣本xi ,輸出yi ,圖片共有10類(k=0,1,...,c,c=9

Logistic Regression

Logistic Regression作為經典的二分類問題(樣本label為0或1)的分類器,本質是通過Sigmoid函式將輸入向量 x 對映到樣本屬於正負樣本的概率值:

P(y=1|x)=f(x)=11+ex
P(y=0|x)=1f(x)
那麼樣本x 屬於觀測值的概率值即為:
p
(y|x)=f(x)y+(1f(x))1y

顯然我們希望上式最大,即函式輸出儘可能接近於真實label,那麼假設有m 樣本,並假設獨立同分布(這在機器學習的一般問題中是成立的,因為樣本已經給定,他們互不影響),那麼m 個樣本的聯合分佈(可以理解為m 個樣本都分類正確的概率)即為:
L(θ)=i=1mp(yi|xi)
Logistic Regression核心的思想是最大似然估計顯然希望上式最大,即等價於lnL(θ) 最大,即等價於lnL(θ) 最小,這就得到了Andrew Ng課程中的損失函式形式:

Softmax (Loss)

上面介紹的是二分類的問題,可以用Logistic Regression解決,對於多分類問題,例如CIFAR-10影象分類問題,就需要多輸出的Softmax函式形式。
以CIFAR-10資料集為例,最終網路輸出層y

一定是10個節點,分佈代表10個類別,由於輸出層一般是前一層通過全連線得到,那麼yR1×10 ,Softmax作用就是將連續值y 通過歸一化轉換為概率值:

P(yi|x)=kefyiefi
上式中yi 代表第i 個樣本的真實類別P(yi|x)就代表了網路對於輸入樣本屬於每一類別賦予的概率值,最大值所屬的類別即是該輸入樣本的類別。第i個樣本的損失函式可以定義為:
Li=log(efyikefk)
對於m個樣本的總體Loss可以寫成:
Li=1m[i=1nk=c1(y=k)log(efyikefk)]
關於Logistic Regression和Softmax Loss的優化問題這裡就不展開了,具體可以參考
UFLDL教程

注:多個二分類的Logistic Regression也可以達到多分類,我們判斷選擇Softmax還是Logistic Regression的標準是樣本的label是否存在重疊,例如判斷人的種族兩種方法都可以,因為一個人只可能屬於一種種族;但是判斷圖片風格(風景照、戶外照、室內照、人物照)則只能用Logistic Regression,因為一張照片可能屬於多類。

Cross-entropy

為了更好得理解Softmax Loss,可以從交叉熵角度直觀思考。首先,交叉熵是用來表述真實樣本概率分佈p 和預測樣本概率分佈q=P(y|x) 的差異度:

H(p,q)=p(x)logq(x)
也可以寫成:
H(p,q)=H(p)+DK,L(pq)
其中H(p)p=(0,

相關推薦

關於Logistic RegressionSoftmax LossCross-entropy隨筆

最近看深度學習影象分類的相關知識的時候,發現對於Softmax損失函式的相關概念沒有搞明白,因此講設計到的相關知識一些梳理,供大家參考。 本文以CIFAR-10資料集圖片分類任務為例展開,定義第i 個輸入樣本xi ,輸出yi ,圖片共有10類(k=0,1

卷積神經網絡系列之softmaxsoftmax losscross entropy的講解

caff 這一 卷積神經網絡 bsp rop 技術分享 有一個 技術 位置 我們知道卷積神經網絡(CNN)在圖像領域的應用已經非常廣泛了,一般一個CNN網絡主要包含卷積層,池化層(pooling),全連接層,損失層等。雖然現在已經開源了很多深度學習框架(比如MxNet,Ca

卷積神經網路系列之softmaxsoftmax losscross entropy loss的講解

我們知道卷積神經網路(CNN)在影象領域的應用已經非常廣泛了,一般一個CNN網路主要包含卷積層,池化層(pooling),全連線層,損失層等。雖然現在已經開源了很多深度學習框架(比如MxNet,Caffe等),訓練一個模型變得非常簡單,但是你對這些層具體是怎麼實現的瞭解嗎?你對softmax,sof

faster rcnn中 損失函式(一)——softmaxsoftmax losscross entropy的講解

先理清下從全連線層到損失層之間的計算。來看下面這張圖,(非常好的圖)。 T類  N表示前一層特徵層flatten後的數字   fltten後的特徵      無限大小的T類                     從0-1的T類向量                   

人臉識別:損失函式之softmax losscross entropy Loss

轉載blog:http://blog.csdn.net/u014380165/article/details/77284921 我們知道卷積神經網路(CNN)在影象領域的應用已經非常廣泛了,一般一個CNN網路主要包含卷積層,池化層(pooling),全連線層,損失層等。

卷積神經網路系列之softmaxsoftmax losscross entropy的講解

我們知道卷積神經網路(CNN)在影象領域的應用已經非常廣泛了,一般一個CNN網路主要包含卷積層,池化層(pooling),全連線層,損失層等。雖然現在已經開源了很多深度學習框架(比如MxNet,Caffe等),訓練一個模型變得非常簡單,但是你對這些層具體是怎麼實

目標檢測之Loss:softmaxLossCross Entropy的講解

最大似然估計:就是什麼樣的引數才能使我們觀測的這組資料的概率最大化.;我們知道卷積神經網路(CNN)在影象領域的應用已經非常廣泛了,一般一個CNN網路主要包含卷積層,池化層(pooling),全連線層,損失層等。雖然現在已經開源了很多深度學習框架(比如MxNet,Caffe等

SQL中inner joinouter joincross join的區別

tab 卡爾 ner 進行 from oss sql right ble 缺省情況下是inner join,開發中使用的left join和right join屬於outer join,另外outer join還包括full join.下面我通過圖標讓大家認識它們的區別。現

SQL夯實基礎(一):inner joinouter joincross join的區別

創建 color varchar mage bubuko where 是你 cross http 一、數據構建 先建表,再說話 create database Test use Test create table A ( AID int identity(1

F1 score | why softmax | loglikehood & cross-entropy

F1 score | why softmax | loglikehood & cross-entropy 最近找工作面試涉及到了很多研一時候學習的基礎知識,很多都忘記了,重新整理一下相關的問題,更側重和NLP相關的一些知識。 F1 score accuracy

機器學習筆記04:邏輯迴歸(Logistic regression)分類(Classification)

說明:本文章所有圖片均屬於Stanford機器學課程,轉載請註明出處 面對一些類似迴歸問題,我們可以通過線性迴歸方法來擬合一個函式,以此來預測資料,但它的輸出是連續的。有時候呢,我們需要一種方法給出一個判定結果,例如”同意(agree)”、”不同意

機器學習方法(五):邏輯迴歸Logistic RegressionSoftmax Regression

歡迎轉載,轉載請註明:本文出自Bin的專欄blog.csdn.net/xbinworld。 技術交流QQ群:433250724,歡迎對演算法、技術、應用感興趣的同學加入。 前面介紹過線性迴歸的基本知識,線性迴歸因為它的簡單,易用,且可以求出閉合解,被廣泛地

機器學習演算法之一-logistic迴歸softmax模型

開始一個新的系列,換一換口味 分析機器學習演算法的一般思路: 1、確定預測函式或者判別函式,一般表示為H函式; 2、確定Cost函式,表示的是預測輸出值與訓練資料之間的偏差; 3、確定優化演算法。 一、前言 logistic迴歸是常用的二分類模型,屬

Logistic迴歸softmax迴歸以及tensorflow實現MNIST識別

一、Logistic迴歸 Logistic迴歸為概率型非線性迴歸模型,是研究二分類結果與一些影響因素之間關係的一種多變數分析方法。通常是用來研究某些因素條件下某個結果是否發生。 在講解Logistic迴歸理論之前,我們先從LR分類器說起。LR分類器,即Logistic Regression Classifi

PythonPyTorch對比實現多標籤softmax + cross-entropy交叉熵損失及反向傳播

相關 關於 softmax + cross-entropy 的詳細介紹, 請參考 : BrightLamp. 多標籤softmax + cross-entropy交叉熵損失函式詳解及反向傳播中的梯度求導[EB/OL]. https://blog.csdn.net

SVM hinge loss / SoftMax cross entropy loss

損失函式(loss function) = 誤差部分(loss term) + 正則化部分(regularization term) 1. 誤差部分 1.1 gold term,0-1損失函式,記錄分類錯誤的次數 1.2 Hinge loss, 折葉損失,關於

2線性分類器基本原理-2.3線性分類器之SoftMax交叉熵損失(Cross-Entropy)

影象分類器模型的整體結構: 交叉熵(Cross-Entropy)損失 和 SoftMax SVM是最常用的兩個分類器之一,而另一個就是Softmax分類器,它的損失函式與SVM損失函式不同。對於學習過二元邏輯迴歸分類器的讀者來說,SoftMax分類器就可

分類邏輯回歸(Classification and logistic regression),廣義線性模型(Generalized Linear Models) ,生成學習算法(Generative Learning algorithms)

line learning nbsp ear 回歸 logs http zdb del 分類和邏輯回歸(Classification and logistic regression) http://www.cnblogs.com/czdbest/p/5768467.html

SVMlogistic regression的一些對比

一、SVM的常用目標函式形式 soft margin svm可表示為: 其中,C表示懲罰係數;C越大,表示對margin越嚴格,即對不滿足約束的樣本數要更少; 反之,C越小,表示對margin越寬鬆,即可接受不滿足約束的樣本數越多。 例如下圖所示:   二、SVM和logis

李巨集毅機器學習 P12 HW2 Winner or Loser 筆記(不使用框架實現使用MBGD優化方法z_score標準化的logistic regression模型)

建立logistic迴歸模型: 根據ADULT資料集中一個人的age,workclass,fnlwgt,education,education_num,marital_status,occupation等資訊預測其income大於50K或者相反(收入)。 資料集: ADULT資料集。