如何用matplotlib绘制图像分类任务的类别特征空间分布

python 复制代码
import matplotlib.pyplot as plt
import numpy as np
from sklearn.decomposition import PCA
from sklearn.datasets import load_iris
from mpl_toolkits.mplot3d import Axes3D

# 加载示例数据(Iris 数据集)
data = load_iris()
X = data.data
y = data.target
categories = data.target_names

# 使用PCA将数据降维到二维
pca_2d = PCA(n_components=2)
X_reduced_2d = pca_2d.fit_transform(X)

# 绘制二维特征空间分布
plt.figure(figsize=(10, 8))
for i, category in enumerate(categories):
    plt.scatter(X_reduced_2d[y == i, 0], X_reduced_2d[y == i, 1], label=category)
plt.xlabel('PCA 1')
plt.ylabel('PCA 2')
plt.title('类别特征空间分布(二维)')
plt.legend()
plt.savefig('2d_feature_space.png')
plt.show()

# 使用PCA将数据降维到三维
pca_3d = PCA(n_components=3)
X_reduced_3d = pca_3d.fit_transform(X)

# 绘制三维特征空间分布
fig = plt.figure(figsize=(12, 10))
ax = fig.add_subplot(111, projection='3d')
for i, category in enumerate(categories):
    ax.scatter(X_reduced_3d[y == i, 0], X_reduced_3d[y == i, 1], X_reduced_3d[y == i, 2], label=category)
ax.set_xlabel('PCA 1')
ax.set_ylabel('PCA 2')
ax.set_zlabel('PCA 3')
ax.set_title('类别特征空间分布(三维)')
ax.legend()
plt.savefig('3d_feature_space.png')
plt.show()
相关推荐
Jialu.6 小时前
中文 BERT 多任务分类项目:从模型结构到训练细节
人工智能·pytorch·分类·微软·nlp·bert
夜雪一千12 小时前
如何写一个数据分析 Skill
人工智能·数据挖掘·数据分析
YOLO数据集集合12 小时前
无人机屋顶与地物分割数据集 | 屋顶分割 航拍识别 城市规划 材质分类 实例分割9036期
人工智能·分类·无人机·材质·中国城市建筑·建筑识别
夜雪一千13 小时前
如何编写一个数据分析 Skill:完整拆解一个案例
人工智能·语言模型·数据挖掘·数据分析
YOLO数据集集合15 小时前
无人机型号识别数据集 | 无人机型号识别 细粒度分类 低空安防 无人机机型识别 大疆无人机 低空威胁9039期
目标检测·分类·数据挖掘·无人机·无人机数据集·无人机机型识别·无人机类别
精益数智工坊17 小时前
指标管理系统价值怎么释放?指标管理系统运营怎么做?
大数据·人工智能·数据挖掘·数据可视化
工业HMI实战笔记1 天前
数据可视化实战:趋势图、仪表盘、热力图的正确用法
信息可视化·数据挖掘·数据分析
leoZ2311 天前
AI+前端提效-09 AI赋能前端测试:单元测试、E2E测试自动生成,提升覆盖率
前端·人工智能·opencv·目标检测·数据挖掘·单元测试·语音识别
dfbz1234562 天前
长沙中秋礼品市场数据分析:文创属性如何驱动复购率和口碑传播
大数据·经验分享·数据挖掘·数据分析
databook2 天前
几何分布:从“等一个结果”开始
python·数据挖掘·数据分析