在遥感应用中,尤其是高光谱数据处理中,经常涉及到特征的降维等处理技术,本文介绍一种目前在遥感中较为常用的特征降维技术-umap,包括其简单介绍,以及在python中如何安装,使用例子等。
UMAP 简介
UMAP(Uniform Manifold Approximation and Projection)是一种用于降维的非线性技术,通常用于数据可视化。它能够将高维数据映射到一个低维空间,同时尽量保持数据中的局部结构。UMAP是由Leland McInnes, John Healy, 和 James Melville 开发的,它是基于局部线性嵌入(Locally Linear Embedding, LLE)的原理,通过优化保持邻域结构的方式来降低数据的维度。
UMAP 的原理
UMAP的核心思想是将高维数据中的点投影到一个低维空间,同时保持原始数据中的局部结构。具体来说,UMAP通过以下步骤实现降维:
- 选择邻域:对于每个数据点,找到一个邻域,邻域的大小由参数
n_neighbors
控制。 - 计算局部线性嵌入:在选定的邻域内,UMAP试图找到一个线性关系来近似数据点之间的关系。这可以通过最小化重建误差来完成,即通过找到一个低维空间中的点集,使得在这些点之间的线性关系能够最好地近似原始高维空间中的点之间的关系。
- 优化映射:UMAP使用一种名为扩散距离(diffusion distance)的方法来优化映射,这种方法能够有效地处理不同大小的邻域,并且能够适应非线性结构。
- 参数优化:UMAP的参数
min_dist
和spread
用于控制邻域的大小和数据的紧凑性。这些参数需要通过优化过程来确定,以找到最佳的映射。
UMAP 相比其他降维方法的优势
UMAP相比其他降维方法具有一些优势:
- 非线性:UMAP是一种非线性降维技术,能够捕捉到数据中的复杂结构。
- 自适应:UMAP能够自动适应不同区域的数据密度,对于密度不均匀的数据处理效果较好。
- 无需指定目标维数:UMAP在优化过程中自动确定目标维数,不需要用户预先指定。
- 速度快:UMAP在计算上相对高效,尤其适用于大规模数据集。
Python 安装和使用的案例
要在Python中使用UMAP,首先需要安装umap-learn
库。可以通过以下命令安装:
pip install umap-learn
以下是一个简单的使用案例:
import numpy as np
import umap
# 假设X是高维数据,例如使用随机数据生成
X = np.random.randn(100, 10) # 100个样本,每个样本10维
# 创建UMAP实例
umap_model = umap.UMAP(n_neighbors=15, min_dist=0.1)
# 拟合数据
umap_model.fit(X)
# 将数据降到2维
embedding = umap_model.transform(X)
# 现在embedding变量包含了数据在2维空间中的表示,可以用于可视化
# 结合sklearn 示例
import umap
from sklearn.datasets import load_digits
digits = load_digits()
# embedding = umap.UMAP().fit_transform(digits.data)
embedding = umap.UMAP(n_neighbors=5,
min_dist=0.3,
metric='correlation').fit_transform(digits.data)
umap.plot.points(embedding , labels=digits.target)
在这个例子中,我们首先导入了必要的库,然后创建了一个UMAP实例并指定了n_neighbors和min_dist参数。接着,我们使用fit方法拟合数据,然后使用transform方法将数据降到2维。最后,我们将得到的2维表示用于数据可视化。
UMAP是一个强大且灵活的工具,可以用来探索数据的结构,并作为后续分析的基础。
总结:
本文主要目的是介绍简单介绍umap,知道遥感领域中常用的降维手段,更多关于uamp详细,参考其官网。
欢迎点赞,收藏,关注,支持小生,打造一个好的遥感领域知识分享专栏。
同时欢迎私信咨询讨论学习,咨询讨论的方向不限于:地物分类/语义分割(如水体,云,建筑物,耕地,冬小麦等各种地物类型的提取),变化检测,夜光遥感数据处理,目标检测,图像处理(几何矫正,辐射矫正(大气校正),图像去噪等),遥感时空融合,定量遥感(土壤盐渍化/水质参数反演/气溶胶反演/森林参数(生物量,植被覆盖度,植被生产力等)/地表温度/地表反射率等反演)以及高光谱数据处理等领域以及深度学习,机器学习等技术算法讨论,以及相关实验指导论文指导等多方面。
遥感专栏