【Python机器学习】实现二分类混淆矩阵可视化

  直接上代码

def cm_plot(y, yp):
    '''
    y: 真实值
    y_pred:预测值
    '''
    '''混淆矩阵绘画'''
    from sklearn.metrics import confusion_matrix  # 导入混淆矩阵函数

    cm = confusion_matrix(y, yp)  # 混淆矩阵
    print('混淆矩阵为:\n',cm)
    import matplotlib.pyplot as plt  # 导入作图库
    plt.matshow(cm, cmap=plt.cm.Greens)  # 画混淆矩阵图,配色风格使用cm.Greens,更多风格请参考官网。
    plt.colorbar()  # 颜色标签

    for x in range(len(cm)):  # 数据标签
        for y in range(len(cm)):
            plt.annotate(cm[x, y], xy=(y, x),verticalalignment='center',horizontalalignment='center')
            # 这边一个重要的易错点就是关于xy需要添加数值的位置的点要换成(y, x),因为矩阵可视化的xy与实际意义上的坐标是相反的
    plt.ylabel('True label')  # 坐标轴标签
    plt.xlabel('Predicted label')  # 坐标轴标签
    plt.show()

你可能感兴趣的:(Python机器学习,python,机器学习,分类,sklearn)