概述
本文仅作为UMAP文档的导读,详细可参考UMAP文档原文
一、下载安装
pip install -r requirements.txt
pip install umap-learn
二、基本使用
1、输入数据类型:pandas
2、构造umap对象:reducer = umap.UMAP()
3、对数据进行变换:embedding = reducer.fit_transform(data)
fit_transform会先调用fit(),然后再transform();
等价于:
reducer.fit(data)
embedding = reducer.transform(data)
三、UMAP基本参数
1、n_neighbors
邻点数量,默认15,提供局部与全局特征的平衡
2、min_dist
允许打包点集的紧致程度,默认0.1
3、n_components
嵌入维度,默认2维
4、metric
距离度量方式,可以用已有的,也可以自定义
四、UMAP结果绘制
1、基本使用
mapper = umap.UMAP().fit(data)
umap.plot.points(mapper)
也可以通过labels控制每种label的着色:
umap.plot.points(mapper, labels=pendigits.target)
2、交互式界面:umap.plot.interactive
3、绘制链接:umap.plot.connectivity
五、UMAP可重复性
可以设置随机种子:umap.UMAP(random_state=42)
六、UMAP新数据转换
1、训练数据学到的模型可以用于测试数据
trans = umap.UMAP().fit(X_train)
test_embedding = trans.transform(X_test)
注意:这里是无监督学习(后面也会说使用标签信息);transform效率很高。
2、UMAP可以作为数据预处理中的一步,例:
trans = umap.UMAP(n_components=10).fit(X_train)
svc = SVC().fit(trans.embedding_, y_train)
svc.score(trans.transform(X_test), y_test)
七、逆变换
UMAP允许从低维空间到高维空间的逆变换,例:
mapper = umap.UMAP(random_state=42).fit(data)
# 随机在低维空间取点集test_pts
inv_transformed_points = mapper.inverse_transform(test_pts)
八、参数化(神经网络)嵌入
UMAP提供了参数化嵌入ParametricUMAP
,在这里面,可以自定义模型、保存和加载模型、训练模型等。
其后端网络模型使用Keras
和Tensorflow
实现。
九、UMAP处理稀疏数据
(我感觉我一时半会用不到,就先不看了)
十、有监督降维和度量学习
可以通过y来设定标签,同时可以用于学习度量,例:
mapper = umap.UMAP().fit(train_data, y=train_labels)
test_embedding = mapper.transform(test_data)
十一、UMAP用于聚类
UMAP可以作为聚类的数据预处理阶段,增强数据聚类效果。
十二、UMAP用于异常点检测
在运行传统的异常检测方法(如LOF)之前,使用UMAP来降低维数,可以提高算法的运行速度和异常检测能够找到的结果的质量。
同时通过设置set_op_mix_ratio
参数,也可以尽可能保持离群点的映射。
十三、组合多个UMAP模型
交:intersection_mapper = mapper1 * mapper2
并:union_mapper = mapper1 + mapper2
差:contrast_mapper = mapper1 – mapper2
十四、使用DensMAP更好地展示局部密度
densmap=True
即可使用DensMap,参数dens_lambda
可以控制局部密度强度,默认为2.0。例:
dens_mapper = umap.UMAP(densmap=True, dens_lambda=5.0)
(剩下的内容包括文档嵌入、非欧式空间嵌入等,我一时半会用不到就不看了,感兴趣可以去看原文)
最后
以上就是深情冬天为你收集整理的UMAP文档阅读笔记一、下载安装二、基本使用三、UMAP基本参数四、UMAP结果绘制五、UMAP可重复性六、UMAP新数据转换七、逆变换八、参数化(神经网络)嵌入九、UMAP处理稀疏数据十、有监督降维和度量学习十一、UMAP用于聚类十二、UMAP用于异常点检测十三、组合多个UMAP模型十四、使用DensMAP更好地展示局部密度的全部内容,希望文章能够帮你解决UMAP文档阅读笔记一、下载安装二、基本使用三、UMAP基本参数四、UMAP结果绘制五、UMAP可重复性六、UMAP新数据转换七、逆变换八、参数化(神经网络)嵌入九、UMAP处理稀疏数据十、有监督降维和度量学习十一、UMAP用于聚类十二、UMAP用于异常点检测十三、组合多个UMAP模型十四、使用DensMAP更好地展示局部密度所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复