Hi
I have used exactly the same code and data as instructor has used to plot confusion matrix in this video. But I am not getting a proper confusion matrix it’s bit distorted and also from the values [[87 11] [ 9 93]] , 87 is missing in figure of confusion matrix. I’m sharing with you part of the code which I’ve used for plotting figure of confusion matrix, correct me if I’m wrong anywhere and help me out.
Following is the code
import itertools
import numpy as np
import matplotlib.pyplot as plt
def plot_confusion_matrix(cm, classes,
normalize=False,
title=‘Confusion matrix’,
cmap=plt.cm.Blues):
“”"
This function prints and plots the confusion matrix.
Normalization can be applied by setting normalize=True
.
“”"
if normalize:
cm = cm.astype(‘float’) / cm.sum(axis=1)[:, np.newaxis]
print(“Normalized confusion matrix”)
else:
print(‘Confusion matrix, without normalization’)
print(cm)
plt.imshow(cm, interpolation='nearest', cmap=cmap)
plt.title(title)
plt.colorbar()
tick_marks = np.arange(len(classes))
plt.xticks(tick_marks, classes, rotation=45)
plt.yticks(tick_marks, classes)
fmt='.2f' if normalize else 'd'
thresh=cm.max()/2
for i, j in itertools.product(range(cm.shape[0]), range(cm.shape[1])):
plt.text(j, i, cm[i, j],
horizontalalignment="center",
color="white" if cm[i, j] > thresh else "black")
plt.ylabel('True label')
plt.xlabel('Predicted label')
plt.tight_layout()
#generate confusion matrix
from sklearn.metrics import confusion_matrix
cnf_matrix=confusion_matrix(Y,ypred) #actual y value & predicted y values
print(cnf_matrix)
#Visualize confusion matrix
plot_confusion_matrix(cnf_matrix,[0,1],normalize=False,title=‘confusion matrix’)
plt.show()