Matlab畫混淆矩陣

2021-08-18 20:25:21 字數 786 閱讀 3600

最近自己的工作要用到混淆矩陣,因此簡單的了解了一下混淆矩陣。本部落格主要是參照部落格來寫的,在此向原作者表示感謝。

首先來看一下什麼是混淆矩陣吧。在人工智慧中,混淆矩陣(confusion matrix)是視覺化工具,特別用於監督學習,在無監督學習一般叫做匹配矩陣。在影象精度評價中,主要用於比較分類結果和實際測得值,可以把分類結果的精度顯示在乙個混淆矩陣裡面。混淆矩陣是通過將每個實測像元的位置和分類與分類影象中的相應位置和分類像比較計算的。混淆矩陣的每一列代表了**類別,每一列的總數表示**為該類別的資料的數目;每一行代表了資料的真實歸屬類別,每一行的資料總數表示該類別的資料例項的數目。每一列中的數值表示真實資料被**為該類的數目。

接下來我對**進行簡單的注釋。

function confusion_matrix1(act1, det1)

%act1為真實的標籤,det1為**標籤

%輸入的是行向量

%[mat, order] = confusionmat(act1, det1);

%confusionmat用來構建混淆矩陣,mat返回混淆矩陣,order返回每個變數所在的類

%mat(i,j)表示訓練集中i類在測試集中被分到j類的個數

k = max(order); %k為分類的個數

imagesc(mat); %imagesc函式將矩陣mat的元素數值按大小轉化為不同顏色,並在座標軸對應位置以這種顏色染色

colormap(flipud(gray)); %轉換成灰度圖

%colormap函式是用來設定和獲取當前色圖

Matlab畫混淆矩陣(多分類)

在神經網路和機器學習的結果分析中,常常會用混淆矩陣和roc曲線來分析識別 分類結果的好壞,而且 中也經常出現這種圖。對於卷積神經網路來說畫混淆矩陣很簡單,要用到函式plotconfusion,格式為plotconfusion 實際標籤,標籤 畫出來是這樣的 實際標籤是我們提前就知道的,標籤在神經網路...

matlab畫折現 matlab畫折線

figure 721 hold on x 1 1 5 x軸上的資料,第乙個值代表資料開始,第二個值代表間隔,第三個值代表終止 a 203.024,113.857,256.259,244.888,293.376 a資料y值 b 334.4,143.2,297.4,487.2,596.2 b資料y值 p...

混淆矩陣(confusion matrix)

乙個完美的分類模型是,將實際上是good的例項 成good,將bad的例項 稱bad。對於實際應用中的分類模型,可能 錯誤例項型別,因此我們需要知道到底 對了多少例項,錯了多少例項。混淆矩陣就是將這些資訊放在乙個表中,便於直觀的觀測和分析。在分類問題中,的情形存在如下四種 1.good good t...