日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

分类模型的评估

發布時間:2024/7/5 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 分类模型的评估 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?分類模型的評估

在許多實際問題中,衡量分類器任務的成功程度是通過固定的性能指標來獲取。一般最常見使用的是準確率,即預測結果正確的百分比,方法為estimator.score()

1?混淆矩陣

有時候,我們關注的是樣本是否被正確診斷出來。例如,關于腫瘤的的判定,需要更加關心多少惡性腫瘤被正確的診斷出來。也就是說,在分類任務下,預測結果(Predicted Condition)與正確標記(True Condition)之間存在四種不同的組合,構成混淆矩陣。

真正例(True Positive,TP):將一個正例判為正例

真反例(True Negative,TN):對一個反例正確的判為反例

偽反例(False Negative,FN,也稱):將一個正例判為反例

偽正例(False Positive,TP):對一個反例正確的判為真例

2?精確率(Precision)與召回率(Recall)

精確率:等于TP/(TP+FP),給出的是預測為正例的樣本中真實為正例的比例(判斷查得準)

召回率:等于TP/(TP+FN),真實為正例的樣本中預測結果為正例的比例(判斷查的全,對正樣本的區分能力)

3 其他分類標準

其他分類標準,除了正確率和精確率這兩個指標之外,為了綜合考量召回率和精確率,我們計算這兩個指標的調和平均數,得到F1(F1-score)指標,反映了模型的穩健型

之所以使用調和平均數,是因為它除了具備平均功能外,還會對那些召回率和精確率更加接近的模型給予更高的分數;而這也是我們所希望的,因為那些召回率和精確率差距過大的學習模型,往往沒有足夠的使用價值。

4?分類模型評估API

sklearn.metrics.classification_report

sklearn.metrics.classification_report(y_true, y_pred, target_names=None)

參數:y_true:真實目標值? ? ? ? ? ? ? ? ? ? ? y_pred:估計器預測目標值

target_names:目標類別名稱? ? ? ? ? ? ? ? ? ? ?return:字符串,三個指標值,每個類別精確率與召回率與F1

from sklearn.naive_bayes import MultinomialNB from sklearn.datasets import fetch_20newsgroups from sklearn.model_selection import train_test_split from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.metrics import classification_report #1加載20類新聞數據,并進行分割 newsgroups = fetch_20newsgroups(subset='all') #分割 x_train,x_test,y_train,y_test = train_test_split(newsgroups.data,newsgroups.target,test_size=0.25)#2 生成文章特征詞,對數據集進行特征抽取 tf = TfidfVectorizer() #以訓練集當中的詞的列表進行每篇文章重要性統計 x_train = tf.fit_transform(x_train) print(tf.get_feature_names()) x_test = tf.transform(x_test)# 進行樸素貝葉斯算法的預測 mlt = MultinomialNB(alpha=1.0) mlt.fit(x_train,y_train) y_predict = mlt.predict(x_test) print("預測的文章類別為",y_predict) score = mlt.score(x_test,y_test) print("準確率為:", score) print("每個類別的精確率,召回率和F1:", classification_report(y_test, y_predict, target_names=newsgroups.target_names))

?

總結

以上是生活随笔為你收集整理的分类模型的评估的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。