Talaria Scientific

TauOpt, the optimizer

For anyone with an expensive function to optimize.

Closed beta today, hostedEngine public December 5

TauOpt picks the next configuration to try when each evaluation is expensive: hyperparameter tuning, simulator calibration, experimental design. The engine fits its own statistical model to the observations reported so far and picks the next point, and every suggestion carries a receipt naming the strategy that produced it.

One client runs the engine in-process on your own machine or talks to the hosted service, with the same create, suggest, observe, and best calls either way. The engine never runs your objective; you do. Today: the hosted service, by request. December 5: the same engine in-process on your machine.

Request TauOpt access →TauOpt documentationContact us
Figure 1.The TauOpt loop: a suggestion out, with its receipt naming the strategy that produced it; an observation back; the best point so far on request.

How you would use it

Four calls, in a loop you own.

  1. create an experiment: the parameters and their ranges, the metrics, any constraints.
  2. suggest: ask for the next point. On the hosted service many workers can draw from one experiment without repeating a point.
  3. Evaluate it yourself: a training run, a simulation, an experiment.
  4. observe: report the value, its measurement noise, or a failure. best returns the best point so far whenever you ask.
from tauopt import Client

# in-process; the hosted service takes the same calls
client = Client(driver="local")
exp = client.create_experiment(
    name="my-tuning-run",
    parameters=[
        {"name": "lr", "type": "double", "bounds": (1e-5, 1e-1), "log_scale": True},
        {"name": "layers", "type": "integer", "bounds": (1, 8)},
    ],
    metric={"name": "val_score", "objective": "maximize"},
)
for _ in range(30):
    sug = client.suggest(exp.id)
    # your training run, simulation, or experiment
    value = evaluate(sug.assignments)
    client.observe(exp.id, suggestion_id=sug.id, value=value)
best = client.best(exp.id).data[0]

What it handles

Where TauOpt meets Talaria

How to get it

Get access, or get in touch

Talaria is in private beta with a small group of researchers, and TauOpt is in closed beta. For product access, use the request forms. For enterprise, partnerships, or press, use the contact page.

100%Download SVG