新手在機器學習中常見的五大問題
處理缺失值
在數據預處理中,關鍵步驟是處理缺失的數據,因為機器學習模型不會接受NaN值作為它們的輸入。有很多種方法可以填充這些NaN值,但我們首先需要理解缺失值的重要性。
很簡單的一種方法是從機器學習數據集中刪除所有缺失值,但在這之前,請先檢查機器學習數據集中出現的NaN值的總體百分比。如果小于1%,我們可以刪除所有缺失值,否則我們需要通過選擇其他方法,如集中趨勢測量、KNN Imputer等來估算數據。
當我們在特征中使用數字時,我們使用平均或中位數。均值是平均值我們可以通過將一行所有值匯總然后除以它們的量來計算。中位數也表示一個平均值,中位數將數據按大小順序排列起來,形成一個數列,居于數列中間位置的那個數據。當一組數據中的個別數據變動較大時,常用中位數來描述這組數據的集中趨勢。
如果機器學習數據集中存在偏態(tài)分布,往往使用中位數要比均值好。
異常值/離群值
異常值是與其他觀測值有顯著差異的數據點。有時,這些異常值也可能很敏感。在處理異常值之前,建議先檢查機器學習數據集。
例如:
- 基于觀測降雨量的深度值預測中離群值具有重要意義。
- 房價預測中的異常值則沒有任何意義。
數據泄露
什么是 機器學習 模型中的數據泄漏問題呢?
當我們用于訓練模機器學習型的數據包含機器學習模型試圖預測的信息時,就會發(fā)生數據泄漏。這會導致模型部署后的預測結果不可靠。
這個問題可能是由于數據標準化或歸一化方法造成的。因為我們大多數人在將數據分割成訓練集和測試集之前會繼續(xù)使用這些方法。
選擇合適的機器學習模型
實時,我覺得不必要地轉向一些復雜的模型可能會對面向業(yè)務的人產生一些可解釋性問題。例如,線性回歸將比神經網絡算法更容易解釋。
主要根據數據集的大小和復雜性來選擇對應的機器學習模型,如果我們處理復雜的問題,我們可以使用一些高效的機器學習模型,如SVN、KNN、隨機森林等。
大多數時候,數據探索階段會有助于我們選擇對應的機器學習模型。如果在可視化中數據是線性可分離的,那么我們可以使用線性回歸。如果我們對數據不了解,支持向量機和KNN將會很有用。
另外還存在一個模型可解釋問題,例如,線性回歸比神經網絡算法更容易解釋。
驗證指標
指標是模型預測器和實際數據的定量度量。如果問題是回歸方面的,則關鍵指標是準確性(R2評分),MAE(平均絕對誤差)和RMSE(均方根誤差)。如果是分類方面的問題,關鍵指標則是精確,召回,F1score和混淆矩陣。