聚类后PCA降维实例及三维散点图绘制

聚类分析

  • 方法:BIRCH

  • 数据来源:https://archive.ics.uci.edu/ml/index.php
    或者:https://gitee.com/guet_seven_data-department/python_crawler_small/wikis/glass.csv?sort_id=2963383

  • 数据集说明:数据集包含9个特征变量,分别为ri,na,mg,al,si,k,ca,ba,fe;1个类别变量glass_type,共有214个样本,
    在这里插入图片描述

  • 代码实现

    from sklearn.cluster import Birch  #BIRCH模块导入
    import pandas as pd    
    import matplotlib.pyplot as plt  
    glass=pd.read_csv('G:/机器学习/书籍阅读/python爬虫/glass.csv')  #数据导入,需要更改一下路径
    #glass=pd.read_csv(r'G:\机器学习\书籍阅读\python爬虫\glass.csv')
    clf=Birch(n_clusters=4)  #n_clusters:设置聚类数为n
    clf.fit(glass)   #函数训练模型
    pre=clf.predict(glass)  #所属类别预测,分为4类,(0,12,3

PCA降维实现

  • PCA(Principal Component Analysis)即主成分分析

  • 代码实现

    #降维
    from sklearn.decomposition import PCA
    from mpl_toolkits.mplot3d import Axes3D  #三维绘图
    pca=PCA(n_components=3)  #降维到3维
    newDate=pca.fit_transform(glass)
    x1=newDate[:,0]  
    x2=newDate[:,1]
    x3=newDate[:,2]
    fig=plt.figure()
    ax=Axes3D(fig)
    ax.scatter(x1,x2,x3,c=pre)
    
  • 聚类数为3的可视化情况
    在这里插入图片描述

  • 聚类数为4的可视化情况在这里插入图片描述

### 吴恩达机器学习课程中的三维图 在吴恩达教授的机器学习课程中,虽然主要关注于理论讲解和二可视化,但在某些情况下确实涉及到了三维图形的应用。特别是在讨论高数据集以及复杂模型时,三维图可以更直观地展示特征空间。 #### 使用Matplotlib绘制三维图表 为了更好地理解这些概念并实现具体的例子,通常会借助Python中的`matplotlib`库来创建三维图像。下面是一个简单的实例,展示了如何利用此库生成一个三维散点图: ```python import numpy as np from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt fig = plt.figure() ax = fig.add_subplot(111, projection='3d') # 创建随机测试数据 x = np.random.standard_normal(100) y = np.random.standard_normal(100) z = np.random.standard_normal(100) ax.scatter(x, y, z) plt.show() ``` 这段代码首先导入必要的模块,接着定义了一个新的Figure对象,并通过设置projection参数为'3d'指定了子图应该被渲染成三维坐标系。最后使用scatter方法向这个三维空间内添加了一些随机分布的数据点[^4]。 #### 应用于实际场景下的案例分析 当涉及到具体应用场景时,比如神经网络权重初始化或者优化路径等问题上,三维视图可以帮助我们更加清晰地看到不同超参数配置下成本函数的变化趋势。例如,在研究梯度下过程中,可以通过调整初始位置、学习率等因素观察到收敛速度及最终效果之间的关系[^2]。 #### 数据预处理与可视化的结合 除了直接操作原始数值外,还可以先经过一定的转换再呈现出来。比如说采用PCA技术将更高度的数据映射至三维空间后再做进一步探讨;或者是基于聚类算法的结果来进行分组着色显示等高级技巧。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值