线性模型(3):Logistic Regression
此筆記源于臺灣大學林軒田老師《機器學習基石》《機器學習技法》
(一)Logistic Regression 原理
對于分類問題,假設我們想得到的結果不是(x屬于某一類)這種形式,而是(x屬于某一類的概率是多少)這種形式。
因為s的范圍是(-∞,+∞), 而概率的范圍是[0,1],所以我們需要一個映射函數:
我們如何應用概率知識來解決這一問題呢?一種想法是使用極大似然法。
現在出現了類似于linear Regression中的形式,我們可以求梯度。
根據上式,并不能得出向量w的close-form solution。
?
(二)Logistic Regression Algorithm
現在回想一下PLA算法,我們要從中提取出一種非常普遍的模式:iterative Optimization。
回想一下,我們在PLA算法中何如一步步改善向量w?首先選擇一個mistake 數據,然后用mistake數據矯正原來的w。
再抽象一下這個模型:
我們只需要關系兩個參數即可:η代表了wt的變化大小,v代表了wt的變化方向(|v|=1)。
?
現在我們采用iterative Optimization方法來求解logistic regression中的w。
(1)考慮v
假設,當eta非常小的情況下,根據Taylor展開公式,可以得到:
現在如果想使得上述公式最小,只需要使v為與方向完全相反的單位向量即可。
?
(2)考慮η
η太大太小都不好,最好是與的長度成比例。
?
(3)小結
?
(三) Stochastic Gradient Descent(SGD)
上述方法有什么問題嗎?
每一個迭代,我們都必須使用training dataset中所有的N個數據。1)效率很低。2)只適合batch protocol類型的問題。
我們怎么做呢?隨機選擇一個數據來計算,而不是使用所有的數據。
轉載于:https://www.cnblogs.com/wangyanphp/p/5443254.html
總結
以上是生活随笔為你收集整理的线性模型(3):Logistic Regression的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C#的类,构造函数以及Array阵列的数
- 下一篇: 团队作业(五)——旅游行业的手机App