
To start the Hyperdock WebUI using the Docker image run the following command: docker run -it \ Note: That since the Hyperdock Worker needs to control Docker and access files on the host computer.
#Hyperdock m1 install#
Or run it on your host with Python 3.6 and install with pip: pip install hyperdockįor full arguments to the worker run: hyperdock-worker -help. This is crucial for worker to start new containers
#Hyperdock m1 how to#
See the wiki for details on how to define the parameters space. Hyperdock supports grid search of parameters from lists and distributions.

More about how to write a target image can found below. Logs from the target image are periodically tailed from the workers to the WebUI. Once the target image has evaluated the parameters it simply writes the loss to the file /hyperdock/loss.json with the option of storing important files to /hyperdock/out. Parameters are available in the json file /hyperdock/params.json. They only need to be able to access the same Mongo database and the workers need to have access to any data required by the target image.Įach program that should be optimized needs to have its own Docker image, the target image, that is setup to load the parameters and write progress reports. Supervisor, Workers and WebUI need not run on the same host. The entire Hyperdock system can be distributed, i.e. They continually send status updates to the database to notify the user of progress.

The Hyperdock Workers dequeues jobs from the work queue and then evaluates the target image with these parameters. It determines what jobs (a specific hyperparameter combination) need to scheduled, which jobs have failed and should be restarted, and notifies users of results. The Hyperdock Supervisor is a background process that monitors all trials. All trials, their status and results are stored in a Mongo database. The Hyperdock Web UI is the main interface for the end-users from where they can specify trials (a target Docker image and the hyperparameter space to search over). The figure below shows the Hyperdock system and its main components. That means that the target can be written in any language, use any framework or run on any operating system as long as it can be made into a Docker image. Hyperdock is a framework for hyperparameter search that can be used to optimized any target as long as that target can be run in a Docker container. A simple framework for distributed hyperparameter optimization in Docker.
