最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解使用python繪制混淆矩陣(confusion_matrix)

 更新時間:2019年07月14日 16:09:16   作者:ai-exception  
這篇文章主要介紹了詳解使用python繪制混淆矩陣(confusion_matrix),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

Summary

涉及到分類問題,我們經(jīng)常需要通過可視化混淆矩陣來分析實驗結(jié)果進而得出調(diào)參思路,本文介紹如何利用python繪制混淆矩陣(confusion_matrix),本文只提供代碼,給出必要注釋。

Code​

# -*-coding:utf-8-*-
from sklearn.metrics import confusion_matrix
import matplotlib.pyplot as plt
import numpy as np

#labels表示你不同類別的代號,比如這里的demo中有13個類別
labels = ['A', 'B', 'C', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O']


'''
具體解釋一下re_label.txt和pr_label.txt這兩個文件,比如你有100個樣本
去做預(yù)測,這100個樣本中一共有10類,那么首先這100個樣本的真實label你一定
是知道的,一共有10個類別,用[0,9]表示,則re_label.txt文件中應(yīng)該有100
個數(shù)字,第n個數(shù)字代表的是第n個樣本的真實label(100個樣本自然就有100個
數(shù)字)。
同理,pr_label.txt里面也應(yīng)該有1--個數(shù)字,第n個數(shù)字代表的是第n個樣本經(jīng)過
你訓(xùn)練好的網(wǎng)絡(luò)預(yù)測出來的預(yù)測label。
這樣,re_label.txt和pr_label.txt這兩個文件分別代表了你樣本的真實label和預(yù)測label,然后讀到y(tǒng)_true和y_pred這兩個變量中計算后面的混淆矩陣。當(dāng)然,不一定非要使用這種txt格式的文件讀入的方式,只要你最后將你的真實
label和預(yù)測label分別保存到y(tǒng)_true和y_pred這兩個變量中即可。
'''
y_true = np.loadtxt('../Data/re_label.txt')
y_pred = np.loadtxt('../Data/pr_label.txt')

tick_marks = np.array(range(len(labels))) + 0.5

def plot_confusion_matrix(cm, title='Confusion Matrix', cmap=plt.cm.binary):
  plt.imshow(cm, interpolation='nearest', cmap=cmap)
  plt.title(title)
  plt.colorbar()
  xlocations = np.array(range(len(labels)))
  plt.xticks(xlocations, labels, rotation=90)
  plt.yticks(xlocations, labels)
  plt.ylabel('True label')
  plt.xlabel('Predicted label')
  cm = confusion_matrix(y_true, y_pred)
  np.set_printoptions(precision=2)
  
cm_normalized = cm.astype('float') / cm.sum(axis=1)[:, np.newaxis]
print cm_normalized
plt.figure(figsize=(12, 8), dpi=120)

ind_array = np.arange(len(labels))
x, y = np.meshgrid(ind_array, ind_array)

for x_val, y_val in zip(x.flatten(), y.flatten()):
  c = cm_normalized[y_val][x_val]
  if c > 0.01:
    plt.text(x_val, y_val, "%0.2f" % (c,), color='red', fontsize=7, va='center', ha='center')
# offset the tick
plt.gca().set_xticks(tick_marks, minor=True)
plt.gca().set_yticks(tick_marks, minor=True)
plt.gca().xaxis.set_ticks_position('none')
plt.gca().yaxis.set_ticks_position('none')
plt.grid(True, which='minor', linestyle='-')
plt.gcf().subplots_adjust(bottom=0.15)

plot_confusion_matrix(cm_normalized, title='Normalized confusion matrix')
# show confusion matrix
plt.savefig('../Data/confusion_matrix.png', format='png')
plt.show()

Result

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • djano一對一、多對多、分頁實例代碼

    djano一對一、多對多、分頁實例代碼

    在本篇文章里小編給大家整理的是關(guān)于djano一對一,多對多,分頁實例代碼以及相關(guān)知識點,需要的朋友們學(xué)習(xí)下。
    2019-08-08
  • Python如何快速提取PowerPoint文檔中的圖片

    Python如何快速提取PowerPoint文檔中的圖片

    這篇文章主要為大家通過兩個示例詳細介紹一下如何使用Python提取PPT文檔中的圖片,文中的示例代碼講解詳細,有需要的小伙伴可以參考一下
    2024-10-10
  • Python分支結(jié)構(gòu)(switch)操作簡介

    Python分支結(jié)構(gòu)(switch)操作簡介

    這篇文章主要介紹了Python分支結(jié)構(gòu)(switch)操作簡介,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • Python執(zhí)行流程控制詳情

    Python執(zhí)行流程控制詳情

    這篇文章主要介紹了Python執(zhí)行流程控制,流程控制即控制流程,具體指控制程序的執(zhí)行流程,而程序的執(zhí)行流程分為三種結(jié)構(gòu):順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu),下文詳細介紹需要的小伙伴可以參考一下
    2022-04-04
  • Python虛擬環(huán)境安裝及操作命令詳解

    Python虛擬環(huán)境安裝及操作命令詳解

    本文主要介紹了Python虛擬環(huán)境安裝及操作命令詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Python安裝第三方庫的方法(pip/conda、easy_install、setup.py)

    Python安裝第三方庫的方法(pip/conda、easy_install、setup.py)

    這篇文章主要介紹了Python安裝第三方庫(pip/conda、easy_install、setup.py)的相關(guān)知識,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-05-05
  • 對python中l(wèi)ist的五種查找方法說明

    對python中l(wèi)ist的五種查找方法說明

    這篇文章主要介紹了對python中l(wèi)ist的五種查找方法說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • scrapy與selenium結(jié)合爬取數(shù)據(jù)(爬取動態(tài)網(wǎng)站)的示例代碼

    scrapy與selenium結(jié)合爬取數(shù)據(jù)(爬取動態(tài)網(wǎng)站)的示例代碼

    這篇文章主要介紹了scrapy與selenium結(jié)合爬取數(shù)據(jù)的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Django之模型層多表操作的實現(xiàn)

    Django之模型層多表操作的實現(xiàn)

    這篇文章主要介紹了Django之模型層多表操作的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • Python爬蟲實戰(zhàn)演練之采集拉鉤網(wǎng)招聘信息數(shù)據(jù)

    Python爬蟲實戰(zhàn)演練之采集拉鉤網(wǎng)招聘信息數(shù)據(jù)

    讀萬卷書不如行萬里路,只學(xué)書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用Python采集拉鉤網(wǎng)招聘信息數(shù)據(jù),大家可以在過程中查缺補漏,提升水平
    2021-10-10

最新評論

固原市| 乐陵市| 金坛市| 临潭县| 东海县| 平湖市| 平潭县| 大埔县| 白河县| 临西县| 阿坝| 托里县| 秦皇岛市| 扎赉特旗| 和平区| 长治市| 三穗县| 谢通门县| 中西区| 门头沟区| 兴义市| 花垣县| 瓦房店市| 特克斯县| 龙山县| 澳门| 正定县| 县级市| 孟州市| 西乌珠穆沁旗| 云浮市| 怀安县| 余江县| 绵竹市| 维西| 寿宁县| 营山县| 宕昌县| 会泽县| 沁水县| 文安县|