polyaxon/polyaxon
A platform for reproducible and scalable machine learning and deep learning on kubernetes
repo name | polyaxon/polyaxon |
repo link | https://github.com/polyaxon/polyaxon |
homepage | https://polyaxon.com |
language | Python |
size (curr.) | 58067 kB |
stars (curr.) | 2350 |
created | 2016-12-26 |
license | Apache License 2.0 |
Polyaxon
Welcome to Polyaxon, a platform for building, training, and monitoring large scale deep learning applications.
Polyaxon deploys into any data center, cloud provider, or can be hosted and managed by Polyaxon, and it supports all the major deep learning frameworks such as Tensorflow, MXNet, Caffe, Torch, etc.
Polyaxon makes it faster, easier, and more efficient to develop deep learning applications by managing workloads with smart container and node management. And it turns GPU servers into shared, self-service resources for your team or organization.
Install
TL;DR;
-
Create a deployment
# Create a namespace $ kubectl create namespace polyaxon # Add Polyaxon charts repo $ helm repo add polyaxon https://charts.polyaxon.com # Deploy Polyaxon $ helm install polyaxon/polyaxon \ --name=polyaxon \ --namespace=polyaxon \ -f config.yaml
-
Install CLI
# Install Polyaxon CLI $ pip install -U polyaxon-cli # Config Polyaxon CLI $ polyaxon config ... # Login to your account $ polyaxon login
Please check polyaxon installation guide
If you are looking for the documentation of Polyaxon v0.4, please go here.
Quick start
TL;DR;
-
Start a project
# Create a project $ polyaxon project create --name=quick-start --description='Polyaxon quick start.' # Clone the quick start repo $ git clone https://github.com/polyaxon/polyaxon-quick-start.git $ cd polyaxon-quick-start # initialize it $ polyaxon init quick-start
-
Train and track logs & resources
# Upload code and start experiments $ polyaxon run -u # Stream logs $ polyaxon experiment -xp 1 logs # Stream resources $ polyaxon experiment -xp 1 resources
-
Dashboard
# Start Polyaxon dashboard $ polyaxon dashboard Dashboard page will now open in your browser. Continue? [Y/n]: y
-
Notebook
# Start Jupyter notebook for your project $ polyaxon notebook start -f polyaxonfile_notebook.yml Notebook is being deployed for project `quick-start` It may take some time before you can access the notebook.. Your notebook will be available on: http://52.226.37.54:80/notebook/root/quick-start
-
Tensorboard
# Start TensorBoard $ polyaxon tensorboard start Tensorboard is being deployed for project `quick-start` It may take some time before you can access tensorboard. Your tensorboard will be available on: http://52.226.37.54:80/tensorboard/root/quick-start
Please check our quick start guide to start training your first experiment.
Distributed training
Polyaxon supports and simplifies distributed training. Depending on the framework you are using, you need to adapt your code to enable the distributed training, and update your polyaxonfile with an environment section.
Here are some examples of using distributed training:
- Tensorflow distributed example
- MXNet distributed example
- Pytorch distributed example
- Horovod distributed example
- MPI distributed example
Hyperparameters tuning
Polyaxon has a concept for suggesting hyperparameters and managing their results very similar to Google Vizier called experiment groups. An experiment group in Polyaxon defines a search algorithm, a search space, and a model to train.
Architecture
Documentation
Check out our documentation to learn more about Polyaxon.
Dashboard
Polyaxon comes with a dashboard that shows the projects and experiments created by you and your team members.
To start the dashboard, just run the following command in your terminal
$ polyaxon dashboard
-
List Projects
-
Project Overview
-
Experiments
-
Experiment Groups
-
Experiment Overview
-
Experiment Metrics
-
Experiment Logs
Project status
Polyaxon is stable and it’s running in production mode at many startups and Fortune 500 companies.
Contributions
Please follow the contribution guide line: Contribute to Polyaxon.
Research
If you use Polyaxon in your academic research, we would be grateful if you could cite it.
Feel free to contact us, we would love to learn about your project and see how we can support your custom need.