from sklearn.metrics import ConfusionMatrixDisplay
import numpy as np
import matplotlib.pyplot as plt

ConfusionMatrixDisplay(confusion_matrix).plot()

confusion_matrix = np.array([[4684, 346],[829, 300]])
plt.figure()
plt.imshow(confusion_matrix, cmap="Blues")
for i in range(2):
    for j in range(2):
        plt.text(j, i, format(confusion_matrix[i, j]),
                ha="center", va="center",
                color="white" if confusion_matrix[i, j] > 2500 else "black", fontsize=18)
plt.xticks([0,1], [0,1], fontsize=14)
plt.yticks([0,1], [0,1], fontsize=14)
plt.xlabel("Predicted Label", fontsize=14)
plt.ylabel("True Label", fontsize=14)
plt.colorbar()

confusion_matrix = np.array([[3690, 1070],[182, 947]])
plt.figure()
plt.imshow(confusion_matrix, cmap="Blues")
for i in range(2):
    for j in range(2):
        plt.text(j, i, format(confusion_matrix[i, j]),
                ha="center", va="center",
                color="white" if confusion_matrix[i, j] > 2500 else "black", fontsize=18)
plt.xticks([0,1], [0,1], fontsize=14)
plt.yticks([0,1], [0,1], fontsize=14)
plt.xlabel("Predicted Label", fontsize=14)
plt.ylabel("True Label", fontsize=14)
plt.colorbar()

confusion_matrix = np.array([[3835, 1195],[237, 892]])
plt.figure()
plt.imshow(confusion_matrix, cmap="Blues")
for i in range(2):
    for j in range(2):
        plt.text(j, i, format(confusion_matrix[i, j]),
                ha="center", va="center",
                color="white" if confusion_matrix[i, j] > 2500 else "black", fontsize=18)
plt.xticks([0,1], [0,1], fontsize=14)
plt.yticks([0,1], [0,1], fontsize=14)
plt.xlabel("Predicted Label", fontsize=14)
plt.ylabel("True Label", fontsize=14)
plt.colorbar()

https://arxiv.org/pdf/2010.07335.pdf

https://arxiv.org/pdf/2105.10162.pdf

https://arxiv.org/pdf/2203.01340.pdf maria
    https://arxiv.org/pdf/1810.03787.pdf MERA 
        https://arxiv.org/pdf/1905.01426.pdf MERA 2
            
            https://pennylane.ai/qml/demos/tutorial_tn_circuits.html