机器学习可视化教程——混淆矩阵与回归图

机器学习可视化教程------混淆矩阵与回归图

关于作者

作者:小白熊

作者简介:精通python、matlab、c#语言,擅长机器学习,深度学习,机器视觉,目标检测,图像分类,姿态识别,语义分割,路径规划,智能优化算法,数据分析,各类创新融合等等。

联系邮箱 :xbx3144@163.com

科研辅导、知识付费答疑、个性化定制以及其他合作需求请联系作者~

前言

在机器学习项目中,数据的可视化是评估模型表现的关键步骤。通过可视化,我们可以直观地看出模型的预测效果、数据分布和误差。本文将介绍如何使用`matplotlib`和`seaborn`,来绘制回归图(用于回归任务)和混淆矩阵(用于分类任务)。

回归任务------回归图(Regression Plot)

回归分析是机器学习中用于预测数值型目标变量的一种常见方法。回归图通常用于展示模型预测值与真实值之间的关系。我们可以使用seaborn库来绘制回归图。

示例代码

python 复制代码
import matplotlib.pyplot as plt
import seaborn as sns
import warnings

warnings.filterwarnings("ignore")  # 忽略警告

# 显示中文
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

# 假设真实值为y_true,预测值为y_pred

# 绘制回归图
plt.figure(figsize=(10,6))
sns.regplot(x=y_true, y=y_pred, scatter_kws={'s':10}, line_kws={'color':'red'})
plt.xlabel("真实值")
plt.ylabel("预测值")
plt.title("回归图")
plt.show()

示例图

分类任务------混淆矩阵(Confusion Matrix)

混淆矩阵常用于分类任务,展示分类器的性能表现。它能够显示模型正确分类的样本数与错误分类的样本数,帮助我们更好地理解模型的预测情况。

示例代码

python 复制代码
import matplotlib.pyplot as plt
import seaborn as sns
import warnings

warnings.filterwarnings("ignore")  # 忽略警告

# 显示中文
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

# 假设真实值为y_true,预测值为y_pred

# 计算混淆矩阵
cm = confusion_matrix(y_true, y_pred)

# 绘制混淆矩阵,xticklabels和yticklabels是类别名称,需要根据实际情况修改
plt.figure(figsize=(8,6))
sns.heatmap(cm, annot=True, fmt="d", cmap="Blues", xticklabels=iris.target_names, yticklabels=iris.target_names)
plt.xlabel("预测值")
plt.ylabel("真实值")
plt.title("混淆矩阵")
plt.show()

示例图

结束语

回归图和混淆矩阵是分析机器学习模型性能的重要工具。回归图帮助我们评估模型的预测准确度,而混淆矩阵则能深入了解分类模型的分类错误类型。通过这些可视化,我们能够快速发现模型的潜在问题,进而改进模型的表现。

使用matplotlibseaborn等工具,你可以轻松地创建这些图表并嵌入到你的机器学习项目中,帮助更好地理解和解释你的模型结果。

相关推荐
网易独家音乐人Mike Zhou1 小时前
【卡尔曼滤波】数据预测Prediction观测器的理论推导及应用 C语言、Python实现(Kalman Filter)
c语言·python·单片机·物联网·算法·嵌入式·iot
安静读书1 小时前
Python解析视频FPS(帧率)、分辨率信息
python·opencv·音视频
小陈phd1 小时前
OpenCV从入门到精通实战(九)——基于dlib的疲劳监测 ear计算
人工智能·opencv·计算机视觉
Guofu_Liao3 小时前
大语言模型---LoRA简介;LoRA的优势;LoRA训练步骤;总结
人工智能·语言模型·自然语言处理·矩阵·llama
小二·3 小时前
java基础面试题笔记(基础篇)
java·笔记·python
小喵要摸鱼4 小时前
Python 神经网络项目常用语法
python
一念之坤6 小时前
零基础学Python之数据结构 -- 01篇
数据结构·python
wxl7812276 小时前
如何使用本地大模型做数据分析
python·数据挖掘·数据分析·代码解释器
NoneCoder6 小时前
Python入门(12)--数据处理
开发语言·python
ZHOU_WUYI6 小时前
3.langchain中的prompt模板 (few shot examples in chat models)
人工智能·langchain·prompt