{
"cells": [
{
"attachments": {},
"cell_type": "markdown",
"id": "2438a1d7-6564-4a4d-bb8a-5ae7f3eba552",
"metadata": {
"tags": []
},
"source": [
"# Visualizing Population Based Training (PBT) Hyperparameter Optimization\n",
"\n",
"**Assumptions:** The reader has a basic understanding of the [PBT algorithm](https://www.deepmind.com/blog/population-based-training-of-neural-networks) and wants to dive deeper and verify the underlying algorithm behavior with [Ray's PBT implementation](tune-scheduler-pbt). [This guide](pbt-guide-ref) provides resources for gaining some context.\n",
"\n",
"Population Based Training (PBT) is a powerful technique that combines parallel search with sequential optimization to efficiently find optimal hyperparameters. Unlike traditional hyperparameter tuning methods, PBT dynamically adjusts hyperparameters during training by having multiple training runs (\"trials\") that evolve together, periodically replacing poorly performing configurations with perturbations of better ones.\n",
"\n",
"This tutorial will go through a simple example that will help you develop a better understanding of what PBT is doing under the hood when using it to tune your algorithms.\n",
"\n",
"We will learn how to:\n",
"\n",
"1. **Set up checkpointing and loading for PBT** with the function trainable interface\n",
"2. **Configure Tune and PBT scheduler parameters**\n",
"3. **Visualize PBT algorithm behavior** to gain some intuition\n",
"\n",
"## Set up Toy the Example\n",
"\n",
"The toy example optimization problem we will use comes from the [PBT paper](https://arxiv.org/pdf/1711.09846.pdf) (see Figure 2 for more details). The goal is to find parameters that maximize an quadratic function, while only having access to an estimator that depends on a set of hyperparameters. A practical example of this is maximizing the (unknown) generalization capabilities of a model across all possible inputs with only access to the empirical loss of your model, which depends on hyperparameters in order to optimize.\n",
"\n",
"We'll start with some imports."
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "49b2e7ba-532b-431e-aa81-1467cb2b4e70",
"metadata": {},
"outputs": [],
"source": [
"!pip install -q -U \"ray[tune]\" matplotlib"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "efec7627-fd60-48e9-8214-0b4fbb8e4402",
"metadata": {},
"source": [
"Note: this tutorial imports functions from {doc}`this helper file ` named `pbt_visualization_utils.py`. These define plotting functions for the PBT training progress."
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "90471b91",
"metadata": {
"tags": [
"hide-output"
]
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"2025-02-24 16:21:26,622\tINFO util.py:154 -- Missing packages: ['ipywidgets']. Run `pip install -U ipywidgets`, then restart the notebook server for rich notebook output.\n",
"2025-02-24 16:21:26,890\tINFO util.py:154 -- Missing packages: ['ipywidgets']. Run `pip install -U ipywidgets`, then restart the notebook server for rich notebook output.\n"
]
}
],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"import os\n",
"import pickle\n",
"import tempfile\n",
"\n",
"import ray\n",
"from ray import tune\n",
"from ray.tune.schedulers import PopulationBasedTraining\n",
"from ray.tune.tune_config import TuneConfig\n",
"from ray.tune.tuner import Tuner\n",
"\n",
"from pbt_visualization_utils import (\n",
" get_init_theta,\n",
" plot_parameter_history,\n",
" plot_Q_history,\n",
" make_animation,\n",
")\n"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "a223d6a2-a7d5-40a1-8e12-2a5a1a0a0070",
"metadata": {},
"source": [
"Concretely, we will use the definitions (with very minor modifications) provided in the [paper](https://arxiv.org/pdf/1711.09846.pdf) for the function we are trying to optimize, and the estimator we are given.\n",
"\n",
"Our goal is to maximize a quadratic function `Q`, but we only have access to a biased estimator `Qhat` that depends on hyperparameters. This simulates real-world scenarios where we want to optimize for true generalization performance but can only measure training performance, which is influenced by hyperparameters.\n",
"\n",
"\n",
"Here is a list of the concepts we will use for the example, and what they might be analagous to in practice:\n",
"\n",
"| Symbol | In This Example | Real-World Analogy |\n",
"|---------|-------------|-------------------|\n",
"|`theta = [theta0, theta1]`| Model parameters, updated in each training step.|Neural network parameters|\n",
"|`h = [h0, h1]`| The hyperparameters optimized by PBT. | Learning rate, batch size, etc.|\n",
"|`Q(theta)`| **True reward function** we *want* to optimize, but is not directly use for training.|**True generalization**-- an theoretical and unobersvable in practice.|\n",
"|`Qhat(theta \\| h)`| **Estimated reward function** we actually optimize against; depends on the hyperparameters as well as the model parameters.|**Empirical reward** in training.|\n",
"|`grad_Qhat(theta \\| h)`| Gradient of the estimated reward function, used to update model parameters | Gradient descent step in training | \n",
"\n",
"Below are the implementations in code."
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "a75e75db",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Initial parameter values: theta = [0.9 0.9]\n"
]
}
],
"source": [
"def Q(theta):\n",
" # equation for an elliptic paraboloid with a center at (0, 0, 1.2)\n",
" return 1.2 - (3 / 4 * theta[0] ** 2 + theta[1] ** 2)\n",
"\n",
"\n",
"def Qhat(theta, h):\n",
" return 1.2 - (h[0] * theta[0] ** 2 + h[1] * theta[1] ** 2)\n",
"\n",
"\n",
"def grad_Qhat(theta, h):\n",
" theta_grad = -2 * h * theta\n",
" theta_grad[0] *= 3 / 4\n",
" h_grad = -np.square(theta)\n",
" h_grad[0] *= 3 / 4\n",
" return {\"theta\": theta_grad, \"h\": h_grad}\n",
"\n",
"\n",
"theta_0 = get_init_theta()\n",
"print(f\"Initial parameter values: theta = {theta_0}\")\n"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "0ee21632-9be6-4f80-ac80-c71696cb0f4f",
"metadata": {},
"source": [
"## Defining the Function Trainable\n",
"\n",
"We will define the training loop:\n",
"1. Load the hyperparameter configuration\n",
"2. Initialize the model, **resuming from a checkpoint if one exists (this is important for PBT, since the scheduler will pause and resume trials frequently when trials get exploited).**\n",
"3. Run the training loop and **checkpoint.**"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "2d1a9fb5",
"metadata": {},
"outputs": [],
"source": [
"def train_func(config):\n",
" # Load the hyperparam config passed in by the Tuner\n",
" h0 = config.get(\"h0\")\n",
" h1 = config.get(\"h1\")\n",
" h = np.array([h0, h1]).astype(float)\n",
"\n",
" lr = config.get(\"lr\")\n",
" train_step = 1\n",
" checkpoint_interval = config.get(\"checkpoint_interval\", 1)\n",
"\n",
" # Initialize the model parameters\n",
" theta = get_init_theta()\n",
"\n",
" # Load a checkpoint if it exists\n",
" # This checkpoint could be a trial's own checkpoint to resume,\n",
" # or another trial's checkpoint placed by PBT that we will exploit\n",
" checkpoint = tune.get_checkpoint()\n",
" if checkpoint:\n",
" with checkpoint.as_directory() as checkpoint_dir:\n",
" with open(os.path.join(checkpoint_dir, \"checkpoint.pkl\"), \"rb\") as f:\n",
" checkpoint_dict = pickle.load(f)\n",
" # Load in model (theta)\n",
" theta = checkpoint_dict[\"theta\"]\n",
" last_step = checkpoint_dict[\"train_step\"]\n",
" train_step = last_step + 1\n",
"\n",
" # Main training loop (trial stopping is configured later)\n",
" while True:\n",
" # Perform gradient ascent steps\n",
" param_grads = grad_Qhat(theta, h)\n",
" theta_grad = np.asarray(param_grads[\"theta\"])\n",
" theta = theta + lr * theta_grad\n",
"\n",
" # Define which custom metrics we want in our trial result\n",
" result = {\n",
" \"Q\": Q(theta),\n",
" \"theta0\": theta[0],\n",
" \"theta1\": theta[1],\n",
" \"h0\": h0,\n",
" \"h1\": h1,\n",
" \"train_step\": train_step,\n",
" }\n",
"\n",
" # Checkpoint every `checkpoint_interval` steps\n",
" should_checkpoint = train_step % checkpoint_interval == 0\n",
" with tempfile.TemporaryDirectory() as temp_checkpoint_dir:\n",
" checkpoint = None\n",
" if should_checkpoint:\n",
" checkpoint_dict = {\n",
" \"h\": h,\n",
" \"train_step\": train_step,\n",
" \"theta\": theta,\n",
" }\n",
" with open(\n",
" os.path.join(temp_checkpoint_dir, \"checkpoint.pkl\"), \"wb\"\n",
" ) as f:\n",
" pickle.dump(checkpoint_dict, f)\n",
" checkpoint = tune.Checkpoint.from_directory(temp_checkpoint_dir)\n",
"\n",
" # Report metric for this training iteration, and include the\n",
" # trial checkpoint that contains the current parameters if we\n",
" # saved it this train step\n",
" tune.report(result, checkpoint=checkpoint)\n",
"\n",
" train_step += 1\n"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "5bdc96e0-b4bf-4a7a-9f15-e94de6f4d21b",
"metadata": {},
"source": [
"```{note}\n",
"Since PBT will keep restoring from latest checkpoints, it's important to save and load `train_step` correctly in a function trainable. **Make sure you increment the loaded `train_step` by one as shown above in `checkpoint_dict`.** This avoids repeating an iteration and causing the checkpoint and perturbation intervals to be out of sync.\n",
"\n",
"```"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "caa002e2-1d68-404c-84bd-99b8d8119dac",
"metadata": {},
"source": [
"## Configure PBT and Tuner\n",
"\n",
"We start by initializing ray (shutting it down if a session existed previously)."
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "f68445a3-958f-49a0-a9f9-03121c3c731c",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"2025-02-24 16:21:27,556\tINFO worker.py:1841 -- Started a local Ray instance.\n"
]
},
{
"data": {
"text/html": [
"
\n",
"
\n",
"
\n",
" \n",
"
\n",
"\n",
"
\n",
"
\n",
"
Python version:
\n",
"
3.11.11
\n",
"
\n",
"
\n",
"
Ray version:
\n",
"
2.42.1
\n",
"
\n",
" \n",
"
\n",
"\n",
"
\n",
"
\n"
],
"text/plain": [
"RayContext(dashboard_url='', python_version='3.11.11', ray_version='2.42.1', ray_commit='c2e38f7b75be223c0c033986472daada8622d64f')"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"if ray.is_initialized():\n",
" ray.shutdown()\n",
"ray.init()\n"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "155ec478-4f5d-4614-90a5-1197897cbbcf",
"metadata": {},
"source": [
"### Create the PBT scheduler"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "4e7d83d6-ecaf-4975-8b56-6c9cd5443d22",
"metadata": {},
"outputs": [],
"source": [
"perturbation_interval = 4\n",
"\n",
"pbt_scheduler = PopulationBasedTraining(\n",
" time_attr=\"training_iteration\",\n",
" perturbation_interval=perturbation_interval,\n",
" metric=\"Q\",\n",
" mode=\"max\",\n",
" quantile_fraction=0.5,\n",
" resample_probability=0.5,\n",
" hyperparam_mutations={\n",
" \"lr\": tune.qloguniform(5e-3, 1e-1, 5e-4),\n",
" \"h0\": tune.uniform(0.0, 1.0),\n",
" \"h1\": tune.uniform(0.0, 1.0),\n",
" },\n",
" synch=True,\n",
")\n"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "8143bd8d-b929-4e27-b965-cf852ba3b3d7",
"metadata": {},
"source": [
"A few notes on the PBT config:\n",
"- `time_attr=\"training_iteration\"` in combination with `perturbation_interval=4` will decide whether a trial should continue or exploit a different trial every 4 training iterations.\n",
"- `metric=\"Q\"` and `mode=\"max\"` specify how trial performance is ranked. In this case, the high performing trials are the top 50% of trials (set by `quantile_fraction=0.5`) that report the highest `Q` metrics. Note that we could have set the metric/mode in `TuneConfig` instead.\n",
"- `hyperparam_mutations` specifies that the learning rate `lr` and additional hyperparameters `h0`, `h1` should be perturbed by PBT and defines the resample distribution for each hyperparameter (where `resample_probability=0.5` means that resampling and mutation both happen with 50% probability).\n",
"- `synch=True` means that PBT will run synchronously, which slows down the algorithm by introducing waits, but it produces more understandable visualizations for the purposes of this tutorial.\n",
" - In synchronous PBT, we wait until **all trials** reach the next `perturbation_interval` to decide which trials should continue and which trials should pause and start from the checkpoint of another trials. In the case of 2 trials, this means that every `perturbation_interval` will result in the worse performing trial exploiting the better performing trial.\n",
" - This is not always the case in asynchronous PBT, since trials report results and decide whether to continue or exploit **one by one**. This means that a trial could decide that it is a top-performer and decide to continue, since other trials haven't had the chance to report their better results yet. Therefore, we do not always see trials exploiting on every `perturbation_interval`."
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "4efe72d7-873d-44c5-9e74-1cd2f41a5c22",
"metadata": {},
"source": [
"### Create the Tuner"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "c7fa9c92-6ccc-4e8c-91ef-04b95af87a05",
"metadata": {},
"outputs": [],
"source": [
"tuner = Tuner(\n",
" train_func,\n",
" param_space={\n",
" \"lr\": 0.05,\n",
" \"h0\": tune.grid_search([0.0, 1.0]),\n",
" \"h1\": tune.sample_from(lambda spec: 1.0 - spec.config[\"h0\"]),\n",
" \"num_training_iterations\": 100,\n",
" # Match `checkpoint_interval` with `perturbation_interval`\n",
" \"checkpoint_interval\": perturbation_interval,\n",
" },\n",
" tune_config=TuneConfig(\n",
" num_samples=1,\n",
" # Set the PBT scheduler in this config\n",
" scheduler=pbt_scheduler,\n",
" ),\n",
" run_config=tune.RunConfig(\n",
" stop={\"training_iteration\": 100},\n",
" failure_config=tune.FailureConfig(max_failures=3),\n",
" ),\n",
")\n"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "a7407fba-eb82-4cd6-a9cd-bb2adef451df",
"metadata": {},
"source": [
"```{note}\n",
"We recommend matching `checkpoint_interval` with `perturbation_interval` from the PBT config.\n",
"This ensures that the PBT algorithm actually exploits the trials in the most recent iteration.\n",
"\n",
"If your `perturbation_interval` is large and want to checkpoint more frequently, set `perturbation_interval` to be a multiple of `checkpoint_interval`.\n",
"```\n",
"\n",
"A few other notes on the Tuner config:\n",
"- `param_space` specifies the *initial* `config` input to our training function. A `grid_search` over two values will launch two trials with a certain set of hyperparameters, and PBT will continue modifying them as training progresses.\n",
"- The initial hyperparam settings for `h0` and `h1` are configured so that two trials will spawn, one with `h = [1, 0]` and the other with `h = [0, 1]`. This matches the paper experiment and will be used to compare against a `grid_search` baseline that removes the PBT scheduler."
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "9221f992-48dc-4cf8-ba9e-3f080a741ee3",
"metadata": {},
"source": [
"## Run the experiment\n",
"\n",
"We launch the trials by calling `Tuner.fit`."
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "1559270f",
"metadata": {
"scrolled": true,
"tags": [
"hide-output"
]
},
"outputs": [
{
"data": {
"text/html": [
"
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, axs = plt.subplots(1, 2, figsize=(13, 6), gridspec_kw=dict(width_ratios=[1.5, 1]))\n",
"\n",
"colors = [\"red\", \"black\"]\n",
"labels = [\"h = [1, 0]\", \"h = [0, 1]\"]\n",
"\n",
"plot_parameter_history(\n",
" pbt_results,\n",
" colors,\n",
" labels,\n",
" perturbation_interval=perturbation_interval,\n",
" fig=fig,\n",
" ax=axs[0],\n",
")\n",
"plot_Q_history(pbt_results, colors, labels, ax=axs[1])\n"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "c3d59716-4292-484b-af69-2894fd452505",
"metadata": {},
"source": [
"The plot on the right shows the true function value `Q(theta)` as training progresses for both trials. Both trials reach the maximum value of `1.2`. This demonstrates PBT's ability to find optimal solutions regardless of the initial hyperparameter configuration.\n",
"\n",
"Here's how to understand the plot on the left:\n",
"- The plot on the left shows the parameter values `(theta0, theta1)` on every training iteration, for both trials. As the training iteration increases, the size of the point gets smaller.\n",
"- We see the iteration shown as a label next to points at every `perturbation_interval` training iterations. Let's zoom into the transition from iteration 4 to 5 for both the trials.\n",
" - We see that a trial either **continues** (see how iteration 4 to 5 for the red trial just continues training) or **exploits and perturbs the other trial and then performs a train step** (see how iteration 4 to 5 for the black trial jumps to the parameter value of the red trial).\n",
" - The gradient direction also changes at this step for the red trial due to the hyperparameters changing from the exploit and explore steps of PBT. Remember that the gradient of the estimator `Qhat` depends on the hyperparameters `(h0, h1)`.\n",
" - The varying size of jumps between training iterations shows that the learning rate is also changing, since we included `lr` in the set of hyperparameters to mutate."
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "af6aa641-7f1e-41d1-8e77-c389ad198dab",
"metadata": {},
"source": [
"### Animate the training progress"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "79513127-7705-4e04-947d-29cc9da4b259",
"metadata": {},
"outputs": [],
"source": [
"make_animation(\n",
" pbt_results,\n",
" colors,\n",
" labels,\n",
" perturbation_interval=perturbation_interval,\n",
" filename=\"pbt.gif\",\n",
")\n"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "6adf9e5b-e26f-4495-a28b-8282feb48a40",
"metadata": {},
"source": [
"We can also animate the training progress to see what's happening to the model parameters at each step. The animation shows:\n",
"\n",
"1. How parameters move through space during training\n",
"2. When exploitation occurs (jumps in parameter space)\n",
"3. How gradient directions change after hyperparameter perturbation\n",
"4. Both trials eventually converging to the optimal parameter region\n",
"\n",
""
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "ac66d5f0",
"metadata": {},
"source": [
"## Grid Search Comparison\n",
"\n",
"The paper includes a comparison to a grid search of 2 trials, using the same initial hyperparameter configurations (`h = [1, 0], h = [0, 1]`) as the PBT experiment. The only difference in the code below is removing the PBT scheduler from the `TuneConfig`. "
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "1765efa3",
"metadata": {
"tags": [
"hide-output"
]
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n"
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"2025-02-24 16:22:17,325\tWARNING sample.py:469 -- sample_from functions that take a spec dict are deprecated. Please update your function to work with the config dict directly.\n",
"2025-02-24 16:22:17,326\tWARNING sample.py:469 -- sample_from functions that take a spec dict are deprecated. Please update your function to work with the config dict directly.\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000000)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000001)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000002)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000003)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000004)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000005)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000006)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000007)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000008)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000009)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000010)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000011)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000012)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000013)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000014)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000015)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000016)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000017)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000018)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000019)\n",
"\u001b[36m(train_func pid=23609)\u001b[0m Checkpoint successfully created at: Checkpoint(filesystem=local, path=/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17/train_func_91d06_00001_1_h0=1.0000,lr=0.0450_2025-02-24_16-22-17/checkpoint_000020)\n",
"2025-02-24 16:22:18,562\tINFO tune.py:1009 -- Wrote the latest version of all result files and experiment state to '/Users/rdecal/ray_results/train_func_2025-02-24_16-22-17' in 0.0061s.\n",
"2025-02-24 16:22:18,565\tINFO tune.py:1041 -- Total run time: 1.25 seconds (1.23 seconds for the tuning loop).\n"
]
}
],
"source": [
"if ray.is_initialized():\n",
" ray.shutdown()\n",
"ray.init()\n",
"\n",
"tuner = Tuner(\n",
" train_func,\n",
" param_space={\n",
" \"lr\": tune.qloguniform(1e-2, 1e-1, 5e-3),\n",
" \"h0\": tune.grid_search([0.0, 1.0]),\n",
" \"h1\": tune.sample_from(lambda spec: 1.0 - spec.config[\"h0\"]),\n",
" },\n",
" tune_config=tune.TuneConfig(\n",
" num_samples=1,\n",
" metric=\"Q\",\n",
" mode=\"max\",\n",
" ),\n",
" run_config=tune.RunConfig(\n",
" stop={\"training_iteration\": 100},\n",
" failure_config=tune.FailureConfig(max_failures=3),\n",
" ),\n",
")\n",
"\n",
"grid_results = tuner.fit()\n",
"if grid_results.errors:\n",
" raise RuntimeError\n"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "81f34f80-0c80-45fa-8266-341cfdad1201",
"metadata": {},
"source": [
"As we can see, neither trial makes it to the optimum, since the search configs are stuck with their original values. This illustrates a key advantage of PBT: while traditional hyperparameter search methods (like grid search) keep fixed search values throughout training, PBT can adapt the search dynamically, allowing it to find better solutions with the same computational budget."
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "2bff9d33",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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4PvvK+7o2tW7CyNqIgk4uHz44YdqUukuV9NiAOHh4ZWXnU6nasQpt1W93VuSkpLq3SYqKsotP3vq1Kl45JFHYLFY8O677+Lvf/87YmJicPXVVzcpCOtqdOoPjYSNbm7U2lTMLCEiIiIicnMJjmSV6PX6E5klDJaQj5KAg+skgQXJMHBd37lzJyIiIvDNN99g0KBBCA4Oxi+//HJKGc66detw/vnnIz4+Xj3HyJEjsXHjxmZnb9x+++249957VWBS1nNylkvVMpyOHTuq8wEDBqjb5fE1ZawsXboUZ555JqKjo9UI5f/7v//Dvn37Gr0+mSoka+rUqZNaV9euXfHFF1+o++677z5069ZNbSP3P/TQQ5XTiIRr/82fP1+tW7JTGrI2VwbIRx99hLPOOgshISE4/fTTsXv3bvX/YPDgwSqIJdk2rsCuy/z589GzZ0/1s3r06FEtE6a2fVff41zrkSCb/D+XbRYsWICDBw/i4osvVsGjsLAwnHbaafj666/hbQyWEJFb7C3XZoSYiIh8S05ODiZOnIjIyEj1gWDKlCkoKiqq8zGvvfaaOniXx8iBeV5eHjQzCYfBEgoAM2fOxJNPPokdO3agb9++p9xfWFiISZMmqUDKb7/9pgIHF110kbq9Od555x31YXvNmjV4+umnVSbHsmXLatx27dq16vz7779X2TKfffZZjdsVFxdjxowZWL9+vSolkqDnpZdeCofD0ay1SuBCMkSEBJik9Gf79u2qDOj111/Hv//972rb7927F59++qlap6v8paFrmz17Nh588EEVkAoKCsI111yjgkrys37++Wf13JIh5CIBjFmzZuGxxx5T/w8ff/xxFcCR/VvXvqvvcVV/P+644w61zZgxY1SWTVlZGX766Sds2bIFTz31lCYykViGQ0RERESaJYESORiXDzzyTesNN9yAadOmYeHChbU+RtLcx44dq073338/NDkJh81dyY9JkEIyR2ozatSoUwKcEgz98ccfVXZEU0lgRgIDQgIwL7/8sgoi1LSWVq1aqXPJyKirPOfyyy+vdv3NN99Uj5XARu/evRu9RilL+uCDD/DHH3+ov2VCAhkuKSkpqsfLokWLVEDDRQIrUr7jWndj1ibPJ0EJIUEKKf2R/TJixAh1mwShq/ZpkX343HPP4bLLLqvMJJHn/O9//6uCXLXtu/oe53LnnXdW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fFN9IUONt2DBAhUgkYCIZPZcfvnleOmllyrvlwDKrl27VHBEbNy4UWX4iC5dulR7Lvk9TElJadDPlWCM/B2RMp6Tf78ain+PTuC+OIH74gTui+q4P5q3L+R4QAIltZXK+lSwRIv1qrWl7UqgJNB/YevDZmj14z5qGO6n+nEf1Y/7qH6ebDoqAZOmlEL40rFHcnKyOpcvZ07OjpAvXahpJKi3cOHCWu+X4EfVlOtzzjmnRVKw5d9H27Zt0RL49+gE7osTuC9O4L6ojvuj6fuiJRMcvBos8YV6VSIiIvIf7jz2kA/t8m2WZDlUtXv3blx44YUt9AqIiIjIE/S+Vq8qY/h+/fXXGutVpYma3C9c9arFxcV444031HWpMZaT3W738isiIiIifzv2kFKNe+65R5WIfPLJJ9i7dy8eeughNQJ3ypQpXn5FRERE5HcNXr1ZrypZKdIkrjkd9f0d91H9uI8ahvupftxH9eM+qh/3kXuOPcSdd96J0tJSNUJYSnb69euHZcuWoXPnzl56FeRN/Ld2AvfFCdwXJ3BfVMf9oa19oXN6em4gEREREREREZGG+UQZDhERERERERGRpzBYQkRERERERERUBYMlRERERERERERVMFhCRERERERERFQFgyUnkc71EydORGRkJKKjo9Wov6Kiojq3v+2229C9e3eEhISgffv2uP3225Gfnw9/8sorr6gJQmazGUOHDq0ck1ibjz/+WI1TlO379OmDr7/+Gv6uMfvo9ddfx1lnnYWYmBh1Gj16dL37NFB/l1wWLVqkxnJOmDAB/q6x+ygvLw9///vfkZycrDqGd+vWze//zTV2H73wwguVf6fbtWunJpXIxBJ/9dNPP+Hiiy9WI27l383ixYvrfczKlSsxcOBA9TskU+Tefvttj6yVyF819f3Olz3xxBM4/fTTERERgYSEBPWeLROjqpK/vfKeFRcXh/DwcDVlKjMzE/7uySefVH+PZWJWoO4LGbd+7bXXqtcr78fyGWH9+vWV98vckVmzZqnjGblfjo/37NkDf2O329VY+Y4dO6rXKdPSHn30UfX6/X1f/FTP8UlDXndjP683i0zDoRPGjh3r7Nevn/O3335z/vzzz84uXbo4r7766lq337Jli/Oyyy5zfvHFF869e/c6ly9f7uzatavz8ssvd/qLRYsWOU0mk/PNN990btu2zTl1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eMptt92GJ554Qn0hJWUnc+fORW5ubqPGD8sxmAR75DhMpslI6Y+U30jzWWnQL01WJXiSlZWltpGyl3HjxtW5b6QhrZQuyZdY99xzj8pAOflnnnzcdzJ53OzZs1UZkgR/pCGsNHGVhrZE7sRpOETUJJJ2KumYMiKuVatWDao/le7lS5YswXfffadG651xxhn497//rVIzXeSNWNJZZbqOvCGL559/Xr15Sqd2ORiR55EslaruvfdedaAwbdo09dzyZi9j5eoq7yEiIiJqjoYco3iCjAqW6S8S1JBSF/kiS9bSmOMgeQ0333wzrrzySnVs9/TTT6vbJTghz3vXXXehe/fu6osoyWKRL7/q8sYbb6iAjeyP6667To02lik5VdV03HcyedyMGTPUz+/Tp486vpMxxRKMIXInnXR5detPICIiIiIiIo+R7JaePXuq8cSPPvqot5dD5JNYhkNEREREROTDDh48qDJ3pa+HTKp5+eWXkZqaimuuucbbSyPyWSzDISIiIiIi8mHSB+7tt99WpcjS/0NG/n7//fcqu4SImoZlOEREREREREREVTCzhIiIiIiIiIioCgZLiIiIiIiIiIiqYLCEiIiIiIiIiKgKBkuIiIiIiIiIiKpgsISIiIiIiIiIqAoGS4iIiIiIiIiIqmCwhIiIiIiIiIioCgZLiIiIiIiIiIhwwv8DHHhNr1kumwIAAAAASUVORK5CYII=",
"text/plain": [
"
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, axs = plt.subplots(1, 2, figsize=(13, 6), gridspec_kw=dict(width_ratios=[1.5, 1]))\n",
"\n",
"colors = [\"red\", \"black\"]\n",
"labels = [\"h = [1, 0]\", \"h = [0, 1]\"]\n",
"\n",
"plot_parameter_history(\n",
" grid_results,\n",
" colors,\n",
" labels,\n",
" perturbation_interval=perturbation_interval,\n",
" fig=fig,\n",
" ax=axs[0],\n",
")\n",
"plot_Q_history(grid_results, colors, labels, ax=axs[1])\n"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "fca9689c-b4b9-4483-a8f2-43c3d9d50700",
"metadata": {},
"source": [
"Compare the two plots we generated with Figure 2 from the [PBT paper](https://arxiv.org/pdf/1711.09846.pdf) (in particular, we produced the top-left and bottom-right plots).\n",
"\n",
""
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "49efe3ef-5fd3-429e-bf75-73fdfe674019",
"metadata": {},
"source": [
"## Increase PBT population size\n",
"\n",
"One last experiment: what does it look like if we increase the PBT population size? Now, low-performing trials will sample one of the multiple high-performing trials to exploit, and it should result in some more interesting behavior.\n",
"\n",
"With a larger population:\n",
"1. There's more diversity in the exploration space\n",
"2. Multiple \"good\" solutions can be discovered simultaneously\n",
"3. Different exploitation patterns emerge as trials may choose from multiple well-performing configurations\n",
"4. The population as a whole can develop more robust strategies for optimization\n"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "ce2daa57-fe86-4f18-9ebb-808b7b449dad",
"metadata": {
"tags": [
"hide-output"
]
},
"outputs": [
{
"data": {
"text/html": [
"