A method for automatically selecting a machine learning algorithm and tuning hyperparameters of the machine learning algorithm includes receiving a dataset and a machine learning task from a user. Execution of a plurality of instantiations of different automated machine learning frameworks on the machine learning task are controlled each as a separate arm in consideration of available computational resources and time budget, whereby, during the execution by the separate arms, a plurality of machine learning models are trained and performance scores of the plurality of trained models are computed. One or more of the plurality of trained models are selected for the machine learning task based on the performance scores.
展开▼