Documentation
English
Search…
⌃K

Initialize sweeps

Weights & Biases uses a Sweep Controller to manage sweeps on the cloud (standard), locally (local) across one or more machines. After a run completes, the sweep controller will issue a new set of instructions describing a new run to execute. These instructions are picked up by agents who actually perform the runs. In a typical W&B Sweep, the controller lives on the Weights & Biases server. Agents live on your machine(s).
The following code snippets demonstrate how to initialize sweeps with the CLI and within a Jupyter Notebook or Python script.
  1. 1.
    Before you initialize a sweep, make sure you have a sweep configuration defined either in a YAML file or a nested Python dictionary object in your script. For more information see, Define sweep configuration.
  2. 2.
    Both the W&B Sweep and the W&B Run must be in the same project. Therefore, the name you provide when you initialize Weights & Biases (wandb.init) must match the name of the project you provide when you initialize a W&B Sweep (wandb.sweep).
Python script or Jupyter Notebook
CLI
Use the Weights & Biases SDK to initialize a sweep. Pass the sweep configuration dictionary to the sweep parameter. Optionally provide the name of the project for the project parameter (project) where you want the output of the W&B Run to be stored. If the project is not specified, the run is put in an "Uncategorized" project.
import wandb
# Example sweep configuration
sweep_configuration = {
'method': 'random',
'name': 'sweep',
'metric': {
'goal': 'maximize',
'name': 'val_acc'
},
'parameters': {
'batch_size': {'values': [16, 32, 64]},
'epochs': {'values': [5, 10, 15]},
'lr': {'max': 0.1, 'min': 0.0001}
}
}
sweep_id = wandb.sweep(sweep=sweep_configuration, project="project-name")
The wandb.sweep function returns the sweep ID. The sweep ID includes the entity name and the project name. Make a note of the sweep ID.
Use the Weights & Biases CLI to initialize a sweep. Provide the name of your configuration file. Optionally provide the name of the project for the project flag. If the project is not specified, the W&B Run is put in an "Uncategorized" project.
Use the wandb sweep command to initialize a sweep. The proceeding code example initializes a sweep for a sweeps_demo project and uses a config.yaml file for the configuration.
wandb sweep --project sweeps_demo config.yaml
This command will print out a sweep ID. The sweep ID includes the entity name and the project name. Make a note of the sweep ID.