介紹各種常用的Metrics
這裡將介紹各種不同可以分析的Metrics,我引用以下的將不同的metrics分類的圖, 大家可以先參考看看,以下會針對上面兩部分的metrics做介紹
有相關問題,都非常歡迎找我討論, 我的gmail: jacky308082@gmail.com
本文開始!
Metrics
指標的意思是指你要用何種統計計算或公式來衡量你發展出的模型是好是壞,在這些指標來說,不是越大就代表越好,要依據不同的公式去判斷
我相信大家會知道關於MSE(平均平方誤差),MAE(平均絕對誤差)等計算,接下來我會略舉幾項大家知名的指標以及計算的公式,大家也可以移駕至這個網站去看相關的解說
這部分的metrics主要是適合在Regression(回歸)使用的metrics
1. MSE(Mean Squared Error)(平均平方誤差):
MSE =(預測值- 實際值)²加總/預測值個數
是指預測值和實際值中間的誤差平方/實際值總數,主要可以評估模型預測的好壞,並做不同模型間的比較,越大代表預測值與實際值之間的gap越大
2. MAE(Mean Absoluter Error)(平均絕對誤差)
MAE =|(預測值-實際值)|加總/預測值個數
3. R²(配適度)
SSE=(預測值 -實際值)²=MSE* 預測值個數
SSR=(預測值- 樣本平均回歸)² #樣本平均回歸使用最小平方法
SST=(原始數據-樣本平均回歸)²
SSE+SSR=SST
R² = SSR/SST = 1-SSE/SST
4. Adjust R²(調整後的配適度)
Adjust R² =1-SSE/p-1(樣本數)/SST/n(總數)-p(樣本數)-1
SSE 的自由度為p-1 SST的自由度為n-p-1
而接下來這部分的是適合在Classification(分類)使用的metrics
1. precision-recall(精確率 收回率):
在接受precicsion- recall前首先需要先介紹型一型二誤差, 型ㄧ型二誤差主要是透過
TP: 代表模型預測True,實際值也是True的(預測正確)
FP: 代表模型預測True,實際值是False
FN:代表模型預測False,實際值是True
TN:代表模型預測False,實際值是False(預測正確)
#在這裡提醒一下,這裡的正例反例不是代表對or錯,而是正例反例都是一種結果,只是真實情況裡有為正例或反例
- precision(精確率)= TP/(TP+FP) #判斷為True中實際值為True的機率
2. recall(召回率) = TP/(TP+FN) #判斷值裡面預測正確的機率
3.f1-score =2/(1/precision + 1/recall)=2(precision*recall)/(precision+recall) # f1- score 越高,模型越穩健
ROC-AUC (receiver operating characteristic curve)(接收者操作特徵曲線):
TPR = TP/(TP+FN)#(所有實際為正例的樣本中,被正確地預測為正例的機率)
FPR = FP/(FP+TN) #(所有實際為反例的樣本中,被錯誤地判斷為正例的機率)
這裡是指其實FPR和TPR的取得都是藉由篩選閥值(threshold)所得,使用不同的閥值就會有不同的在ROC上的點,最後再將其連成曲線,就成為ROC曲線 . #這裡再多做強調,所為的閥值就是指你必須超過一定的機率或者數量才能將獲得,關於ROC我會在下篇舉例時多加強調。
AUC 則是指曲線下面的面積
參考維基百科上對AUC的解釋,
AUC=1時,代表存在一個至少一個閥值能夠得出完美的預測
0.5<AUC<1時,優於隨機預測,若穩定的設定閥值的話,有預設價值
AUC=0.5,跟隨機預測ㄧ樣,模型沒有預測價值
AUC<0.5,比隨機預測還差,但只要總是反預測而行,就優於隨機預測
Accuracy (準確值):
Accuracy = (TP+FN)/(TP+FN+FP+TN) #即正確預測機率
log-loss:
屬於loss function的一環,可以藉由看此篇CSDN的文章你會更了解,也建議你去看李宏毅老師的youtube,裡面的數學推導講得很詳盡,真的很推薦去看
這些的指標接下來我的Machine Learning Project裡都會使用到,所以在這裡特別介紹給大家,還有很多的指標還沒介紹,之後我會把新的指標直接在project裡面介紹
如果對machine learning 或者NBA相關的問題, 都可以來信跟我討論, 我的gmail: jacky308082@gmail.com