ML學習筆記(2)邏輯回歸

2021-10-10 14:22:35 字數 2343 閱讀 2078

邏輯回歸模型一般用來解決二分類問題,就是輸出y只有兩個離散值,例如判斷中是否有貓,0表示nocat,1表示cat。通過這個例子簡要介紹神經網路模型中一些標準化的、有效率的處理方法和notations。

包含三個rgb通道,設描述一張尺寸(64,64,3)。對這樣一張要將x(64,64,3)轉化為一維向量,方法是每個通道一行行取,在連線起來。64x64x3=12288,轉化後的向量維度位(12288,1),為列向量,一般記為nx。

如果有m張,那麼整個訓練樣本x組成矩陣,維度是(nx,m)。這裡矩陣x的行nx代表了每個樣本x(i)特徵個數,列m代表了樣本個數。這裡,andrew解釋了x的維度之所以是(nx,m)而不是(m,nx)的原因是為了之後矩陣運算的方便。算是andrew給我們的乙個小小的經驗吧。而所有訓練樣本的輸出y也組成了一維的行向量,寫成矩陣的形式後,它的維度就是(1,m)。

如何使用邏輯回歸解決二分類問題**值h^=p(y=1|x),取值[0,1],這是與二分類有所區別。

使用線性模型,引入引數w和b。權重w的維度是(nx,1),b是乙個常數項。(w和b都是未知引數,需要後續反覆訓練優化得到)這樣,邏輯回歸的線性**輸出可以寫成:

邏輯回歸要求輸出在[0,1],此處引入sigmoid函式 ,**輸出函式就為

sigmoid函式是一種非線性的s型函式,輸出被限定在[0,1]之間,通常被用在神經網路中當作啟用函式(activation function)使用。sigmoid函式的表示式和曲線如下所示:

還有一點值得注意的是,sigmoid函式的一階導數可以用其自身表示:

邏輯回歸中,w和b都是未知引數,需要反覆訓練優化得到。因此,我們需要定義乙個cost function(代價函式,也叫損失函式,表示與實際的誤差),包含了引數w和b。通過優化cost function,當cost function取值最小時,得到對應的w和b。

如何得到cost function呢?

先從y^函式開始。我們把單個樣本的cost function用loss function來表示,根據以往經驗,如果使用平方錯誤(squared error)來衡量,如下所示:

但是,對於邏輯回歸,我們一般不使用平方錯誤來作為loss function。原因是這種loss function一般是non-convex的。non-convex函式在使用梯度下降演算法時,容易得到區域性最小值(local minumum),即區域性最優化。而我們最優化的目標是計算得到全域性最優化(global optimization)。因此,我們一般選擇的loss function應該是convex的。

loss function的原則和目的就是要衡量**輸出y^與真實樣本輸出y的接近程度。構建另一種loss function

上面介紹的loss function是針對單個樣本的。那對於m個樣本,我們定義cost function,cost function是m個樣本的loss function的平均值,反映了m個樣本的**輸出y^與真實樣本輸出y的平均接近程度。cost function可表示為:

cost function推導出來以後,需要求出使得j最小得w和b,使其盡可能接近於零。

利用梯度下降演算法來計算最合適得w和b。

梯度下降演算法是先隨機選擇一組引數w和b值,然後每次迭代的過程中分別沿著w和b的梯度(偏導數)的反方向前進一小步,不斷修正w和b。每次迭代更新w和b後,都能讓j(w,b)更接近全域性最小值。梯度下降的過程如下圖所示。

梯度下降演算法每次迭代更新,w和b的修正表示式為:

數學原理是運用泰勒一階展開來證明

學習筆記10

ML之邏輯回歸

問 邏輯回歸是解決回歸的問題嗎?答 不是,邏輯回歸解決的是分類問題。面對乙個回歸或者分類問題,建立代價函式,然後通過優化方法迭代求解出最優的模型引數,然後測試驗證我們這個求解的模型的好壞。logistic回歸雖然名字裡帶 回歸 但是它實際上是一種分類方法,主要用於兩分類問題 即輸出只有兩種,分別代表...

邏輯斯蒂回歸 機器學習ML

參考 1.統計學習方法 李航 2.邏輯斯蒂回歸是乙個非常經典的二項分類模型,也可以擴充套件為多項分類模型。其在應用於分類時的過程一般如下,對於給定的資料集,首先根據訓練樣本點學習到引數w,b 再對 點分別計算兩類的條件概率,將 點判為概率值較大的一類。1 線性模型 邏輯斯蒂回歸屬於對數線性模型,那什...

邏輯回歸學習筆記

邏輯回歸 邏輯回歸是乙個二分類問題,在分類過程值中可以得到代分類樣本所屬類別的概率。對於輸入x和輸出 結果y 邏輯回歸採用sigmoid函式,將實數域的x對映到 0 1 區間。sigmoid函式如下所示 h x 11 e x 則可以得到輸入x屬於正例和反例的概率,如下 py 1 x h x p y ...