当前位置: 首页 > news >正文

佛山企业网站设计制作杭州软件开发公司

佛山企业网站设计制作,杭州软件开发公司,施工企业市场部,网站天下在高光谱、时序遥感数据里,特征维度往往非常高。如何压缩维度、提取主要信息,是建模前的重要一步。sklearn.decomposition 模块为我们提供了一系列常见的降维与分解方法,本篇就带大家快速入门。 另外,往期内容和数据链接如下&…

在高光谱、时序遥感数据里,特征维度往往非常高。如何压缩维度、提取主要信息,是建模前的重要一步。sklearn.decomposition 模块为我们提供了一系列常见的降维与分解方法,本篇就带大家快速入门。

另外,往期内容和数据链接如下:

遥感&机器学习入门实战教程 数据集分享

🧩 decomposition 模块常见方法

  • PCA(主成分分析):最经典,线性正交投影,保留最大方差方向。

  • IncrementalPCA:适合大数据分批训练。

  • KernelPCA:非线性降维,用核函数映射到高维再PCA。

  • ICA(独立成分分析):把信号分解为统计独立分量,常用于混合源分离。

  • NMF(非负矩阵分解):分解为非负基和系数,适合光谱分解与端元分析。

  • DictionaryLearning / SparseCoding:用稀疏字典表示数据。

💻 示例代码:多方法降维对比

这里我们用 KSC 数据集,取有标签像素,演示 PCA / ICA / NMF 三种方法,把数据降到 2 维并可视化对比。

# -*- coding: utf-8 -*-
"""
Sklearn案例⑩:decomposition 降维方法对比
演示 PCA / ICA / NMF 在高光谱数据上的效果
"""import os, numpy as np, scipy.io as sio, matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import MinMaxScaler
from sklearn.decomposition import PCA, FastICA, NMF# ===== 参数 =====
DATA_DIR = "your_path"   # ←修改为你的数据路径
SEED = 42# ===== 1. 数据加载 =====
X = sio.loadmat(os.path.join(DATA_DIR,"KSC.mat"))["KSC"].astype(np.float32)
Y = sio.loadmat(os.path.join(DATA_DIR,"KSC_gt.mat"))["KSC_gt"].astype(int)
coords = np.argwhere(Y!=0)
X_all  = X[coords[:,0], coords[:,1]]
y_all  = Y[coords[:,0], coords[:,1]]-1# 为保证非负分解可用,先缩放到 [0,1]
scaler = MinMaxScaler().fit(X_all)
X_all  = scaler.transform(X_all)# ===== 2. 定义三种分解方法 =====
models = {"PCA": PCA(n_components=2, random_state=SEED),"ICA": FastICA(n_components=2, random_state=SEED, max_iter=1000),"NMF": NMF(n_components=2, init="nndsvda", random_state=SEED, max_iter=1000)
}# ===== 3. 拟合与变换 =====
results = {}
for name, model in models.items():X_trans = model.fit_transform(X_all)results[name] = X_trans# ===== 4. 可视化对比 =====
plt.figure(figsize=(12,4))
for i,(name,Xt) in enumerate(results.items(),1):plt.subplot(1,3,i)plt.scatter(Xt[:,0], Xt[:,1], c=y_all, s=6, cmap="tab20")plt.title(name)plt.axis("off")
plt.suptitle("Sklearn.decomposition 多方法降维对比", fontsize=14)
plt.tight_layout(rect=[0,0,1,0.95])
plt.show()

🔍 结果解读

  • PCA:分布最紧凑,能看到明显的“类团块”,常用作基线。

  • ICA:强调统计独立性,分布更分散,可能更利于区分类别。

  • NMF:保持非负,常用于“端元-丰度”分析,更贴合光谱混合模型。

图片

✅ 小结

  • sklearn.decomposition 提供了多种降维/分解方法,不仅仅是 PCA。

  • 在遥感场景里:

    • PCA 是首选基线;

    • ICA 常用于源分离(如大气/地物成分);

    • NMF 常见于光谱解混。

  • 方法没有绝对优劣,需要结合任务特点选择。

http://www.dtcms.com/a/518217.html

相关文章:

  • 网站登录记录怎么删除对对联的网站
  • 可信的网站建设成都app开发制作公司排名
  • 帮客户做网站内容山东企业站点seo
  • 电商网站后台管理系统张槎网站设计
  • 做网站宁波天元建设集团有限公司法人
  • 内容网站新闻发布会邀请哪些媒体
  • 冯宗耀seo教程网站优化难吗
  • 网站的分析与设计路桥区商用营销型网站建设
  • 秦皇岛 网站建设平台代理是什么工作
  • 温岭建设网站网站开发方案论文
  • 服务号网站建设wordpress导航菜单404
  • .tel域名不可以做网站域名吗南通江苏网站建设
  • 军事的网站应如何建设网站怎么做会让神马搜索到
  • 用手机画房子平面图网站权重优化
  • 宁夏省建设厅网站贵阳建设银行网站
  • seo网站快速排名软件百度贴吧怎么发广告
  • 长春火车站属于哪个区网站相册优化
  • 招聘网站设计论文网站制作费用需要多少钱
  • 佛山网站建设哪家公司好软件工程可以做什么工作
  • 淮安建设工程协会网站查询肇庆网站建设方案优化
  • 网站建设合同属于技术服务么专业的单位网站开发公司
  • 什么查网站是否降权阳江网红打卡景点
  • 徐老师在那个网站做发视频品牌推广互联网广告
  • 怎么做带后台的网站杭州电商网站建设公司
  • 公司网站百度小程序开发电商pc网站建设方案
  • 物联网网站开发无为教育网站
  • 有什么兼职做it的网站在哪租用网站
  • 网站建设丨选择金手指排名15新闻类网站备案
  • 昆明市建设局网站怎么欣赏一个网站设计图
  • 黑龙江建设部网站北仑建设银行网站