ziyuang / pynerv

A Python wrapper of Neighbor Retrieval Visualizer (NeRV)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PyNeRV

A Python wrapper of the dimensionality reduction algorithm Neighbor Retrieval Visualizer (NeRV)

Compile

Set up the paths in Makefile then make.

Usage example

import numpy as np
import matplotlib.pyplot as plt
from nerv import NeRV

data = np.genfromtxt('dredviz-1.0.2/spheredata.dat', skip_header=1)
color = np.genfromtxt('dredviz-1.0.2/spheredata.col', skip_header=1)
nerv_obj = NeRV(random_state=0)
nerv_obj.fit(data)
print('Final cost = %g' % nerv_obj.cost_)
plt.scatter(*nerv_obj.embedding_.T, c=color)
plt.show()

which shows (right)

 

Reference

@article{venna2010information,
  title={Information retrieval perspective to nonlinear dimensionality reduction for data visualization},
  author={Venna, Jarkko and Peltonen, Jaakko and Nybo, Kristian and Aidos, Helena and Kaski, Samuel},
  journal={Journal of Machine Learning Research},
  volume={11},
  number={Feb},
  pages={451--490},
  year={2010}
}

About

A Python wrapper of Neighbor Retrieval Visualizer (NeRV)

License:GNU Lesser General Public License v3.0


Languages

Language:C++ 76.6%Language:HTML 16.7%Language:Makefile 5.8%Language:Python 0.7%Language:CSS 0.1%Language:Shell 0.0%