Adding a BTB Selector or Tuner

BTB is the metamodeling library and framework at the core of ATM. It defines two general abstractions:

  1. A selector chooses one of a discrete set of possibilities based on historical performance data for each choice. ATM uses a selector before training each classifier to choose which hyperpartition to try next.
  2. A tuner generates a metamodel which tries to predict the score that a set of numeric hyperparameters will achieve, and can generate a set of hyperparameters which are likely to do well based on that model. After ATM has chosen a hyperpartition, it uses a tuner to choose a new set of hyperparameters within the hyperpartition’s scope.

Like with methods, ATM allows domain experts and tinkerers to build their own selectors and tuners. At a high level, you just need to define a subclass of btb.Selector or btb.Tuner in a new python file and create a new datarun with the ‘selector’ or ‘tuner’ set to “path/to/your_file.py:YourClassName”.

More to come… stay tuned!