cost函式形式:
簡單回顧一下幾個變數的含義:
表1 cost函式解釋
x(i)
每個樣本資料點的特徵值
y(i)
每個樣本資料的所屬類別標籤
m樣本資料點的個數
hθ(x)
樣本資料的概率密度函式,即某個資料屬於1類(二分類問題)的概率
j(θ)
代價函式,估計樣本屬於某類的風險程度,越小代表越有可能屬於這類
我們的目標是求出θ,使得這個代價函式j(θ)的值最小,這裡就需要用到梯度下降演算法。
梯度下降演算法
對於乙個函式,我們要找它的最小值,有多種演算法,這裡我們選擇比較容易用**實現和符合機器學習步驟的梯度下降演算法。
先來看看梯度下降演算法中,自變數的迭代過程。表示如下
可以看到,這是乙個θ值不斷迭代的過程,其中α是學習速率,就是θ的移動「步幅」,後面的偏導數數就是梯度,可以理解為cost函式在θ當前位置,對於j位置特徵的下降速度。
對於二維空間,梯度可以理解為函式影象的切線斜率。即:特徵是一維的
對於多維特徵,cost函式的影象就應該是這樣的,下面舉個例子:
圖1 cost函式舉例
這是乙個二維特徵的cost函式的影象,這個時候,梯度有無限多個,我們不能只說cost函式的梯度,應該說,cost函式在某個方向上的梯度。例如,cost函式在θ0方向上,在(θ0=m,θ1=n)上的梯度就是cost函式與θ1=n這個平面的交線在(m,n)處的斜率。
上面的描述比較抽象,簡單說來,假設影象就是乙個小山坡(有點像吧),你站在影象的(m,n)點處,朝θ0的方向看過去,看到的「山坡」的「坡度」就是上面所說的梯度了。
這個迭代過程,用形象化的語言描述,就是:
我站在山坡上,找到乙個初始點θj,每次我沿著某乙個方向走α這麼長的路,由於總是朝著梯度的方向走,我總會走到山坡底(也就是cost函式的極小值)。
然而,這樣的「盆地」可能有多個,我們不同的走法,可能會走到不同的山底,如圖:
圖2 多「山谷」cost函式
這裡的兩條路線分別走向不同的山谷,這就說明:梯度下降演算法只能求出乙個區域性最小值,不一定是全域性最小值,但這不影響它是乙個好的方法。
邏輯回歸 損失函式與梯度下降
由於二分類結果是1或者0,這與數學的階躍函式很類似,但是階躍函式在x 0的位置會發生突變,這個突變在數學上很難處理。所以一般使用sigmoid函式來擬合 g z 1 1 e z 1 具體應用到邏輯回歸演算法中 z 0 1x1 2x2 nxn i 0n i xi tx 2 其中x i 表示樣本屬性 對...
1 回歸 一元線性回歸 代價函式 梯度下降法
1 回歸是達爾文表弟發現的,就是說人類總體有乙個平均身高。那個高個子生的孩子都個高,矮的孩子生的矮。但是他們的下一代大部分都往平均身高長,也就是說特別高的人,他們的孩子會很高,但是往往比他們自己矮。特別矮的人他們生的孩子會矮一些,但是會比自己的父母高,他們都有這種趨勢。表弟管這個叫做回歸。2 一元線...
邏輯回歸與梯度下降法全部詳細推導
from sklearn.processing import standardsacler sc standardscaler 例項化 sc.fit x train sc.transform x train 以上兩句可以並寫成一句sc.fit transform x trian 我們使用相同的放縮引...