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

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

关于作者

作者:小白熊

作者简介:精通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等工具,你可以轻松地创建这些图表并嵌入到你的机器学习项目中,帮助更好地理解和解释你的模型结果。

相关推荐
phltxy10 小时前
LangChain从模型输出到RAG数据管道实战
服务器·人工智能·深度学习·语言模型·langchain
luoganttcc11 小时前
指数分布的完整推导
线性代数·机器学习·概率论
10x1011 小时前
企业 AI 真正的分水岭:不是人人都在用,而是工作方式被重新设计
人工智能
梅雅达编程笔记11 小时前
零基础学 Python 第14章 | 模块、包与第三方库
开发语言·python·django·numpy·pandas
Mr__Miss11 小时前
Java泛型完全指南:从入门到精通
java·开发语言·python
收放扳机11 小时前
PCB产线的“柔性”是怎么实现的——从自动化上下料设备兼容性看产线弹性
人工智能·科技·自动化·制造·pcb工艺
天上路人11 小时前
全功能AI语音处理模组的算法集成与接口设计分析
人工智能·ai语音·麦克风·回音消除
触底反弹11 小时前
🔥 保姆级教程|SSE + BFF + 跨域三件套,从零实现 ChatGPT 流式输出(附完整代码)
人工智能·node.js·vite
嘿丨嘿12 小时前
VLA 入门(六):VLA 如何进行强化学习后训练?
人工智能·python·深度学习·机器人
祉猷并茂,雯华若锦12 小时前
Appium 3.x实战:获取元素属性全解析
python·appium·自动化