  Many real-world functions are defined over both categorical and
category-specific continuous variables and thus cannot be optimized by
traditional Bayesian optimization (BO) methods. To optimize such functions, we
propose a new method that formulates the problem as a multi-armed bandit
problem, wherein each category corresponds to an arm with its reward
distribution centered around the optimum of the objective function in
continuous variables. Our goal is to identify the best arm and the maximizer of
the corresponding continuous function simultaneously. Our algorithm uses a
Thompson sampling scheme that helps connecting both multi-arm bandit and BO in
a unified framework. We extend our method to batch BO to allow parallel
optimization when multiple resources are available. We theoretically analyze
our method for convergence and prove sub-linear regret bounds. We perform a
variety of experiments: optimization of several benchmark functions,
hyper-parameter tuning of a neural network, and automatic selection of the best
machine learning model along with its optimal hyper-parameters (a.k.a automated
machine learning). Comparisons with other methods demonstrate the effectiveness
of our proposed method.
