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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

机器学习基础---pr曲线的绘制

發布時間:2023/12/14 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 机器学习基础---pr曲线的绘制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、舉個例子

總共有8個西瓜,有一個分類器,它的預測情況如下表

?設置不同閾值時,將得到不同的P值(Precision,查準率)和R值(Recall,查全率)

?

?

?

?

二、解釋

Precision-查準率-預測出來的正例中正確的比例---找得對

Recall-查全率-衡量正例被預測出來的比例---找得全

?

在機器學習中分類器往往輸出的不是類別標號,而是屬于某個類別的概率值,根據分類器的預測結果從大到小對樣例進行排序,逐個把樣例加入正例進行預測,算出此時的P、R值。
?

?

?三、繪制pr圖

模型訓練好了之后,對于二分類問題,可以預測每個測試樣本屬于某個類別的概率。
當我們設置不同閾值時,將得到不同的P值(Precision,查準率)和R值(Recall,查全率)
基于此,可以繪制PR曲線,python繪制PR曲線比較方便。
首先,可以使用precision_recall_curve函數得

import numpy as np import matplotlib.pyplot as plt from sklearn.metrics import precision_recall_curve import matplotlib.pyplot as plt import numpy as np from sklearn.metrics import precision_recall_curveplt.figure("P-R Curve") plt.title('Precision/Recall Curve') plt.xlabel('Recall') plt.ylabel('Precision') # y_true為樣本實際的類別,y_scores為樣本為正例的概率 # y_true = np.array([1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0]) # y_scores = np.array( # [0.9, 0.75, 0.86, 0.47, 0.55, 0.56, 0.74, 0.62, 0.5, 0.86, 0.8, 0.47, 0.44, 0.67, 0.43, 0.4, 0.52, 0.4, 0.35, 0.1]) y_true = np.array([0, 0, 0, 1, 0, 1, 1, 1]) y_scores = np.array([0.1, 0.2, 0.3, 0.3, 0.6, 0.7, 0.8, 0.9]) precision, recall, thresholds = precision_recall_curve(y_true, y_scores) # print(precision) # print(recall) # print(thresholds) plt.plot(recall, precision) plt.show()

?

總結

以上是生活随笔為你收集整理的机器学习基础---pr曲线的绘制的全部內容,希望文章能夠幫你解決所遇到的問題。

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