何時應該修改算法的評估指標

前言

我們可以將模型的訓練理解成為尋找靶心的過程,如果想要模型在驗證集和測試集上的表現都好的話,那麼就需要保證驗證集和測試集相對於訓練集而言它們的靶心都處於同一位置。

如果驗證集和測試集相對於訓練集的靶心有所偏差,這時候就需要考慮修改驗證集和測試集或修改驗證集和測試集的指標。本篇文章的主要內容來自於deeplearning.ai視頻教程。接下來我們通過兩個案例來說明一下什麼時候應該修改驗證集和測試集的數據,什麼時候需要改變它們的評估指標。

何時應該修改算法的評估指標

修改訓練集和驗證集的評估指標

何時應該修改算法的評估指標

我們有兩個垃圾郵件的分類器A和B,分類器A的錯誤率為3%,分類器B的錯誤率為5%,最開始評估分類器的指標是錯誤率,從數據上看A分類器的錯誤率明顯要低於分類器B,所以很當然的我們會選擇分類器A。通過實際使用兩個分類器發現,分類器A會將正常郵件當做垃圾郵件進行攔截處理,而分類器B對於部分的垃圾郵件沒有攔截功能而正常推送給用戶,而不會將正常郵件當做垃圾郵件進行攔截。從用戶角度考慮,當然不希望正常郵件被當做垃圾郵件進行攔截處理,萬一你攔截的是我的重要郵件,必定會對我造成較大的損失。相對於多看幾封垃圾郵件而言,我更希望多看幾封垃圾郵件,而不是我的正常郵件被攔截。評估指標存在的意義就是能夠讓我們從多個不同的模型中快速選擇效果最好的模型,從現在評估指標來看,很明顯不能滿足我們的要求,所以我們需要修改評估指標。

  • 如何修改評估指標
何時應該修改算法的評估指標

頭條沒法輸入公式就用圖片代替了

改變驗證集和測試集的數據

何時應該修改算法的評估指標

現在我們有兩個貓的分類器A和分類器B,訓練數據的圖片我們是從網上獲取的,圖片都是比較清晰的而且取景都是比較專業的,訓練兩個分類器獲取了兩個模型,通過評估指標錯誤率我們發現分類器A的性能明顯要優於分類器B。將兩個分類器訓練完成之後,我們獲取到兩個模型,將模型部署到應用時發現,分類器B的表現居然要比分類器A的表現好,通過調查發現,用戶上傳的圖片大多都是模糊的圖片而且取景也不是特別專業。而這與我們所希望的並不一樣,根據評估指標的結果來看,分類器A的性能應該要優於分類器B,所以這時評估指標已經不能夠很好的衡量模型的性能

。我們應該考慮修改驗證集和測試集的數據,增加一些模糊和取景不專業的圖片或者修改評估指標,使得我們的評估指標不僅能夠在驗證集和測試集上辨認好的模型,更能夠在實際使用中來辨認好的模型。

總結

我們可以將機器學習的過程分為兩個步驟確定目標和向這個目標靠近,可以將這個過程理解為一個射箭的學習,首先我們需要確定我的目標是射中靶心(確定目標),然後我們通過控制射箭的方向和力度以及風等因素,不斷使得我們射出的箭向靶心靠近(靠近目標)。所以說,對於機器學習來說目標其實就相當於評估的指標,我們通過使用各種各樣的機巧,調參等來提高和改善模型在驗證集和測試集上的評估指標,以提升模型的性能。如果評估指標選擇存在問題,那麼之後的工作只是在浪費時間。所以評估指標的選擇很重要,當發現評估指標存在問題時應該及時修改,避免後續工作不必要的浪費。


分享到:


相關文章: