from sklearn.metrics import accuracy_score
print
('準確率'
,accuracy_score(y_true,y_pred,normalize=
true))
print
('正確分類的數量'
,accuracy_score(y_true,y_pred,normalize=
false
))
1.混淆矩陣
2.精度(查準率)和召回率(查全率)
3.f1和fββ越大,召回率比重越大
from sklearn.metrics import f1_score
f1_score(y_true,y_pred)
from sklearn.metrics import fbeta_score
fbeta_score(y_true,y_pred,beta=
0.001
)
4.對數損失(log-loss)分類輸出不是類別,而是類別的概率,使用對數損失函式進行評價
#畫圖,只需要plt.plot(fpr,tpr),變數roc_auc只是記錄auc的值,通過auc()函式能計算出來
plt.plot(fpr, tpr, lw=
1, label=
'roc(area = %0.2f)'
%(roc_auc)
)plt.show(
)
#分類報告,包含precision、recall、f1-score、support
from sklearn.metrics import classification_report
classification_report(y_true,y_pred,target_names=
["class_0"
,"class_1"
])
1.平均絕對誤差mae
2.均方誤差mse—對應於歐式距離
4.決定係數r^2
from sklearn.metrics import mean_absolute_error
from sklearn.metrics import mean_squared_error
mae = mean_absolute_error(y_true, y_predict)
mse = mean_squared_error(y_true, y_predict)
rmse = np.sqrt(mse)
from sklearn.metrics import r2_score
r2_score =
1- mean_squared_error(y_true, y_predict)
/ np.var(y_true)
五、交叉驗證的綜合指標
from sklearn.model_selection import cross_val_score
'''(1)scoring: 打分引數
分類:『accuracy』、『f1』、『precision』、『recall』 、『roc_auc』、'neg_log_loss'
回歸:『neg_mean_squared_error』、『r2』
聚類:'adjusted_rand_score'、'completeness_score'
'''scores = cross_val_score(model, x, y=
none
, scoring=
none
, cv=
none
, n_jobs=1)
scores.mean(
)
機器學習分類模型效果評估指標
機器學習分類模型效果評估指標 準確率 精確率 召回率 f1 score 1 準確率 精確率 召回率 f1 score 我們以分類演算法為例,假設班裡有50個同學,其中男生30個,女生20個,我們根據身高 體重 頭髮長度 聲音分貝等等特徵,想找到所有女生,比如已經有這樣乙個分類器了,得到結果如下 這裡...
機器學習中的模型評估指標
機器學習中的模型評估指標 二 回歸問題 先明確幾個概念,真 假陽性,真 假陰性。對於這樣的乙個混淆矩陣,我們希望模型能夠做到,tp和tn盡可能地高,而fp和fn盡可能地低。但是對於乙個定量的評估來說,這樣只憑藉混淆矩陣看一眼來比較是不夠科學客觀的,因此後面也在真 假陽性,真 假陰性定義的基礎上,題出...
Tips 機器學習模型常見評估指標
1.混淆矩陣 confusion matrix positive 1 negative 0 positive 1 tp 1,1 fp 1,0 negative 0 fn 0,1 tn 0,0 列為模型 值,行為樣本實際值。2.準確率 精確率 靈敏度 召回率 特異性 f1 score 3.roc和au...