天天看點

機器學習第四章學習筆記

慣例開始的廢話

真的不開學了嗎,家裡蹲一學期?頂不住了

機器學習第四章學習筆記

作業part2

第三章寫過了,就寫寫第四章的學習筆記吧

第四章主線

生成模型

  • 第三章主要介紹的貝葉斯決策是生成模型,而生成模型有優勢,但是也有諸多的劣勢

    譬如高緯需要大量樣本,但是随着次元的升高,樣本的量是指數級增長。是以對于一些複雜情況,就需要判别模型。

    判别模型不僅不需要大量的樣本,而且還省去了觀測似然機率的估計

    然後介紹了線性判據,代入判别表達式,fx<0和fx>0為兩類,

    但是運用條件肯定是兩類或者多類要線性可分,如果線性不可分的情況,那麼線性判據就失效了。

    一般線性判據,如果是二維,就是直線,三維是平面,高緯就是超平面

    而其中兩個重要參數w和w0,就是主要要求得的參數,得到之後,線性分類器也就得到了

解域的概念

而在學習的過程中,首先的問題就是解域

這兩個參數的解究竟在哪個範圍,确定了範圍再求出最優解

也就是在解域中求得最優解

并行感覺機or串行感覺機

*首先對于資料預處理,使兩類在超平面的同一側

*并行感覺機和串行感覺機是以樣本的給出方式劃分的,樣本一次全部給出稱為并行,一個一個給出稱為串行

而使用的求解w和w0的算法類似,而且目标函數都是一緻的,也就是目的都是一緻的,使得被錯誤分類的樣本盡可能少

并行感覺機

并行感覺機的算法是,目标函數對于參數求偏導,當偏導數為0,則求得極值。

當然要求目标函數是凸函數或者凹函數,不然會出現求得的值并不是最優解的情況。

而并行感覺機算法中的參數的求解使用的是梯度下降法,其中步長的選取很重要

步長小了,疊代次數很多,學習很慢,步長大了,會越過極值點,産生震蕩。

而疊代過程的停止條件,所有訓練樣本代入判别函數,都>0

或者更新的目标函數值小于某個可以接受的誤內插補點

更常用的一種方法是疊代一定的次數就停止

串行感覺機

目标函數和并行感覺機相同

而算法也類似,隻是學習過程不太一緻,是一個一個去學習樣本,調整參數

感覺機的收斂

也就是前面的說的最後求出的解,究竟是極值還是最值,這邊給出了一個判據

感覺機的泛化

加入限制條件,避免要求解的參數為0

好像沒有正面,我也不懂為什麼,QWQ

Fisher判據

這個,在我的了解中,是一種不同的找出線性判據的方法而已,算是資料清洗吧,我覺得

主要就是利用一些方法進行降維,然後盡量增大類間距離(類間散度),減小類内距離(類内散度)

其中的目标函數也是根據這個思路設計的,然後求解思路還是目标函數對待求參數求偏導,差不多

支援向量機

大概設計用來和Fisher差不多,也是增大類間散度吧,我覺得目的是相近的

但是方法有差異,支援向量機,是選兩類中距離決策邊界最大的訓練樣本,使這兩個向量距離盡可能大,來達到增大類間散度的目的。這兩個向量被稱作支援向量。

而目标函數當然就是,這個距離d。

但是還存在着限制條件,就是樣本代入判别函數,大于1(對資料和判别函數進行了處理,是以不是大于0),也就是能夠對所有樣本進行正确分類。然後就涉及到了,限制條件下的最優求解問題。

拉格朗日乘數法

這個方法,我記得大一高數就學過,用來求解條件下的最優解

而這裡的方法是同樣的,将限制條件乘以變量,比如c

  • 然後fx=目标函數+c*限制條件
  • fx對x求偏導
  • fx對c求偏導

    這種方法,如果是多個限制條件,就對其餘的限制條件做相同操作。

    而使用的時候,要分不同的情況,是以需要提前求解出極值點,就是目标函數對x求偏導,使其為0

  • 極值點在可行域内,則直接取極值點就可以
  • 極值點在可行域邊界,要在該點出,fx和gx負梯度方向相反

拉格朗日對偶問題

在拉格朗日問題中,可能會出現對于限制條件進行操作後,仍有限制條件的可能,也就是拉格朗日函數帶有限制條件

那麼就需要拉格朗日對偶法,進行求解

方法是求得主函數L的下界,然後求下界對限制條件系數的最大值

使用對偶函數還有另一個優點,就是對偶函數是凹函數,可以保證局部極值點就是全局極值點

支援向量機學習算法

這一節,主要就是使用拉格朗日對偶方法對支援向量機進行求解

求得最佳的w和w0

然後

然後就沒了,線性模型是否可以用于回歸問題

當然是可以的,但是老師沒繼續錄了,gg