Skip to content

A web-based interactive platform for dynamic visualization of Machine Learning models. Designed for students, educators, and ML enthusiasts, this website helps users intuitively understand how various algorithms work through real-time simulations and visual feedback.

Notifications You must be signed in to change notification settings

navinkumar-classic/hyperviz

Repository files navigation

HyperViz hypervizlogo

Overview

Machine learning; a subject considered extremely complex and difficult to understand have. Well, what if ML models and understanding the effects of hyperparameters don't have to be black box? HyperViz is a dynamic interactive web platform developed to allow visual learning for anyone interested in understanding the working of these models and how to tune hyperparameters efficiently. It turns the dry, theoretical concepts of machine learning into something intuitive and interactive. enabling users to understand how various algorithms work, visualize them via realtime simulations and experience the effects of hyperparameter tuning.

The project leverages NextJS in combination with TypeScript to create our scalable front-end application while we run models in the back using Flask, either with the help of ML libraries or direct implementation.

Models Available

  • KNN
  • K Means
  • Linear and Polynomial Regression
  • DBSCAN
  • Naive Bayes
  • Neural Network: MLP
  • Reinforcement Learning
  • PCA
  • SOM
  • Decision Tree

Features

Technology Stack

  • Frontend: React / NextJS + Canvas API
  • Backend: Flask + ML Library
  • Styling: TailwindCSS
  • Visualization: Custom logic using React hooks and canvas rendering

Installation

Prerequisites

  1. Install Material UI (Core + Icons)
npm install @mui/material @emotion/react @emotion/styled @mui/icons-material
  1. Install Three.js
npm install three
  1. Install Tailwind CSS
npm install -D tailwindcss@latest postcss@latest autoprefixer@latest
npx tailwindcss init -p

Running Locally

git clone https://github.com/navinkumar-classic/hyperviz.git
cd hyperviz
npm install
npm run dev

Usage

We have made sure that our website is easily navigable and intuitive in its usage.

Homepage

image

Samples

This dynamic Q-learning visualizaer helps to understand reinforcement learning and the effects of hyperparameters. The user can set the obstacles and tune the hyperparameters and manually run episode simulations and watch the reward progress in real time.

image

This visualizer helps the user to clearly understand how SOMs (Self Organizing Maps) classifier works, allowing the user to click anywhere to add their own points and tune the parameters.

image

The user can choose what type of regression they want to play with, set the hyperparameters and then place points to see the regression curve dynamically forming to fit their points.

image

Step By Step

To obtain further clarity into how to use the visualizer and some technical details to help gain better insights, the user can click on the "STEP BY STEP" button at the bottom left of the screen.

image

License

This project is licensed under the MIT License.

Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix.
  3. Commit your changes with descriptive messages.
  4. Submit a pull request for review.

Contributors

  • Sriram B. Swami
  • A.O. Navin Kumar
  • Meghna Varma

Thank you for exploring HyperViz. Let's learn ML smarter, stronger and better!

About

A web-based interactive platform for dynamic visualization of Machine Learning models. Designed for students, educators, and ML enthusiasts, this website helps users intuitively understand how various algorithms work through real-time simulations and visual feedback.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages