ProxylessNAS is a gradient-based neural architecture search (NAS) method that eliminates the need for a proxy task, such as training on a smaller dataset or for fewer epochs. Instead, it directly searches for optimal architectures on the target dataset (e.g., ImageNet) and hardware (e.g., a specific microcontroller) by employing path-level binarization and gradient-based optimization of architecture parameters. This direct approach ensures the final model is precisely tailored to the actual deployment constraints like latency and memory.
Glossary
ProxylessNAS

What is ProxylessNAS?
ProxylessNAS is a neural architecture search method that directly optimizes architectures for a target task and hardware without using a proxy dataset or reduced training epochs.
The method constructs an over-parameterized network containing all candidate operations (e.g., 3x3 conv, 5x5 conv, skip connect). During search, it binarizes the paths, activating only one operation per layer at a time, which allows efficient gradient estimation of architecture parameters via BinaryConnect. The search directly incorporates a hardware-aware loss term, such as measured latency, enabling it to discover models that are both accurate and efficient for the exact target device, making it highly relevant for embedded neural network architectures in TinyML.
Key Technical Mechanisms
ProxylessNAS directly searches for optimal neural architectures on the target task and hardware, eliminating the proxy models or reduced datasets used by prior methods. Its core innovations enable efficient, hardware-aware search for microcontroller-scale models.
Path-Level Binarization
This is the core technique that makes direct search computationally feasible. Instead of evaluating all possible candidate operations (e.g., 3x3 conv, 5x5 conv, skip connect) in the over-parameterized network simultaneously, ProxylessNAS binarizes the architecture parameters. For each layer or block, it activates only one path (operation) at a time during the forward/backward pass, while keeping others dormant. This reduces memory and compute overhead from O(N) to O(1) per layer during search, allowing the search to be conducted directly on the large target dataset (e.g., ImageNet) and target hardware.
- Binary Gates: A set of architecture parameters
αcontrols a binary gate for each operation. During training, the gate is sampled to be 0 or 1. - Gradient Estimation: Since sampling is non-differentiable, gradients for the architecture parameters
αare estimated using the straight-through estimator (Gumbel-Softmax trick), enabling end-to-end gradient-based optimization.
Direct Hardware Latency Loss
A defining feature of ProxylessNAS is its direct incorporation of hardware performance metrics into the search objective. Instead of using a proxy like FLOPs or parameter count, it measures and optimizes for real, on-device latency.
- Latency Look-Up Table (LUT): A pre-built table stores the measured latency of each candidate operation (e.g., 3x3 depthwise conv, 5x5 conv) on the target hardware (e.g., a specific mobile CPU, microcontroller).
- Differentiable Loss Term: The expected latency of the current architecture, computed as a weighted sum based on the architecture parameters
α, is added as a regularization term to the standard cross-entropy loss:Loss = Loss_CE + λ * log(Latency). The gradient of this latency term guides the search towards faster operations. - Hardware-Aware: This allows the discovered architecture to be Pareto-optimal for the specific chip's characteristics, such as memory bandwidth and supported instruction sets.
Differentiable Architecture Search (DARTS) Foundation
ProxylessNAS builds upon the gradient-based search paradigm of Differentiable Architecture Search (DARTS) but removes its major limitation: the need for a proxy. DARTS relaxes the discrete search space by representing the choice between operations as a continuous mixture (softmax over all options). While efficient, this requires maintaining all operations in memory, forcing the search to be done on a smaller proxy dataset (e.g., CIFAR-10) before transferring the cell to a larger network.
ProxylessNAS modifies this by:
- Replacing Continuous Mixtures with Binary Paths: Using binarization to break the memory bottleneck.
- Eliminating the Proxy Stage: Enabling direct search on the full task (ImageNet) and final network macro-architecture.
- Retaining Gradient-Based Optimization: Keeping the efficiency of using gradient descent to update architecture parameters, as opposed to slower reinforcement learning or evolutionary methods.
Memory-Efficient Search on Target Task
By using path-level binarization, ProxylessNAS achieves a memory footprint similar to training a single model, not a supernet containing all possible operations. This is critical for searching directly on large-scale tasks like ImageNet classification, which was infeasible for prior differentiable NAS methods.
Process Flow:
- Construct an Over-parameterized Network: Define a network where each layer has N candidate operations.
- Binarize and Sample: For each training batch, for each layer, sample a binary gate to select one operation path.
- Forward/Backward Pass: Only the weights of the active path are used and updated. Compute loss and gradients.
- Update Architecture Parameters: Use the straight-through gradient estimator to update the probabilities
αfor each operation. - Prune and Derive Final Architecture: After search, the operation with the highest
αvalue at each layer is selected to form the final, compact network.
Application to TinyML & MCUs
The principles of ProxylessNAS are directly applicable and highly valuable for Tiny Machine Learning and microcontroller deployment. Its hardware-aware, direct-search methodology is ideal for discovering models under extreme constraints.
- Direct MCU Latency Optimization: The latency LUT can be built by profiling kernels on a specific microcontroller (e.g., ARM Cortex-M4/M7), searching for architectures that maximize accuracy within a strict SRAM/Flash memory budget and inference time limit.
- Co-Design with Inference Engines: Frameworks like MCUNet demonstrate the next step: co-designing the neural architecture (via a TinyNAS search inspired by ProxylessNAS) with a tailored inference engine (TinyEngine) to push the limits of on-device vision.
- Search Space for Micro-DNNs: The candidate operations in the search space are tailored for MCUs, including depthwise separable convolutions, inverted residual blocks, and various kernel sizes, all with strict parameter and activation map size limits.
Comparison to Proxy-Based NAS
ProxylessNAS was proposed to address the significant shortcomings of proxy-based NAS methods, which introduced a gap between search and deployment conditions.
Proxy-Based NAS (e.g., Early NASNet, MNasNet Proxy):
- Proxy Task: Searches on a smaller dataset (CIFAR-10).
- Proxy Metric: Optimizes for FLOPs or parameters, not real latency.
- Two-Stage Process: 1. Search on proxy. 2. Scale up and retrain on target task. The optimal architecture on the proxy may not be optimal on the target.
ProxylessNAS:
- Target Task: Searches directly on the full dataset (ImageNet).
- Target Metric: Optimizes for measured on-device latency.
- One-Stage Process: Search and hardware-aware optimization happen concurrently, leading to architectures that are directly deployable. This closes the simulation-to-reality gap in neural architecture search.
How ProxylessNAS Works: A Step-by-Step Process
ProxylessNAS is a neural architecture search method that directly learns architectures on the target task and hardware without using a proxy (like a smaller dataset or fewer epochs), employing path-level binarization and gradient-based optimization to efficiently search for models under direct hardware constraints like latency.
ProxylessNAS formulates the search over a supernet, an over-parameterized network containing all candidate operations. It introduces path-level binarization, where only one path (a specific operation choice) is activated during forward/backward propagation for each training batch. This binarization, controlled by learnable architecture parameters, allows the search to be conducted directly on the full target dataset and hardware, eliminating the need for a proxy task that can misrepresent final performance.
The method uses gradient-based optimization to update both the shared network weights and the architecture parameters. A latency loss term is incorporated directly into the objective function, penalizing architectures that are slow on the target hardware (e.g., a specific microcontroller or NPU). This hardware-aware optimization enables the automated discovery of neural network topologies that are Pareto-optimal for the trade-off between accuracy and on-device inference speed.
ProxylessNAS vs. Other NAS Approaches
A feature comparison of Neural Architecture Search (NAS) methodologies, highlighting how ProxylessNAS differs from proxy-based, differentiable, and evolutionary search strategies in the context of embedded and TinyML deployment.
| Feature / Metric | ProxylessNAS | Proxy-Based NAS (e.g., ENAS, NASNet) | Differentiable NAS (e.g., DARTS) | Evolutionary / RL-Based NAS |
|---|---|---|---|---|
Core Search Strategy | Gradient-based with path binarization | Reinforcement Learning or Evolution with a proxy task | Continuous relaxation & gradient descent on architecture parameters | Evolutionary algorithms or Reinforcement Learning |
Proxy Task Used | ||||
Direct Hardware Latency Optimization | ||||
Search Cost (GPU Days) | < 0.5 | 2000-4000 | 1-4 | 1000-3000 |
Search & Final Model Fidelity | Architecture trained on full target task & dataset | Architecture found on proxy, retrained on target | Continuous architecture derived via pruning | Architecture found on proxy, retrained on target |
Memory Overhead During Search | Low (trains one binarized path at a time) | High (requires training many sub-models or controller) | High (requires storing dense supernet) | Very High (requires training entire population of models) |
Hardware-Aware Search Capability | Native (latency loss integrated via gradient) | Indirect (via proxy constraints) | Possible with extension | Possible but computationally prohibitive |
Typical Use Case | Direct search for MCU/edge devices (TinyML) | Large-scale search for cloud/GPU inference | Rapid prototyping on moderate hardware | Exploring very large, unconstrained search spaces |
Output Architecture | Deterministic, single specialized network | One discovered cell, stacked | Continuous architecture requiring discretization | A population of final architectures |
Frequently Asked Questions
ProxylessNAS is a neural architecture search method that directly optimizes models for target hardware constraints like latency, eliminating the need for proxy tasks. This FAQ addresses its core mechanisms, advantages, and role in TinyML.
ProxylessNAS is a Neural Architecture Search (NAS) method that directly searches for optimal neural network architectures on the target task and hardware without using a proxy, such as training on a smaller dataset or for fewer epochs. It works by constructing an over-parameterized network, or supernet, that contains all candidate operations (e.g., different convolution types). During search, it employs path-level binarization, where only one path (a single architectural choice per layer) is activated at a time, allowing gradients to flow and update the architectural parameters via gradient-based optimization. This enables the direct incorporation of hardware feedback, like measured latency, into the loss function, steering the search toward architectures that are both accurate and efficient for the specific deployment target, such as a microcontroller.
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Related Terms
ProxylessNAS exists within a broader ecosystem of techniques for designing efficient neural networks. These related concepts focus on automated search, hardware-aware optimization, and architectural innovations for constrained devices.
Neural Architecture Search (NAS)
Neural Architecture Search (NAS) is the overarching automated process for discovering optimal neural network architectures for a given task and computational budget. It treats the network design—choices of layers, connections, and operations—as a search problem. Common strategies include:
- Reinforcement Learning: Using an RNN controller to propose architectures and receive accuracy rewards.
- Evolutionary Algorithms: Applying genetic operations like mutation and crossover to a population of architectures.
- Gradient-Based Methods: Making the search space continuous and differentiable to optimize with gradient descent. ProxylessNAS is a specific, efficient instantiation of gradient-based NAS that eliminates proxy tasks.
Hardware-Aware NAS (HW-NAS)
Hardware-Aware Neural Architecture Search is a critical variant where the search algorithm directly optimizes for metrics beyond accuracy, specifically targeting the performance characteristics of the deployment hardware. Instead of just FLOPs, it incorporates direct measurements or predictors for:
- Inference Latency (on a specific MCU, CPU, or NPU)
- Energy Consumption
- Peak Memory Usage
- Model Size ProxylessNAS is inherently hardware-aware, as it uses a latency estimation model built from empirical measurements on the target device (e.g., a microcontroller) to guide the search, ensuring the final architecture is optimal for that specific silicon.
Differentiable NAS (DARTS)
Differentiable Architecture Search (DARTS) is the foundational gradient-based method that enables efficient NAS. It formulates the search space as a supernet or over-parameterized network where every possible architectural choice (e.g., which operation to use between two nodes) is represented simultaneously. Each choice is weighted by a continuous, learnable architecture parameter (alpha).
- The supernet is trained by jointly optimizing the standard model weights (with gradient descent) and the architecture parameters (with gradient descent).
- After training, a discrete architecture is derived by selecting the choices with the highest architecture parameters. ProxylessNAS builds upon this but removes the memory-intensive requirement of maintaining all candidate operations in memory simultaneously through path-level binarization.
Once-For-All (OFA) Network
The Once-For-All (OFA) Network is a training and deployment paradigm designed for diverse hardware constraints. A single, large supernet is trained to contain a vast number of smaller sub-networks of varying depths, widths, and kernel sizes through weight sharing.
- After training, specialized sub-networks can be extracted for different target devices (e.g., a tiny model for a microcontroller, a larger one for a mobile phone) without any retraining.
- This enables efficient hardware-aware search by simply evaluating the latency/accuracy of many sub-networks from the pre-trained OFA network. While ProxylessNAS searches for one optimal architecture, OFA provides a pre-baked portfolio of many efficient architectures from one training run.
MCUNet
MCUNet represents the state-of-the-art in co-design for TinyML on microcontrollers. It doesn't just search for an efficient neural architecture; it jointly optimizes two components:
- TinyNAS: A hardware-aware neural architecture search that operates under an extremely tight memory budget (e.g., < 256KB of SRAM).
- TinyEngine: A memory-efficient inference library that generates tailored, in-place code to avoid memory peaks. The key innovation is the tight feedback loop: TinyNAS designs networks based on the actual memory profiling provided by TinyEngine. ProxylessNAS is a core search algorithm that can be used within a co-design framework like MCUNet to achieve record-breaking ImageNet accuracy on microcontrollers.
EfficientNet & MobileNet
EfficientNet and MobileNet are families of hand-designed, highly efficient convolutional neural networks that established many best practices later automated by NAS.
- MobileNet introduced the widespread use of depthwise separable convolutions to drastically reduce computation.
- EfficientNet proposed a compound scaling method (simultaneously scaling depth, width, and resolution) for balanced accuracy/efficiency gains. These architectures serve as both strong baselines and common search spaces for NAS methods. ProxylessNAS often searches over blocks inspired by MobileNet (e.g., MobileNetV2's inverted residual block) to find novel, more efficient permutations than the original hand-designed versions. EfficientNet-Lite variants are further optimized for integer-only hardware like Edge TPUs.

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us