Computing Library › Applications
Applications

Active Learning in Experiment Loops

Letting a model choose its own next training example so it learns the most from the fewest expensive runs.

The idea

Ordinary supervised learning is handed a fixed dataset. Active learning turns that around: the model chooses which example to label next, picking the one it expects to learn the most from. When each label is an expensive simulation or experiment, choosing well means reaching a good model with far fewer runs.

How the model chooses

Kronos motion — active learning

Relationship to Bayesian experimental design

Active learning and Bayesian experimental design are close cousins. Both choose the next observation to maximize information; active learning usually frames it as improving a predictive model, while Bayesian experimental design frames it as reducing parameter uncertainty. In practice the loops look similar and often share machinery.

python
def next_query(model, pool):
    # uncertainty sampling: pick the pool point with highest predictive variance
    scored = [(x, model.predict(x)[1]) for x in pool]  # (_, variance)
    return max(scored, key=lambda s: s[1])[0]

The pitfalls

Active learning can get stuck: a confident but wrong model may stop querying the region where it is wrong, because it is not uncertain there. Ensembles, occasional random exploration, and periodic validation guard against this. The loop must be allowed to be surprised.

Kronos use

In materials screening and simulation campaigns, active learning orders the run queue so that the studies which most reduce uncertainty happen first. It is a core part of closed-loop autonomous experimentation and a practical way to make scarce high-fidelity runs count.