Coder Social home page Coder Social logo

cr1337 / human-guided-dimension-reduction Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 24.29 MB

A web application for experimenting with dimensionality reduction with human guidance.

License: MIT License

Dockerfile 0.35% Python 48.85% HTML 0.22% Vue 26.48% JavaScript 5.96% Shell 0.25% Batchfile 0.22% C++ 17.67%
dimensionality-reduction human-guided multidimensional-scaling

human-guided-dimension-reduction's Introduction

License: MIT

human-guided-dimension-reduction

A web application for experimenting with dimensionality reduction with human guidance.

Setup

Linux

  1. Install Docker
  2. Clone this Repository using git clone https://github.com/CR1337/human-guided-dimension-reduction.git.
  3. cd into this repository with cd human-guided-dimension-reduction.
  4. Build the docker services by running bin/build.
  5. Create a virtual environment by executing python3 -m venv .venv.
  6. Activate the virtual environment with source .venv/bin/activate.
  7. Install dependencies using pip3 install -r requirements.txt.
  8. Change directory with cd services/backend.
  9. Run ./compile-neighbors.
  10. Run chmod +x neighbors/neighbors.
  11. Change back to the main directory with cd ../...
  12. Run python3 util/init_neighbors.py.

Windows

(Not tested, you are on your own.)

  1. Install Docker
  2. Clone this Repository using git clone https://github.com/CR1337/human-guided-dimension-reduction.git.
  3. cd into this repository with cd human-guided-dimension-reduction.
  4. Build the docker services by running bin\build.bat.
  5. Create a virtual environment by executing python -m venv .venv.
  6. Activate the virtual environment with .venv\bin\activate.
  7. Install dependencies using pip install -r requirements.txt.
  8. Make sure you have g++ installed (at least version 11.4).
  9. Change directory with cd services\backend.
  10. Run .\compile-neighbors.bat.
  11. Change back to the main directory with cd ..\...
  12. Run python3 util\init_neighbors.py.

Running the App

Linux

  1. Execute bin/run
  2. Open your Browser and navigate to http://localhost:8080

Windows

  1. Execute bin\run.bat
  2. Open your Browser and navigate to http://localhost:8080

human-guided-dimension-reduction's People

Contributors

cr1337 avatar fsadrieh avatar

Watchers

 avatar

human-guided-dimension-reduction's Issues

Generate Distance Matrices

We have to change the data generation script for model training data to output distance matrices instead of vectors.

Move landmarks

  • Move landmarks with mouse
  • Send moved landmarks back to server
  • Display landmarks in front of other points

Neighbor Speed Up

  • Speed up calculation of 2D neighbors in backend using C
  • Speed up lookup of 768D neighbors from file

Visualization

Visualize Data and Landmarks.

Later we want to have an web based UI for user interaction. Therefore it would be a good idea to do the visualization also web based and extend it to the full featured UI in the next project phase.

Model training

  • IMBD and emotion euclidean
  • IMBD and emotion cosine
  • Train on random data?

Fixed Landmark amount range

We want the amount of landmarks selectable by the user to be in a fixed range.

  • Put constant somewhere in backend
  • Replace textbox with slider in frontend

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.