模型評價指標,精確,精準,召回真的那麼難麼?

引言

一般做機器學習任務,以預測某一個類別爲原則來評價原則。常用的術語。以病人爲例, 分爲 癌症患者, 非癌症患者, 確診的癌症患者, 誤診的癌症患者

  • positive :正樣本 – 癌症患者
  • negtive : 負樣本 – 非癌症患者
  • true :正確分類 – 明確確診,也就是模型判斷的正負
  • false : 錯誤分類 – 誤診
None Positive Negtive
True TP TN
False FP FN

評估指標

分類

故事: 一萬個影集模型檢查出來小黃片,小黃片一共有9000部,正常片 1000 部,用訓練好的模型識別出來了 8000部小黃片,其中200部是島國老師拍的非黃片,正常片模型識別出來 2000部, 其中1200 部是小黃片,可能因爲老師換了新人。

None 黃片 非黃片
7800 800
1200 200
  • 準確率:模型分類正確的樣本,佔了多少比例,這裏 86%
    在這裏插入圖片描述
  • 精確率: 在模型判別的正樣例中,多少是正確的 86.666 %
    在這裏插入圖片描述
  • 召回 :判斷對的正樣本在所有***真實正樣本***中的比例 97.5 %
    在這裏插入圖片描述

迴歸

RMSE

直觀看出模型好壞方案

ROC曲線. AUC 值

橫座標:False Positive Rate

  • FP / N 負樣本被判成正的,這些負樣本佔總體的比例

縱座標: True Positive Rate

  • TP / P 正確分類的正樣本佔正樣本的比例

如何繪製ROC

這裏有個很關鍵的評判標準,一個樣本,大於多少評爲正合適,ROC曲線就是這樣來的,這個評價的標準成爲截斷點。通過動態的調整截斷點,從最高的得分開始,逐漸調整到最低分,每個階段點都會對應一個FPR 和 TP,在ROC圖上繪製出每個截斷點對應的位置, 鏈接起來就得到最終的 ROC

模型的評估方法

留出法:將數據集 劃分爲兩個互斥的集合,其中⼀個集合作爲訓練集,另⼀個作爲測試集。在訓練集上訓練模型,在測試
集上測試誤差,作爲對泛華能⼒的評估。

k折交叉驗證:將數據集 劃分爲 個⼤⼩相似的互斥⼦集。每次
⽤ k - 1 個⼦集的並集作爲訓練集,餘下的⼦集作爲測試集。可得到 組訓練集、測試集。最終返回的是k個測試結果的均值。

自助法:對於樣本爲n 的集合, 進行 n 次有放回隨機採樣, 得到大小爲 n 的訓練集, n次採樣過程中,有的樣本會被重複採樣,有的沒有被抽出過,將這些沒有被抽出的樣本作爲驗證集。

擬合問題

過擬合會發生,訓練誤差小,測試誤差高,模型的泛化能力很低。

從公式的角度出發,順帶複習結構風險最小化和經驗風險最小化

經驗風險最小化

在這裏插入圖片描述

結構風險最小化

在這裏插入圖片描述
加入偏差與方差來看兩個風險函數, 經驗風險函數僅僅只有偏差,並沒有考慮到泛化能力,而結構風險函數考慮到泛化問題,加入了方差(也是正則化)。常說的 l0 normal l1 normal l2 normal,順帶說,l0 l1 更容易得到稀疏向量。

  • 偏差大,說明模型學習的能力還不足,沒有學習到模型的特徵,也叫欠擬合。對應圖像來說就是,打的太偏了,雖然很密集
    • 解決辦法
      • 做特徵工程,添加跟多的特徵項。如果欠擬合是由於特徵項不夠,沒有足夠的信息支持模型做判斷。
      • 增加模型複雜度。如果模型太簡單,不能夠應對複雜的任務。可以使用更復雜的模型,減小正則化係數。比如說可以使用SVM的核函數,增加了模型複雜度,把低維不可分的數據映射到高維空間,就可以線性可分,減小欠擬合。還可以使用一些集成學習方法。
      • 集成學習方法boosting(GBDT)
      • 減小正則化係數
  • 方差大,測試集過度學習,很大程度上學習到了噪聲的特徵,所以在驗證集上表現很差。雖然打到了,但是太散了,太散就說明,啥也學,過了。
    • 原因
      • 訓練數據集樣本單一,樣本不足。如果訓練樣本只有負樣本,然後那生成的模型去預測正樣本,這肯定預測不準。所以訓練樣本要儘可能的全面,覆蓋所有的數據類型
      • 噪聲影響過大
      • 模型過於複雜
    • 解決辦法
      • 在訓練和建立模型的時候,從相對簡單的模型開始,不要一開始就把特徵做的非常多,模型參數跳的非常複雜。
      • 增加樣本,要覆蓋全部的數據類型。數據經過清洗之後再進行模型訓練,防止噪聲數據干擾模型。
      • 正則化。在模型算法中添加懲罰函數來防止過擬合。常見的有L1,L2正則化。
      • 集成學習方法bagging(如隨機森林)能有效防止過擬合
      • 減少特徵個數(不是太推薦)

問:如果訓練樣本無窮大,模型在訓練集上的趨勢是什麼? bias 減小

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章