機器學習(13):吳恩達筆記

  • 前邊咱們已經學習了線性迴歸和邏輯迴歸、神經網絡一系列監督學習算法,而且得出結論:在機器學習中,重要的不是使用算法a仍是算法b,而是是否能收集到大量數據。而且算法的性能很是依賴使用者的我的水平,如特徵向量的選擇、正則化參數的選擇
  • 接下來,咱們討論最後一個監督學習算法:支持向量機(SVM)。與邏輯迴歸和神經網絡相比,SVM爲學習複雜的非線性方程提供了一種更強大的方式

從邏輯迴歸講起

  • 咱們從邏輯迴歸開始,一點點的修改,逐漸改成實質上的支持向量機:

(1)首先考慮,咱們要想邏輯迴歸幹啥。當樣本y=1時,假設函數h趨近1,即向量乘積遠大於0;當樣本y=0時,假設函數h趨近0,即向量乘積遠小於0
image
(2)接着咱們觀察邏輯迴歸的代價函數只有一個樣本即m=1時的樣子。咱們令y=1,獲得如圖曲線,這時想讓代價函數小的話,要求z遠大於0;咱們將這條曲線修改成兩條線段,右邊水平,這做爲支持向量機代價函數的一項。令y=0,獲得如圖曲線,想要代價函數小的話,要求z遠小於0;咱們繼續用兩條線段代替曲線,獲得支持向量機的另外一項。這兩項定義爲cost1(z)、cost0(z)
image算法

  • 下邊咱們開始構建支持向量機的代價函數:

(1)將邏輯迴歸代價函數的負號放到裏邊去,而後兩個對數項替換成cost函數
(2)去掉1/m這一項。由於在一個樣本集中,由於m是相同的,帶不帶對代價函數的大小比較沒影響
(3)概念上的變化,不用正則化參數權衡平均偏差和正則化項,而是用C參數權衡(實際是同樣的,能夠看作1/正則化參數)
通過三步加工,咱們就獲得了支持向量機的代價函數
image安全

  • 這裏要注意邏輯迴歸和支持向量機的區別:

(1)邏輯迴歸輸出的是機率,而後咱們人爲規定一個臨界值,判斷0仍是1
(2)而支持向量機直接預測y是0仍是1
image網絡

支持向量機:又稱大間距分類器

  • 支持向量機又稱爲大間距分類器,咱們來看一下爲何。咱們先考慮最小化支持向量機的代價函數要求什麼:

(1)當y=1時,後邊一項爲0,只有z大於等於1時前邊一項逼近0
(2)當y=0時,前邊一項爲0,只有z小於等於-1時後邊一項逼近0機器學習

所以與邏輯迴歸僅要求正負或者本身定臨界值不一樣,支持向量機要求更高,要求1和-1(我的理解:不是非黑即白了,在正負標籤間有一段空白間距,有了過渡地帶)。這就至關於嵌入了額外的安全因子,增大了準確性
image函數

  • 綜前,要讓偏差項爲0,就要知足這兩個條件中的一個:

(1)y=1時,偏差項大小由cost1決定,要求z大於1
(2)y=0時,偏差項大小由cost0決定,要求z小於-1
image性能

  • 因爲嵌入了安全因子,支持向量機的決策邊界更加穩健。這是由於決策邊界到訓練樣本有更大的最短距離。因爲支持向量機的這個特性,有時又被稱爲大間距分類器

image

  • 若咱們將C參數設置的很是大(100000),那麼偏差項的權重就會很是大,頗有可能由於一個異常點就改變了曲線的形狀,這顯然是不明智的

image

大間距分類背後的數學原理

  • 下邊咱們看一下,爲何這種代價函數可以讓決策邊界到訓練樣本有更大的間距
複習向量的內積運算

U轉置乘V=V乘U的轉置=V投影到U上的投影,乘U的模(投影是有符號的)
image學習

應用內積到支持向量機的代價函數
  • 咱們簡化代價函數的參數0爲0,只有兩個特徵,這使得咱們能把它放到二維座標中表示

(1)當知足前邊偏差項爲0的條件之一時,代價函數只有正則化項一項,能夠寫做假設函數參數模的平方
(2)咱們假設樣本集只有一個樣本,那麼z能夠寫做參數向量的模乘特徵向量在參數向量上的投影,將乘積和1或者-1比較
image
(3)由於參數0爲0,因此決策邊界經過原點。由於參數變量和決策邊界是正交的,因此參數向量和距離是平行的。當最短距離小時,特徵向量的投影值也小,要符合一、-1的話,要求參數向量的模大,而參數向量的模大的話,代價函數的值就會變大,這與咱們儘可能要求代價函數小矛盾。這就是支持向量機能產生大間距分類的緣由
imagespa

  • 綜上,支持向量機經過儘量縮小參數向量模的大小,來找到最大間距的決策邊界

核函數

  • 在擬合非線性邊界時,以前咱們通常經過構造多項式特徵變量解決,可是這種方法計算量太大。在支持向量機中,咱們經過構造新的特徵,來擬合非線性邊界
    image
如何構造新的特徵變量
  • 咱們手動選擇一些點,用函數度量x和每一個點的類似度,這些類似度構成新的特徵變量。其中,類似度函數就是核函數,核函數有許多種,這裏咱們以高斯核函數爲例

image

  • 核函數的直觀感覺:當x和咱們選擇的點接近時,分子接近0,f接近1;當x和選擇的點隔得遠時,分子比較大,f接近0.因此核函數就是度量x和標記點的類似度,接近爲1,遠離爲0。其中每一個特徵點l定義一個新的特徵變量f

image

  • 核函數參數對核函數的影響:咱們用等高線圖表示。當核函數參數變小,變密收縮;核函數參數變大,稀疏擴展

image

  • 定義了新的特徵變量後,看下新的假設函數:假設咱們已經獲得了假設參數。當訓練樣本接近l1點,f1接近1,f二、f3接近0,假設函數值爲0.5,預測y=1;當訓練樣本遠離時,f一、二、3都接近0,假設函數值爲-0.5,預測y=0

image

相關文章
相關標籤/搜索