Getting Started
This guide describes how to get started with Katib and run a few examples.
Prerequisites
You need to install the following Katib components to run examples:
Getting Started with Katib Python SDK
You can run your first hyperparameter tuning Katib Experiment using Python SDK.
In the following example we are going to maximize a simple objective function:
$$ F(a,b) = 4a - b^2 $$
The bigger \(a\) and the lesser \(b\) value, the bigger the function value \(F\).
If you install Katib as part of Kubeflow Platform, you can open a new
Kubeflow Notebook to run this script. If you
install Katib standalone, make sure that you
configure local kubeconfig
to access your Kubernetes cluster where you installed Katib control plane.
# [1] Create an objective function.
def objective(parameters):
# Import required packages.
import time
time.sleep(5)
# Calculate objective function.
result = 4 * int(parameters["a"]) - float(parameters["b"]) ** 2
# Katib parses metrics in this format: <metric-name>=<metric-value>.
print(f"result={result}")
import kubeflow.katib as katib
# [2] Create hyperparameter search space.
parameters = {
"a": katib.search.int(min=10, max=20),
"b": katib.search.double(min=0.1, max=0.2)
}
# [3] Create Katib Experiment with 12 Trials and 2 CPUs per Trial.
name = "tune-experiment"
katib.KatibClient().tune(
name=name,
objective=objective,
parameters=parameters,
objective_metric_name="result",
max_trial_count=12,
resources_per_trial={"cpu": "2"},
)
# [4] Wait until Katib Experiment is complete
katib.KatibClient().wait_for_experiment_condition(name=name)
# [5] Get the best hyperparameters.
print(katib.KatibClient().get_optimal_hyperparameters(name))
You should get similar output for the most optimal Trial, hyperparameters, and observation metrics:
{
"best_trial_name": "tune-experiment-nmggpxx2",
"parameter_assignments": [
{
"name": "a",
"value": "19"
},
{
"name": "b",
"value": "0.13546396192975868"
}
],
"observation": {
"metrics": [
{
"latest": "75.98164951501829",
"max": "75.98164951501829",
"min": "75.98164951501829",
"name": "result"
}
]
}
}
In the Katib UI you should see list of all completed Trials with results:
Next steps
Check the Katib UI guide to get more information about your Katib Experiments.
Run Katib hyperparameter tuning Experiment using YAML.
Learn how to configure Katib Experiment parameters.
Check more Katib Examples.
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.