以下是臺大林軒田老師講的機器學習基石第10課的學習筆記 。
軟性二值分類(soft binary classification)
目標函數
這裏我們的二值分類和硬性二值分類的數據是一樣的,但是目標函數是不一樣的。而軟性二值分類所真正需要的數據是跟目標函數一樣的概率,但是我們收集的數據卻是分類的結果。
logistic hypothesis
對於提取的特徵向量:
計算各個分量的加權分數,但我們需要把這個分數轉化爲0-1之間的概率值。(因爲我們的目標函數是這個)
用到的轉換函數叫logistic函數
這樣我們的logistic hypothesis就是:
而其中的的logistic function(sigmoid函數就一種)可以爲:
sigmoid型函數表示是一個s型的函數。
logistic 迴歸
作法
用 來近似目標函數 f(x)=P(y|x)
error measure錯誤衡量
我們這裏也要找一個Ein來minimise一下 ,當我們的目標是一個概率p的時候,我們可以用一個特殊的方式。
這個方式就是最大似然估計的方法,我們假設目標函數爲:
則對於一個數據,它取各個值的概率分別爲:
那麼我們可以從數據中取出N個樣本(in sample),觀測它們的分佈,我們想要達到的目標是我們的目標函數能夠讓取出這N個觀測的概率儘可能的大,這個就是最大似然估計得到最優化的方法。
用f(x)替換成
用我們的hypothesis替換f:
讓這個可能性最大的g就是我們要找的g
現在我們發現這個s型的logistic函數有對稱性
所以我們可以用這個性質來簡化優化函數,因爲p(xi)對於所有的h是一樣的,所以沒什麼關係
然後我們用我們的hypothesis的定義式子來替換這個h,要找likelihood的最大值,我們把連乘通過取對數換成連加,通過帶入logistic函數最終得到Ein最小化的形式。這個error 衡量我們叫交叉熵錯誤(信息熵的概念)。
最優化
對這個Ein 求梯度爲0 的w的值
要想讓這個Ein的梯度小到接近0,就不斷的嘗試 啓發式搜索 、迭代優化(iterative optimization)
v 是方向 η是步頻
每一步都要用貪心的策略,找一個下降最快的方向
這個優化對象不是線性的,我們應該使用泰勒展開的形式,把公式近似替代爲線性的形式
梯度下降法 gradient descent
v的方向取梯度的反方向
η 應該和梯度的大小成比例,這樣才能最終收斂。這樣和v的分母抵消,最後形成定值學習率(fixed learning rate )
下面是logistic 迴歸算法用梯度下降法做優化