What is Auger?

Adam Blum
@auger
Published in
4 min readJul 6, 2018

--

Powerful, Deep Automated Machine Learning

What is an “auger”? Well its a drill bit. And a misspelling of “augur” — to predict. Beyond the bad pun, it’s also our tool for automated machine learning.

The most difficult part of most machine learning projects is choosing the predictive model and its hyperparameters. After data is gathered most data scientists spend months choosing from various predictive algorithms, tweaking their options (hyperparameters) and the feature set to get acceptable accuracy. Often, once that threshold is reached the data is stale and the underlying business conditions have changed.

A common scenario is a business which gathers their data for machine learning-based prediction. They then submit this to Google Prediction Services or one of AWS machine learning’s algorithms and get some results. Google, Amazon and others offer services to let you evaluate different hyperparameter settings for the chosen algorithm. But the data scientist still needs to try various algorithms, and modify the featureset (adding features for particular algorithms, removing them to reduce dimensionality).

Auger’s Algorithm/Hyperparameter Search Versus Other AutoML Products

Auger did not create the concept of automated machine learning. There are other tools available for this, including the open source TPOT and commercial companies like DataRobot. TPOT claims to use genetic algorithms to exhaust the search space of algorithms and hyperparameters. But we found the performance of it closely approximated “grid search” (where all algorithms and hyperparameters are attempted successively). Auger uses a more sophisticated search approach to intelligently traverse available algorithms and hyperparameters. While we are not ready to share the details of how we do this, the suboptimality of genetic algorithms to search complex trees has been established elsewhere.

One of the chief innovations we are willing to share is that we start the search of algorithms and hyperparameters with intelligent assessment of good likely values. This is done by analyzing the dataset presented. We refer to this approach as “warm start”. The benefit of warm start is that it both optimizes the overall search time for the best algorithm/hyperparameter combinations, and also provides an immediate “good enough” combination that can be quickly tested (AutoML with other tools can often take hours to days to get results). As a cloud-based service, Auger continues to refine its warm start heuristics based on results from other users and datasets.

Beyond just doing a “warm start” of the first attempted algorithm and options, Auger narrows down the algorithms searched based on aspects of the dataset. In many cases we can drastically reduce the search space of algorithms evaluated.

With regard to commercial AutoML products, we think you will similarly find that Auger’s speed to get optimal results and initially acceptable results is very favorable. In addition, Auger is an inexpensive service (free in beta now) that you should be able to evaluate without significant cost.

Algorithm Implementations

In addition to choosing the best algorithms, Auger features several implementations of popular machine learning prediction algorithms. These are either faster than more commonly available implementations or early implementations of algorithms that are not widely available. Examples of such algorithms include: logistic regression, linear regression, linear support vector machine, random forest, gradient and Ada boosting, decision tree and random forest, and various naive Bayes classifiers.

Auger also generates deep learning multi-layer neural network topologies for both prediction and classification problems. It even optimizes the topology of these networks for the problem. This is not something other AutoML tools do today.

Finally, Auger generates ensembles, combinations of underlying algorithms, to improve the algorithm even further. Ensembles are usually used in the final stages of optimizing model performance, often combining the best few underlying algorithms.

Auger continues to add more algorithms, especially deep learning approaches as new techniques emerge.

Data Preprocessing

The only task close to the effort of trying algorithms and their hyperparameters is getting data ready to process. Auger performs many preprocessing tasks, most of which are not performed by other automated machine learning tools. These include:

  • handling missing values
  • generating categorical features (whether or not the user has identified it as categorical, and handling scenarios where there may be too many categories)
  • handling sparse features (such as those containing mostly empty values or zeros) with dimensionality reduction
  • generating multiple features from date/time values
  • feature elimination (based on distribution of the data)

More details of Auger’s data preprocessing features is presented here.

Runtime Prediction Service

Finally once the model is trained Auger provides you a web service prediction endpoint to generate predictions or classifications from new data that you encounter in your applications. This offers a rapid path to using your generated models. The combination of automated machine learning algorithm choice with instant runtime endpoints reduces the typical lifecycle of determine the need for a model to using it in your applications from months to hours.

If you have struggled to get sufficient prediction or classification accuracy, give Auger a try! We want to hear how it works for you. Write to us at support@auger.ai with how its working. You will probably get some free data science consulting out of it.

--

--

Adam Blum
@auger

CTO of Empath— Technical co-founder, dad, author, ultramarathoner. Building ML products in four different decades…