AdaNet is a lightweight TensorFlow-based framework for automated machine learning that combines neural architecture search with ensemble learning. The project implements the AdaNet algorithm, which was presented at ICML 2017 and focuses on learning the structure of neural networks as ensembles of subnetworks. The framework is designed to automatically learn high-quality models with minimal expert intervention while providing theoretical learning guarantees.
The core functionality of AdaNet centers on adaptive ensemble growth. The algorithm iteratively builds an ensemble by measuring the ensemble loss for each candidate subnetwork and selecting the best performer to advance to the next iteration. During subsequent iterations, previously selected subnetworks are frozen while only new candidate subnetworks are trained. This approach allows the framework to balance exploration of new architectures with exploitation of proven components.
AdaNet provides several key features that distinguish it in the AutoML landscape. The framework supports adaptive neural architecture search and ensemble learning within a single training call, eliminating the need for separate pipeline stages. It handles multiple task types including regression, binary classification, multi-class classification, and multi-head tasks. The framework exposes a tf.estimator.Estimator API for training, evaluation, prediction, and serving, making it compatible with existing TensorFlow workflows. Additionally, AdaNet includes an AutoEnsembleEstimator specifically designed for learning to ensemble user-defined tf.estimator.Estimators, allowing practitioners to combine arbitrary models.
The framework emphasizes flexibility through its subnetwork API, which enables users to define subnetworks that change structure over time using tf.layers. This extensibility allows researchers and practitioners to experiment with novel subnetwork architectures and search spaces. AdaNet supports computation across CPU, GPU, and TPU hardware, with distributed multi-server training capabilities and TensorBoard integration for monitoring training progress.
According to GitGenius activity tracking, the repository shows minimal recent engagement with a median issue and pull request response latency of 18465.2 hours, indicating the project is not actively maintained. The primary contributor tracked is BradKML with one recorded event. The repository is classified across multiple domains including AutoML, neural architecture search, ensemble learning, adaptive algorithms, and deep learning frameworks, reflecting its broad applicability.
The project requires Python 3.6 or above and depends on TensorFlow 2.1 or later, as earlier versions lack necessary bug fixes and enhancements. Installation is available through pip from PyPI or from source using Bazel. The framework is released under the Apache License 2.0 and is not an official Google product, though it originated from Google AI research and was announced on the Google AI blog in 2018.