機器學習 周志華 筆記 第2章

2021-08-03 05:28:35 字數 1672 閱讀 5505

經驗誤差,也叫訓練誤差,在訓練集上的誤差,與之對應的是泛化誤差(generalization error,在新樣本上的誤差)。評估乙個好的模型顯然是泛化誤差最小。但是實際上事先並不知道新樣本是什麼,所以實際能做的是最小化經驗誤差。

經驗誤差也不能完全決定模型的泛化誤差,會存在過擬合現象。書中簡單說明了過擬合現象是各種學習演算法不可避免的問題,只有「減緩」。這裡簡單了解了np-hard問題。

在評估過程中需要使用乙個測試集,使用測試集上的測試誤差作為泛化誤差的近似。

留出法:盡可能保證s和t的資料分布一致,比如分類任務中,保證每類樣本數目比例相似;多次劃分,取平均;常見是2/3~4/5作為訓練集,剩餘作為測試集。

交叉驗證:先將d劃分為k個大小相似的互斥子集,同樣每個子集資料分布一致,然後選其中的k-1個作為訓練集,剩下1個作為測試集。k常用的取值為10,稱為10折交叉驗證(10-fold cross validation);與留出法類似,可以多次劃分,取平均。

留出法和交叉驗證法 由於預留一部分樣本作為測試,實際評估的模型使用的訓練集比d小,必然會因為訓練樣本規模不同引入估計偏差。

自助法:適用與小資料集。設d中有m個樣本,從中有放回的取m次,產生的資料集d'作為s。d'中會有部分重複樣本,且d中一部分樣本在d'中沒出現。d'中沒出現的樣本作為測試集t。

自助法 產生的訓練集改變了初始資料集的分布,也會引入估計偏差。

最簡單的解釋:

p:算起來很快的問題

np:算起來不一定快,但對於任何答案我們都可以快速的驗證這個答案對不對

np-hard:比所有的np問題都難的問題

np-complete:滿足兩點:

1. 是np hard的問題

2. 是np問題

接下來是比較嚴謹的定義:

問題:對於乙個包含由0和1組成的字串集合s,以某個01字串x作為輸入,要求某個圖靈機判斷x在不在s裡面。這裡的圖靈機可以先想象成平時我們用的計算機,s也可以被看成我們要解決的問題。注意我們的問題非常簡單,就是要判斷某個字串x是否在某個集合s裡面,下面是定義:

p:有乙個圖靈機在多項式時間內能夠判斷x是否在s裡面

np:有乙個圖靈機m,如果某個字串x在s裡面,那麼存在乙個驗證字串u(注意這個u是針對這個x的,而且長度必須是x長度的多項式

np-hard:如果某個問題s是np-hard,那麼對於任意乙個np問題,我們都可以把這個np問題在多項式時間之內轉化為s,並且原問題的答案和轉化後s的答案是相同的。也就是說只要我們解決了s,那麼就解決了所有的np問題。

np-complete:乙個問題既是np-hard,又在np裡面;也就是說

1. 解決了這個問題我們就解決了所有np問題

2. 這個問題本身也是個np問題

《機器學習》(周志華) 第3章 線性模型

一 線性回歸 線性回歸沒什麼好說的,它的思想是採用對輸入樣例各個特徵進行線性加權的方式得到 的輸出,並將 的輸出和真實值的均方誤差最小化。說白了如果輸入樣例只有乙個特徵,那這個過程就是用一條直線去擬合平面直角座標系上的點 如果有兩個特徵,表現在平面直角座標系上就是用一條直線將用不同標記 如xx和oo...

機器學習周志華筆記

1,監督學習 分類 回歸 無監督學習 聚類 2,決策樹 根據資訊增益的大小來確定節點 資訊熵 描述事務確定性程度的值 需要多少個bit來描述資訊 ent d pklog2pk 資訊增益 資訊熵 某個屬性劃分的平均資訊熵 該屬性劃分純度 3,支援向量機中對超平面的理解 劃分超平面用以下線性方程表示 w...

周志華 機器學習 筆記

學習演算法自身的歸納偏好與問題是否相配,往往會起到決定作用。對於上面這句話 你的輸入資料被怎麼處理,最終得到什麼結果,我認為偏好指的就是這個處理的過程。線性非線性?那些feature忽略掉?怎麼利用這些資料?更具體一些,你用網路處理,還是傳統方法,資料的分布和你的處理方法相符嗎?沒有免費的午餐定理 ...