天天看點

機器學習基礎——模型選擇和評估一、歸納偏好二、模型選擇

文章目錄

  • 一、歸納偏好
    • 概念
    • 重要性
    • 确立正确的偏好的原則
    • 沒有免費的午餐定理
  • 二、模型選擇
    • 模型選擇遇到的困難
    • 模型評估
    • 性能度量
      • 1、分類
      • 2、回歸
      • 3、聚類

一、歸納偏好

概念

歸納偏好指機器學習算法在學習過程中對某種類型假設的偏好。

假 設 − > { 盡 可 能 一 般 适用情況盡可能多 盡 可 能 特 殊 适用情況盡可能少 假設-> \begin{cases} 盡可能一般& \text{适用情況盡可能多}\\ 盡可能特殊& \text{适用情況盡可能少} \end{cases} 假設−>{盡可能一般盡可能特殊​适用情況盡可能多适用情況盡可能少​

例如:若資料包含噪聲,則假設空間中有可能不存在與所有訓練樣本都一緻的假設。在這種情況下,通常認為兩個資料的屬性越相近,則更傾向于将它們劃為同一類。對于出現相同屬性卻不同類的情況,可以認為是它屬于與之最近鄰的資料的屬性類别;或者直接删除,但會丢失部分資料。這就是一種歸納偏好用于假設選擇的例子。

重要性

任何一個有效的機器學習算法必有其歸納偏好,否則它将被假設空間中看似在訓練集上”等效“的假設所迷惑,而無法産生确定的學習結果。

例:若認為相似樣本應有相似的輸出,結果可能是平滑的曲線。

确立正确的偏好的原則

  • 奧卡姆剃刀(Occam’s razor):若有多個假設與觀察一緻,則選最簡單的那個。
  • 根據算法性能:好的歸納偏好對應學習算法所作出的關于”什麼樣的模型更好“的假設。在實際運用中,這個假設是否成立(即,歸納偏好是否與問題比對)大多數直接決定了算法能否取得更好的性能。

沒有免費的午餐定理

沒有免費的午餐定理 (No Free Lunch Theorem , NFL定理):在沒有實際背景下,沒有一種算法比随機猜想的算法效果更好。

NFL定理的重要意義:在脫離實際情況下,空泛地談論哪種算法好壞是毫無意義的,要談論其優劣必須針對具體的學習問題。

二、模型選擇

模型選擇遇到的困難

模型選擇的理想方案是:對候選模型的泛化誤差進行評估,然後選擇泛化誤差最小的那個模型。

實際上,我們無法直接獲得泛化誤差,而訓練誤差又由于過拟合現象的存在就不适合作為标準。

解決方案:使用測試誤差近似泛化誤差。(實際運用中,還會考慮時間開銷、存儲開銷、可解釋性等方面的因素)

模型評估

使用測試誤差近似泛化誤差。

  • 在沒有獨立的測試集的前提下,需要對已有的資料集進行劃分産生訓練集和測試集用于訓練和測試算法。是以,劃分資料的方法有以下幾種。
方法 原理 注意 優缺點
留出法 将資料集劃分為兩個互斥的集合分别作為訓練集和測試集

1、要盡可能保持資料分布一緻性,否則會引入偏差;

2、一般采用若幹次随機劃分,重複進行實驗評估取平均作為最終的結果;

3、常用2/3~4/5的樣本作為訓練集,其餘為測試集。

容易引入額外的偏差;
交叉驗證 将集合劃分成k個相似的互斥子集,每次用一個做為測試集,k-1個作為訓練集,k次後取平均或投票 結果更加精确,但是計算開銷大
自助法 有放回的随機從n個樣本中抽取m次

1、在資料集小,難以存放劃分時很有用;

2、能産生不同的訓練集,對內建方法有很大好處;

3、改變了初始資料集分布,引入估計偏差

性能度量

性能度量時衡量泛化能力的評價标準,它反映了任務需求,在對比不同模型的能力時,使用不同模型能力時,使用不同的性能度量往往會導緻不同的評價結果。

1、分類

  • 錯誤率與精度:分類錯誤/正确樣本占樣本總數的比例。
  • 混淆矩陣
    真實\預測
    TP(真正例) FN(假反例)
    FP(假正例) TN(真反例)
  • 準确率:預測為正的所有樣中有多少是真正的正樣本。 P r e c i s i o n = T P T P + F P Precision=\frac{TP}{TP+FP} Precision=TP+FPTP​

    召回率:為正的所有樣本中有多少被預測為真。 P r e c i s i o n = T P T P + F N Precision=\frac{TP}{TP+FN} Precision=TP+FNTP​

    準确率和召回率,是一對沖突的度量,準确率越高,召回率反而越低。當然我們希望兩者都高,一般情況下,我們取兩者達到平衡的點(P-R曲線)。

  • P-R曲線 \ BEP:
    機器學習基礎——模型選擇和評估一、歸納偏好二、模型選擇
    如上圖,A、B、C三個模型的P-R曲線中,A的平衡點BEP最大,是以,A模型相對B\C更優。
  • F1分數:也是一種平衡準确率和召回率的度量。 F 1 = 2 1 P r e c i s i o n + 1 R e c a l l = 2 P r e c i s i o n ∗ R e c a l l P r e c i s i o n + R e c a l l F1=\frac{2}{\frac{1}{Precision}+\frac{1}{Recall}}=\frac{2Precision*Recall}{Precision+Recall} F1=Precision1​+Recall1​2​=Precision+Recall2Precision∗Recall​
  • ROC \ AUC:
    機器學習基礎——模型選擇和評估一、歸納偏好二、模型選擇
    ROC(受試者工作特征曲線)以假正率為橫坐标,以真正率為縱坐标,曲線下方的面積(AUC)越大意味着分類效果更好。
  • 對數損失 \ 邏輯回歸損失 \ 交叉熵損失: L = − [ y log ⁡ ( y ^ ) + ( 1 − y ) log ⁡ ( 1 − y ^ ) ] L=-[y\log(\hat y)+(1-y)\log(1-\hat y)] L=−[ylog(y^​)+(1−y)log(1−y^​)]
  • hinge損失(svm): L ( w , y ) = m a x { 0 , 1 − w y } = ∣ 1 − w y ∣ + L(w,y)=max\{0,1-wy\}=|1-wy|_+ L(w,y)=max{0,1−wy}=∣1−wy∣+​

2、回歸

  • MAE: M A E ( y , y ^ ) = 1 m ∑ i m ∣ y i − y ^ i ∣ MAE(y,\hat y)=\frac{1}{m}\sum_i^m|y_i-\hat y_i| MAE(y,y^​)=m1​∑im​∣yi​−y^​i​∣
  • MSE: M S E ( y , y ^ ) = 1 m ∑ i m ( y i − y ^ i ) 2 MSE(y,\hat y)=\frac{1}{m}\sum_i^m(y_i-\hat y_i)^2 MSE(y,y^​)=m1​∑im​(yi​−y^​i​)2
  • R^2: R 2 ( y , y ^ ) = 1 − ∑ i m ( y i − y ^ i ) ∑ i m ( y i − y ˉ i ) R^2(y,\hat y)=1-\frac{\sum_i^m(y_i-\hat y_i)}{\sum_i^m(y_i-\bar y_i)} R2(y,y^​)=1−∑im​(yi​−yˉ​i​)∑im​(yi​−y^​i​)​

3、聚類

聚類是将樣本劃分為若幹互不相交的子集(樣本簇),當然我們希望是簇内相似度高,簇間相似度低。

此時需要性能度量,一般分兩類:

  • 外部名額:将聚類結果與某個參考模型作比較。
  • 内部名額:直接對聚類結果進行分析,不進行參考。

繼續閱讀