Documentation

This commit is contained in:
allegroai 2019-06-14 01:08:08 +03:00
parent e826a6d33b
commit 9d8e5620c9

View File

@ -10,17 +10,17 @@
Behind every great scientist are great repeatable methods. Sadly, this is easier said than done. Behind every great scientist are great repeatable methods. Sadly, this is easier said than done.
When talented scientists, engineers, or developers work on their own, a mess may be unavoidable. When talented scientists, engineers, or developers work on their own, a mess may be unavoidable.
Yet, it may still be manageable. However, with time and more people joining your project, managing the clutter takes Yet, it may still be manageable. However, with time and more people joining your project, managing the clutter takes
its toll on productivity. As your project moves toward production, visibility and provenance for scaling your its toll on productivity. As your project moves toward production, visibility and provenance for scaling your
deep-learning efforts are a must. deep-learning efforts are a must.
For teams or entire companies, TRAINS logs everything in one central server and takes on the responsibilities for For teams or entire companies, TRAINS logs everything in one central server and takes on the responsibilities for
visibility and provenance so productivity does not suffer. TRAINS records and manages various deep learning visibility and provenance so productivity does not suffer. TRAINS records and manages various deep learning
research workloads and does so with practically zero integration costs. research workloads and does so with practically zero integration costs.
We designed TRAINS specifically to require effortless integration so that teams can preserve their existing methods We designed TRAINS specifically to require effortless integration so that teams can preserve their existing methods
and practices. Use it on a daily basis to boost collaboration and visibility, or use it to automatically collect and practices. Use it on a daily basis to boost collaboration and visibility, or use it to automatically collect
your experimentation logs, outputs, and data to one centralized server. your experimentation logs, outputs, and data to one centralized server.
(See TRAINS live at [https://demoapp.trainsai.io](https://demoapp.trainsai.io)) (See TRAINS live at [https://demoapp.trainsai.io](https://demoapp.trainsai.io))
@ -29,17 +29,17 @@ your experimentation logs, outputs, and data to one centralized server.
## Main Features ## Main Features
TRAINS is our solution to a problem we shared with countless other researchers and developers in the machine TRAINS is our solution to a problem we shared with countless other researchers and developers in the machine
learning/deep learning universe: Training production-grade deep learning models is a glorious but messy process. learning/deep learning universe: Training production-grade deep learning models is a glorious but messy process.
TRAINS tracks and controls the process by associating code version control, research projects, TRAINS tracks and controls the process by associating code version control, research projects,
performance metrics, and model provenance. performance metrics, and model provenance.
* Start today! * Start today!
* TRAINS is free and open-source * TRAINS is free and open-source
* TRAINS requires only two lines of code for full integration * TRAINS requires only two lines of code for full integration
* Use it with your favorite tools * Use it with your favorite tools
* Seamless integration with leading frameworks, including: *PyTorch*, *TensorFlow*, *Keras*, and others coming soon * Seamless integration with leading frameworks, including: *PyTorch*, *TensorFlow*, *Keras*, and others coming soon
* Support for *Jupyter Notebook* (see [trains-jupyter-plugin](https://github.com/allegroai/trains-jupyter-plugin)) * Support for *Jupyter Notebook* (see [trains-jupyter-plugin](https://github.com/allegroai/trains-jupyter-plugin))
and *PyCharm* remote debugging (see [trains-pycharm-plugin](https://github.com/allegroai/trains-pycharm-plugin)) and *PyCharm* remote debugging (see [trains-pycharm-plugin](https://github.com/allegroai/trains-pycharm-plugin))
* Log everything. Experiments become truly repeatable * Log everything. Experiments become truly repeatable
* Model logging with **automatic association** of **model + code + parameters + initial weights** * Model logging with **automatic association** of **model + code + parameters + initial weights**
@ -73,7 +73,7 @@ performance metrics, and model provenance.
## See for Yourself ## See for Yourself
We have a demo server up and running at https://demoapp.trainsai.io. You can try out TRAINS and test your code with it. We have a demo server up and running at https://demoapp.trainsai.io. You can try out TRAINS and test your code with it.
Note that it resets every 24 hours and all of the data is deleted. Note that it resets every 24 hours and all of the data is deleted.
Connect your code with TRAINS: Connect your code with TRAINS:
@ -103,7 +103,7 @@ TRAINS is composed of the following:
* [Web-App](https://github.com/allegroai/trains-web) (web user interface) * [Web-App](https://github.com/allegroai/trains-web) (web user interface)
* Python SDK (auto-magically connects your code, see [Using TRAINS](#using-trains-example)) * Python SDK (auto-magically connects your code, see [Using TRAINS](#using-trains-example))
The following diagram illustrates the interaction of the [trains-server](https://github.com/allegroai/trains-server) The following diagram illustrates the interaction of the [trains-server](https://github.com/allegroai/trains-server)
and a GPU training machine using TRAINS and a GPU training machine using TRAINS
![Alt Text](https://github.com/allegroai/trains/blob/master/docs/system_diagram.png?raw=true) ![Alt Text](https://github.com/allegroai/trains/blob/master/docs/system_diagram.png?raw=true)
@ -117,12 +117,12 @@ and a GPU training machine using TRAINS
pip install trains pip install trains
3. Run the initial configuration wizard and follow the instructions to setup TRAINS package 3. Run the initial configuration wizard and follow the instructions to setup TRAINS package
(http://**_trains-server ip_**:__port__ and user credentials) (http://**_trains-server ip_**:__port__ and user credentials)
trains-init trains-init
After installing and configuring, you can access your configuration file at `~/trains.conf`. After installing and configuring, you can access your configuration file at `~/trains.conf`.
View a sample configuration file [here](https://github.com/allegroai/trains/blob/master/docs/trains.conf). View a sample configuration file [here](https://github.com/allegroai/trains/blob/master/docs/trains.conf).
## Using TRAINS ## Using TRAINS
@ -149,18 +149,18 @@ For more examples and use cases, see [examples](https://github.com/allegroai/tra
## Who Supports TRAINS? ## Who Supports TRAINS?
TRAINS is supported by the same team behind *allegro.ai*, TRAINS is supported by the same team behind *allegro.ai*,
where we build deep learning pipelines and infrastructure for enterprise companies. where we build deep learning pipelines and infrastructure for enterprise companies.
We built TRAINS to track and control the glorious but messy process of training production-grade deep learning models. We built TRAINS to track and control the glorious but messy process of training production-grade deep learning models.
We are committed to vigorously supporting and expanding the capabilities of TRAINS. We are committed to vigorously supporting and expanding the capabilities of TRAINS.
## Why Are We Releasing TRAINS? ## Why Are We Releasing TRAINS?
We believe TRAINS is ground-breaking. We wish to establish new standards of experiment management in We believe TRAINS is ground-breaking. We wish to establish new standards of experiment management in
deep-learning and ML. Only the greater community can help us do that. deep-learning and ML. Only the greater community can help us do that.
We promise to always be backwardly compatible. If you start working with TRAINS today, We promise to always be backwardly compatible. If you start working with TRAINS today,
even though this project is currently in the beta stage, your logs and data will always upgrade with you. even though this project is currently in the beta stage, your logs and data will always upgrade with you.
## License ## License