拓扑数据分析映射算法的python实现。
kmapper的Python项目详细描述
开普勒马普
Nature uses as little as possible of anything. - Johannes Kepler
这是用于高维数据可视化的tda映射器算法的python实现。有关完整文档,请参见https://kepler-mapper.scikit-tda.org。
开普勒马普采用了基于mapper算法(singh等人)的方法,如“分析高维数据集和三维目标识别的拓扑方法”一文中所述。
keplermapper可以利用scikit学习api兼容的集群和缩放算法。
安装
依赖性
开普勒马克需要:
- Python(>;=2.7或>;=3.3)
- 努比
- SCIKIT学习
使用绘图可视化需要一些额外的库:
- python图
- 绘声绘色地
- ipywidgets
此外,运行一些示例需要:
- matplotlib
- umap学习
安装
使用pip安装开普勒映射器:
pip install kmapper
从源安装:
git clone https://github.com/MLWave/kepler-mapper
cd kepler-mapper
pip install -e .
用法
keplermapper尽可能多地采用scikit learn api,因此任何使用过这些库的人都应该对它感到非常熟悉。
python代码
# Import the classimportkmapperaskm# Some sample datafromsklearnimportdatasetsdata,labels=datasets.make_circles(n_samples=5000,noise=0.03,factor=0.3)# Initializemapper=km.KeplerMapper(verbose=1)# Fit to and transform the dataprojected_data=mapper.fit_transform(data,projection=[0,1])# X-Y axis# Create dictionary called 'graph' with nodes, edges and meta-informationgraph=mapper.map(projected_data,data,nr_cubes=10)# Visualize itmapper.visualize(graph,path_html="make_circles_keplermapper_output.html",title="make_circles(n_samples=5000, noise=0.03, factor=0.3)")
免责声明
麻省理工学院的标准免责声明适用,全文见DISCLAIMER.md
。开发状态是alpha。
引用
Nathaniel Saul和Hendrik Jacob Van Veen。(2017年11月17日)。MlWave/Kepler Mapper:186F(版本1.0.1)。泽诺多。http://doi.org/10.5281/zenodo.1054444