讀書筆記《機器學習》 C2

2021-08-16 21:49:46 字數 3711 閱讀 4478

chapter 2

author:single rush

第2章 模型評估與選擇

date : 2018.3.13

summary of the terms

錯誤率(error rate):分類錯誤的樣本數佔樣本總數的比例,即如果在m個樣本中由a個樣本分類錯誤,則錯誤率e=

ame =a

m。 相應的,精度,即「精度=1-錯誤率」:(1

−am)

×100

% (1−

am)×

100%

。訓練集上的「誤差」稱為「訓練誤差」或者「經驗誤差」,新樣本上的「誤差」稱為「泛化誤差」。

希望得到泛化誤差小的學習器。

然而,我們事先並不知道新樣本是什麼樣,實際能做的是努力使訓練誤差最小化。

過擬合問題

「過擬合」(overfitting):當學習器把訓練樣本學得「太好」了,可能把訓練樣本自身的一些特點當做了所有潛在樣本都會具有的一般性質,就會導致泛化效能下降。

「過擬合」由多種因素導致,最常見的情況是由於學習能力過於強大。

「欠擬合」(underfitting):對訓練樣本的一般性質尚未學好。

「欠擬合」通常是由於學習能力低下而造成的。或者是訓練樣本數過少,訓練不足造成的。

欠擬合比較容易克服,而過擬合則很麻煩。

文獻[2]中(pp.11-12,參考自文獻[3])有對擬合問題較好的例子來解釋:

訓練資料集:t=

(x1,

y1),

(x2,

y2),

⋯,(x

n,yn

) t=(

x1,y

1),(

x2,y

2),⋯

,(xn

,yn)

擬合這條曲線,用m次多項式: fm

可見m為0或1時均為欠擬合,m為9時為過擬合。

使用乙個「測試集」(「testing set」)來測試學習器對新樣本得判別能力,然後以測試集上的「測試誤差」(「testing error」)作為泛化誤差的近似。

測試集應該盡可能與訓練集互斥,即測試樣本盡量不在訓練集中出現、未在訓練過程中使用過。

在此定義記號,本博文中完整資料集為

d d

,資料集為di

' role="presentation" style="position: relative;">did

i,訓練集為

s s

,測試集為

t' role="presentation" style="position: relative;">tt。

2.2.1 留出法(hold-out)

直接將資料集d劃分為兩個互斥的集合,其中乙個集合作為訓練集s,另乙份作為測試集t,即d=

s∪t,

s∩t=

∅ d=s

∪t,s

∩t=∅

。2.2.2 交叉驗證法(cross validation)

先將資料集d劃分為k個大小相似的互斥子集,即 d=

d1∪d

2∪⋯∪

dk,d

i∩dj

=∅(i

≠j) d=d

1∪d2

∪⋯∪d

k,di

∩dj=

∅(i≠

j)每個子集di

d

i都盡可能保持資料分布的一致性,即從d中通過分層採集得到。然後,每次用k-1個子集的並集作為訓練集,餘下的那個子集作為測試集;這樣就可獲得k組訓練/測試集,從而可進行k次訓練和測試,最終返回的是這個k個測試結果的均值。即t=

di,s

=⋃k1

dj(i

≠j) t=d

i,s=

⋃1kd

j(i≠

j)「k折交叉驗證」(「k-fold cross validation」),k最常用的取值是10,此時稱為10折交叉驗證;其他常用的k值有5、20等。

以自助取樣法(bootstrap sampling)為基礎。給定包含m個樣本得資料集

d d

,我們對它進行取樣產生資料集d′

' role="presentation" style="position: relative;">d′d

′:每次隨機從

d d

中挑選乙個樣本,將其拷貝放入d′

' role="presentation" style="position: relative;">d′d

′,然後再將該樣本放回初始資料集

d d

中,使得該樣本在下次取樣時仍有可能被採到;這個過程重複執行

m' role="presentation" style="position: relative;">m

m次後,我們就得到了包含

m m

個樣本得資料集d′

' role="presentation" style="position: relative;">d′d

′,這就是自助取樣的結果。

簡單估計得到樣本在

m m

次取樣中始終不被採到的概率是(1

−1m)

m=1e

≈0.368

' role="presentation" style="position: relative;">(1−

1m)m

=1e≈

0.368(1

−1m)

m=1e

≈0.368

d d

中約有36.8%的樣本未出現在取樣資料集d′

' role="presentation" style="position: relative;">d′d

′中。於是我們可將d′

d

′用作訓練集,d∖

d′d ∖d

′用作測試集;這樣,實際評估的模型與期望評估的模型都使用

m m

個訓練樣本,而我們仍有資料總量約1/3的、沒在訓練集中出現的樣本用於測試。這樣的測試結果,亦稱「包外估計」(out-of-bag estimate)。

2.2.4 調參與最終模型

引數配置不同,學得模型的效能往往有顯著差別。調參尤為重要。

驗證集:模型評估與選擇中用於評估測試的資料集。

數學基礎

reference:

[1]周志華. 機器學習 : = machine learning[m]. 清華大學出版社, 2016.

[2]李航. 統計學習方法[m]. 清華大學出版社, 2012.

[3]bishop c m. pattern recognition and machine learning (information science and statistics)[m]. springer-verlag new york, inc. 2006.

機器學習讀書筆記

第一章 引言介紹一些常識引入什麼是機器學習,機器學習的一些術語資料,規律,泛化,假設空間歸納偏好。1,假設空間 假設空間 監督學習的目的在於學習乙個由輸入到輸出的對映,這一對映由模型來表示。換句話說,學習的目的就在於找到最好的這樣的模型。模型屬於由輸入空間到輸出空間的對映集合,這個集合就是假設空間 ...

周志華 機器學習 讀書筆記

分類 classification 的是離散值,比如 好瓜 壞瓜 回歸 regression 的是連續值,例如西瓜成熟度 0.79 0.95 泛化 generalization 學得模型適用於新樣本的能力,稱為 泛化 generalization 能力.資料探勘 data mining 從海量資料中...

《機器學習實戰》讀書筆記

監督學習使用兩種型別的目標變數 之所以稱監督學習,是因為這類演算法必須知道 什麼,即目標變數的分類資訊 在無監督學習中,將資料集合分成由類似的物件組成的多個類的過程被稱為聚類 將尋找描述資料統計值的過程稱之為密度估計 是 否要 預測目標 變數的值 是 監督學習 目標變數型別 begin離散型 分類演...