第三周 邏輯回歸與正則化
學完前三周簡要做個總結,梳理下知識架構:
第一講 邏輯回歸Logistic Regression
1.分類問題Classification Problem
for example
->Email: Spam / Not Spam 判斷一封郵件是不是垃圾郵件?
->Online Transaction:Fraudulent(Yes/NO)?判斷某個網絡交易是否是詐騙?
->Tumor:Malignant / Benign?判斷惡性良性腫瘤是惡性還是良性?
綜上,分類問題就是這樣一類問題:針對某個實際樣本,根據某種标準,判斷它屬于哪一個類别,其最終結果是離散的輸出值。
分類問題在生活中很常見,除了以上的例子外,想對某水體采樣判斷水質的酸堿性、對某地大氣采樣判斷其空氣污染級别,以上問題的解決都屬于今天我們讨論的話題。
2.名次解釋
對于分類classification問題,要建構邏輯回歸模型去預測,注意:這裡的邏輯回歸雖然也有‘回歸’二字,但并不是針對回歸問題而言,因為其預測的結果是離散值,是以不要被“回歸”二字混淆,邏輯回歸并不屬于回歸問題。
3.假設函數Hypothesis
分類問題要求Classification: y = 0 or 1
相應地預測結果 h(x) need to be limited to : 0 <= h(x) <= 1
是以,對于邏輯回歸中的假設函數我們有如下定義(線上性回歸模型上進行改進):
當樣本預測結果h(x)>=0.5時,預測輸出值y=1;若h(x)<0.5時,預測輸出值y = 0;
是以這使得假設函數h(x)有這樣的實體意義:h(x)表征預測結果y=1的機率;
4.決策邊界Decision boundary
決策邊界是假設函數h(x)的一個屬性,當通過訓練集拟合出了一條曲線-----即x對應的θ确定,那麼相應的決策邊界也就确定。
決策邊界就是θ^(T)x=0的曲線,曲線的兩側分别對應y=0 or 1。根據一個樣本落在曲線的哪一側,進而對結果進行決策。
4.代價函數J(θ)
代價函數J如果采用線性回歸模型中的平方誤差函數定義,得到的J是一個non-convex(凸),采用梯度下降不易得到全局最優解,這裡我們采用機率論中的極大似然估計對J做一個凸優化,有:
整理可得:
代價函數雖然重新定義,但是更符合邏輯問題的預測情況,當y=1時:若h(x)->1,cost->0;若h(x)->0,cost->
∞,代價函數J很好的展現了“代價”這一含義。
★★★5.邏輯回歸模型Logistic Regression Model
與線性回歸模型的差別:y = 0 or 1
0 <= h(x) <= 1
①假設/拟合函數Hypothesis:
②參數Parameter:
③代價函數Cost Function:
④目标Goal:
對于邏輯回歸模型Logistic Regression Model的求解主要有:梯度下降和進階優化算法。
6.梯度下降Gradient Decent
梯度下降算法在第二周的線性回歸模型中有較長的描述,思路就是沿着J(θ)偏導數的方向以α的步伐下降,同時同步更新θ,疊代下去直至J(θ)收斂。
對于Logistic Regression由于J(θ)有變化,梯度下降算法雖然在原理上沒有任何變化,就其表達形式我們也重新做一下推導:
◆對于θ的更新第二個等号的後面表達式的由來,就是對J(θ)求偏導,筆者曾經詳細的推導過,利用了一點g(z)函數的性質和适當的換元,感興趣的讀者可以試着推到下,最終你會驚人的發現:邏輯回歸在改變J的前提下梯度下降算法的表達形式與Linear Regression表達形式出奇的一緻:-),當然,h(x)的形式不同啦!QAQ
7.進階優化算法Advanced Optimization
Andrew Ng在這裡講到了三種進階優化算法,它們的進階是指相對于梯度下降算法而言,有更快的收斂速度和自适應性,無需人工選擇學習速率α,缺點就是太複雜。
Andrew Ng坦言,對于這些進階優化算法,重要的是成功應用這些算法于不同的學習問題,而不太需要真正了解這些算法的内環間在做什麼。
8.多類别分類問題Multi-class classification
之前講的都是兩種輸出y = 0 or 1,實際生活中會遇到多種類别的問題,解決這類多類别分類問題的基礎,就是之前的邏輯回歸。
for example
Weather : Sunny , Cloudy , Rain , Snow(預測天氣情況)
Email tagging : Work , Friends , Family , Hobby(郵件歸類)
這時候相應的,y = 1 , 2 , 3 ,4 ....
One-vs-all思路:
選中某一類,其餘歸于一類,對于這樣的邏輯回歸問題進行求解得到分類器h1(x);
再依次選擇其他類别,分别求解得到h2(x)....hn(x)(假設有n類)
最終,對某個樣本x進行預測時,挑選hi(x)中的最大值(可以了解為交集)
第二講 正則化Regularization
正則化是一種處理過拟合問題的有效手段,Andrew Ng調侃道熟練掌握和使用梯度下降+進階優化算法+正則化,就能在silicon valley混得不錯TAT.
1.過拟合現象overfitting
所謂的過拟合,就是特征量備援,導緻拟合函數雖然能夠很好的滿足訓練集,但是波動性大、方差大,對于新的樣本值不能很好的預測(用老話講,有點“過猶不及”的味道)
以下是欠拟合、正确拟合、過拟合的圖示比較,更直覺一些:
解決過拟合的方法,這裡介紹用處很大的正則化方法Regularization
★★★2.正則化對代價函數的改進
思路:引入θ求和項對1-n的θ進行懲罰,λ稱為正則化參數
因為有sigmaθ項的存在,在最小化代價函數的最終結果除了θ0外所有的θ都趨近于0。
當λ很大時,拟合曲線趨近于一條水準直線,結果欠拟合,且梯度下降算法不能很好工作,通常λ選作1,就可以優化過拟合的情況。
至于如何将正則化的原理應用到線性回歸模型、邏輯回歸模型中去,就需要包括筆者在内的大家在實際問題中去動手實踐了!~
第三周的課程結束,伴随着寒假的來臨,臨近新年要給自己大大的禮物才是,明天week4,Go~