Giter Club home page Giter Club logo

ugtm's Introduction

ugtm: Generative Topographic Mapping with Python.

Link to the package documentation: http://ugtm.readthedocs.io/en/latest/

GTM (Generative Topographic Mapping) is a dimensionality reduction algorithm (as t-SNE, LLE, etc) created by Bishop et al. (https://www.microsoft.com/en-us/research/wp-content/uploads/1998/01/bishop-gtm-ncomp-98.pdf) and a probabilistic counterpart of Kohonen maps.

ugtm is a python package implementing GTM and GTM prediction algorithms. ugtm contains the core functions and runGTM.py (in bin directory) is an easy-to-use program. The kernel version of the algorithm (kGTM) is also implemented. You can also generate regression or classification maps, or evaluate the predictive accuracy (classification) or RMSE/R2 (regression) in repeated cross-validation experiments.

Install ugtm

Simple installation:

  • pip install ugtm

If you get error messages, try upgrading packages:

  • pip install --upgrade pip numpy scikit-learn matplotlib scipy mpld3 jinja2
  • sudo pip install --upgrade pip numpy scikit-learn matplotlib scipy mpld3 jinja2

If you have problems with anaconda packages, try to create a virtual env called "p2" for python 2.7.14:

  • conda create -n p2 python=2.7.14 numpy=1.14.5 scikit-learn=0.20 matplotlib=2.2.2 scipy=0.19.1 mpld3=0.3 jinja2=2.10
  • source activate p2
  • pip install ugtm

Or p3 for python 3.6.6:

  • conda create -n p3 python=3.6.6 numpy=1.14.5 scikit-learn=0.20 matplotlib=2.2.2 scipy=0.19.1 mpld3=0.3 jinja2=2.10
  • source activate p3
  • pip install ugtm

Documentation

Readthedocs

Prerequisites

Python 2.7 or + (tested on Python 3.4.6 and Python 2.7.14)

and following packages:

  • scikit-learn>=0.20
  • numpy>=1.14.5
  • matplotlib>=2.2.2
  • scipy>=0.19.1
  • mpld3>=0.3
  • jinja2>=2.10

Citing ugtm

Cite ugtm version and the following paper:

@ARTICLE{Gaspar2018-qt,
  title   = "ugtm: A Python Package for Data Modeling and Visualization Using
             Generative Topographic Mapping",
  author  = "Gaspar, H{\'e}l{\'e}na Alexandra",
  journal = "Journal of Open Research Software",
  volume  =  6,
  pages   = "215",
  month   =  dec,
  year    =  2018
}

Principal author / admin

Héléna A. Gaspar, [email protected], https://github.com/hagax8

ugtm's People

Contributors

fil avatar hagax8 avatar sshojiro avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

ugtm's Issues

Sample new points

Hello!

Thank you for the great implementation!

But, can you, please, suggest me how to sample new points using trained eGTM?

For example, I want to generate some new points on my N-dimensional space, using some node from 2D GTM map.

Thank you,
Kira

Citing ugtm

Hi there,

I am currently writing thesis where this package plays a small role in. Currently I am using the the following (AMA style) citation:

Gaspar HA. ugtm: a python package for Generative Topographic Mapping (GTM). Github.
https://github.com/hagax8/ugtm
Published on 31-10-2017. Accessed on 19-11-2018.

Please let me know if you would like to give other people credit who worked on this application. I have a worked on ugtm in a tiny PR, and therefore is somewhat negligible in my opinion (As I dont have really have worked on the statistical background and stuff like that).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.