機器學習-Logistic function(Sigmoid function)

下面給出H函數 
git

由這個函數生成的曲線稱爲Sigmoid曲線
算法

先不從數學上說爲何這個模型中二元分類上比線性模型好,單純從圖形上看就能夠獲得直觀的結論 
首先Y值域在[0,1],其次圖形中中間陡峭而兩邊平緩,符合二元分類的樣本點特性
函數

肯定了模型,下面要作的是fit最優的θ,仍然是採用最大似然法,即找出對訓練數據可能性最大的那個θpost

前面對於線性迴歸問題,符合高斯分佈(連續迴歸問題每每符合高斯分佈),最終咱們由最大似然推導出最小二乘迴歸 
可是對於二元分類,符合伯努利分佈(the Bernoulli distribution, 又稱兩點分佈,0-1分佈),由於二元分類的輸出必定是0或1,典型的伯努利實驗 
by the way,二項分佈是n次獨立的伯努利實驗造成的機率分佈,當n=1時,就是伯努利分佈 
一樣,若是離散輸出是多個值,就是符合多項分佈 
學習

看看由最大似然能夠推導出什麼 
首先給出伯努利分佈 
spa

是否好理解,給定x;θ,y=1的機率等於h的值,看看圖中,固然是h的值越大越可能爲1,越小越可能爲0 
那麼這個式子能夠合併寫成,比較tricky的寫法,Y爲0或1,總有一項爲1 
那麼θ的似然函數定義爲,θ的可能性取決於模型對訓練集擬合的好壞 
3d

一樣爲了數學計算方便,定義log likelihood, 
blog

很顯然,對於伯努利分佈,這裏沒法推導出最小二乘
下面要作的是找到θ使得ℓ(θ)最大,因爲這裏是找最大值而非最小值,因此使用梯度上升(gradient ascent),道理是同樣的 
首先計算梯度,計算過程參考原文 
數學

因此最終隨機梯度上升rule寫成, 
這個梯度公式,奇蹟般的和線性迴歸中的梯度公式表面上看是同樣的,能夠仔細比較同樣的 
之因此說表面上,是由於其中的是不一樣的,這裏是logitics函數。
it

Perceptron Learning Algorithm(感知機算法)

這裏談感知機,好像有些離題,可是你看下感知機的函數 

單純從直觀圖形的角度,彷佛是邏輯函數的簡化形式 
邏輯函數是連續的在[0,1]區間上,而感知機直接非0則1,參考下圖紅線 

一樣使用梯度降低的感知機算法也是和上面相同的形式 

一樣不一樣的僅僅是h(x)  1960s,感知機被看做是大腦工做中獨立神經元的粗糙的模型,因爲簡單,會用做後面介紹的學習算法的起點  雖然直觀看上去感知機和以前看到的logistic迴歸或最小二乘迴歸很像,可是實際上是很是不同的算法  由於,對於感知機,很難賦予一種有意義的機率解釋(probabilistic interpretations),或使用最大似然估計算法來推導感知機算法  而對於最小二乘或logistic均可以給出像高斯分佈或伯努利分佈的機率解釋,並能夠使用最大似然進行推導

相關文章
相關標籤/搜索