Inferensys

Glossary

Tiny Machine Learning Deployment

This pillar explores the extreme optimization of algorithms designed to run on microcontrollers with highly constrained memory and power profiles, demonstrating the firm's deep hardware-level software expertise.
Engineer deploying small language model to edge device, IoT sensor visible on desk, technical hardware setup in bright workspace.
Glossary

Model Compression Techniques

Terms related to algorithms for reducing neural network size and computational cost for microcontroller deployment, such as quantization, pruning, and knowledge distillation. Target: Embedded Systems Engineers.

Quantization

Quantization is a model compression technique that reduces the numerical precision of a neural network's weights and activations, typically from 32-bit floating-point to lower-bit integer or fixed-point representations, to decrease model size and accelerate inference.

Pruning

Pruning is a model compression technique that removes redundant or less important parameters (weights, neurons, filters) from a neural network to create a smaller, sparser model with reduced computational and memory requirements.

Knowledge Distillation

Knowledge distillation is a model compression technique where a smaller 'student' model is trained to mimic the behavior or output distributions of a larger, more complex 'teacher' model, thereby transferring knowledge to a more efficient architecture.

Quantization-Aware Training (QAT)

Quantization-Aware Training is a process where a neural network is trained or fine-tuned with simulated quantization noise, allowing the model to learn parameters that are robust to the precision loss incurred during subsequent integer quantization.

Post-Training Quantization (PTQ)

Post-Training Quantization is a technique that converts a pre-trained floating-point model to a lower-precision format (e.g., INT8) without requiring retraining, typically using a calibration dataset to determine optimal quantization ranges.

Structured Pruning

Structured pruning is a model compression technique that removes entire structural components of a neural network, such as channels, filters, or layers, resulting in a smaller, hardware-friendly model that maintains dense matrix operations.

Unstructured Pruning

Unstructured pruning is a model compression technique that removes individual, non-critical weights from a neural network, creating an irregularly sparse model that requires specialized software or hardware to realize performance gains.

Low-Rank Factorization

Low-rank factorization is a model compression technique that approximates a weight matrix as the product of two or more smaller matrices, reducing the number of parameters and computational cost of linear and convolutional layers.

Weight Sharing

Weight sharing is a model compression technique where multiple connections in a neural network are forced to use the same parameter value, drastically reducing the number of unique weights that need to be stored.

Sparsity

Sparsity is a property of a neural network where a significant proportion of its parameters (weights) are zero, enabling compression via pruning and potentially faster inference on hardware that supports sparse computations.

Neural Architecture Search (NAS)

Neural Architecture Search is an automated process for designing optimal neural network architectures, often incorporating hardware constraints like latency and memory to discover efficient models for specific deployment targets.

Hardware-Aware NAS

Hardware-Aware Neural Architecture Search is a variant of NAS that explicitly optimizes neural network architectures for specific hardware performance metrics, such as latency, memory usage, or energy consumption on target devices.

Model Compression

Model compression is an overarching term for techniques, including quantization, pruning, and distillation, aimed at reducing the memory footprint, computational cost, and energy consumption of neural networks for efficient deployment.

Mixed-Precision Quantization

Mixed-precision quantization is a technique that assigns different numerical precisions (e.g., 4-bit, 8-bit, 16-bit) to different parts of a neural network (layers, channels, or weights) to optimize the trade-off between model size, accuracy, and hardware efficiency.

Iterative Magnitude Pruning

Iterative magnitude pruning is a pruning strategy that repeatedly trains a network, removes a small fraction of weights with the smallest magnitudes, and then retrains the remaining network, often leading to highly sparse models with minimal accuracy loss.

Lottery Ticket Hypothesis

The Lottery Ticket Hypothesis is a theoretical observation that within a large, randomly initialized neural network, there exist smaller subnetworks ('winning tickets') that, when trained in isolation, can achieve comparable accuracy to the original network.

Sparse Neural Networks

Sparse neural networks are models where a large percentage of the connection weights are zero, a property induced by pruning techniques to reduce computational load and memory footprint for inference.

INT8 Inference

INT8 inference is the execution of a quantized neural network using 8-bit integer arithmetic for weights and activations, offering significant reductions in model size and latency compared to floating-point inference on supporting hardware.

Low-Precision Training

Low-precision training involves performing the forward and backward passes of neural network training using reduced numerical precision (e.g., 16-bit floating-point or integers) to decrease memory usage and accelerate computation.

Weight Binarization

Weight binarization is an extreme form of quantization where neural network weights are constrained to only two values, typically +1 and -1, enabling highly efficient inference using primarily bitwise operations instead of multiplications.

Channel Pruning

Channel pruning is a form of structured pruning that removes entire channels (or feature maps) from convolutional layers, directly reducing the width of the network and the computational cost of subsequent layers.

Calibration (Quantization)

Calibration in quantization is the process of analyzing a small, representative dataset (calibration set) through a pre-trained model to determine the optimal dynamic range (min/max values) for quantizing activations and weights.

Teacher-Student Training

Teacher-Student training is the core framework of knowledge distillation, where a pre-trained, complex teacher model provides supervisory signals (like softened logits) to guide the training of a smaller, more efficient student model.

Dynamic Quantization

Dynamic quantization is a post-training method where model weights are quantized ahead of time, but activations are quantized on-the-fly during inference based on their observed range, eliminating the need for a calibration dataset.

Static Quantization

Static quantization is a post-training method where both weights and activations are quantized to fixed ranges determined during a one-time calibration step, allowing for optimizations like weight packing and constant folding.

Once-For-All Network

A Once-For-All network is a train-once-deploy-everywhere approach where a single, large neural network is trained to contain many smaller, optimal subnetworks that can be extracted for different hardware constraints without retraining.

Differentiable Quantization

Differentiable quantization incorporates the quantization function directly into the training graph using straight-through estimators, allowing gradients to flow through the discretization step for end-to-end learning of quantized models.

N:M Sparsity

N:M sparsity is a structured sparsity pattern where in every block of M consecutive weights, N are forced to be zero, a format efficiently supported by modern NVIDIA GPUs (e.g., 2:4 sparsity) for accelerated inference.

Hessian-Aware Pruning

Hessian-aware pruning is a pruning criterion that uses second-order information (the Hessian matrix or its approximation) to estimate the impact of removing a parameter on the loss function, aiming for minimal accuracy degradation.

Sparse Training

Sparse training is a technique where a neural network is trained from scratch with an inherently sparse connectivity pattern, avoiding the expensive dense pre-training phase required by traditional prune-then-train methods.

Glossary

TinyML Frameworks

Terms related to software libraries and toolchains specifically designed for developing and deploying machine learning models on microcontrollers. Target: Firmware Developers.

TensorFlow Lite Micro (TFLM)

TensorFlow Lite Micro (TFLM) is a cross-platform, open-source deep learning inference framework designed to run neural network models on microcontrollers and other devices with only kilobytes of memory.

CMSIS-NN

CMSIS-NN is a collection of efficient neural network kernels developed by Arm as part of the Cortex Microcontroller Software Interface Standard (CMSIS) to maximize performance on Arm Cortex-M processor cores.

STM32Cube.AI

STM32Cube.AI is an STMicroelectronics development tool that converts pre-trained neural networks into optimized C code for deployment on STM32 microcontroller families.

Edge Impulse

Edge Impulse is a cloud-based development platform that provides an end-to-end workflow for building, optimizing, and deploying machine learning models to microcontroller and edge device targets.

ESP-DL

ESP-DL is Espressif Systems' deep learning library providing optimized neural network operations and model deployment tools for their ESP32 series of microcontrollers.

SensiML

SensiML is a software toolkit for creating AI algorithms that analyze real-time sensor data, enabling the development of intelligent sensing applications for microcontrollers.

MicroTVM

MicroTVM is a component of Apache TVM that enables the compilation and deployment of machine learning models onto bare-metal microcontrollers by providing a minimal runtime and ahead-of-time (AOT) compilation.

uTensor

uTensor is an open-source, lightweight machine learning inference framework built specifically for microcontrollers, featuring a simple C++ API and a runtime that executes models from TensorFlow.

Ell

Ell is an open-source, embedded learning library from Microsoft that enables the building and deployment of intelligent machine-learned models onto resource-constrained platforms like microcontrollers and single-board computers.

TinyEngine

TinyEngine is a memory-efficient deep learning inference framework that generates specialized, ultra-lean C code for a given neural network, minimizing memory overhead on microcontrollers.

EON Compiler

The EON Compiler is a model optimization tool within the Edge Impulse platform that applies compression techniques like quantization and pruning to reduce model size and latency for edge deployment.

MLPerf Tiny

MLPerf Tiny is a benchmark suite from the MLPerf consortium designed to measure the performance and accuracy of machine learning systems on ultra-low-power devices like microcontrollers.

MCUNet

MCUNet is a system co-design framework that jointly optimizes TinyML models (TinyNAS) and inference engines (TinyEngine) to enable efficient deep learning on microcontrollers with severely limited memory.

TinyML Toolchain

A TinyML toolchain is the integrated set of software tools—including compilers, optimizers, profilers, and deployment utilities—used to convert, optimize, and deploy machine learning models onto microcontroller hardware.

FlatBuffer Model

A FlatBuffer model is a neural network model serialized using the FlatBuffers cross-platform serialization library, which is the standard, memory-efficient format used by TensorFlow Lite and TensorFlow Lite Micro.

C Array Model

A C array model is a neural network model represented as a constant C/C++ byte array (header file) within source code, enabling direct compilation into a firmware binary without a separate file system.

nncase

nncase is an open-source neural network compiler developed by Canaan Inc. that compiles models from frameworks like TensorFlow and ONNX into high-performance code for edge inference, supporting microcontrollers via its CPU backend.

Micro Interpreter

A micro interpreter is a minimal runtime component within a TinyML framework (like TFLM) that reads a model, plans its execution graph, and invokes optimized kernel functions to perform inference on a microcontroller.

Tensor Arena

The tensor arena is a statically or dynamically allocated block of memory (often SRAM) used by a TinyML inference engine to store intermediate activation tensors and other temporary data during model execution.

CMSIS-DSP

CMSIS-DSP is a library of common digital signal processing (DSP) functions optimized for Arm Cortex-M and Cortex-A processors, providing a foundational building block for efficient sensor data processing in TinyML applications.

AI Coprocessor

An AI coprocessor is a dedicated hardware accelerator, such as a microNPU (Neural Processing Unit), integrated into a microcontroller or system-on-chip to offload and dramatically accelerate neural network inference tasks.

Ethos-U55

The Arm Ethos-U55 is a microNPU (Neural Processing Unit) designed as a configurable, area- and power-efficient accelerator for machine learning inference in embedded and IoT endpoint devices using Cortex-M CPUs.

NPU SDK

An NPU SDK is a software development kit provided by a silicon vendor that contains compilers, runtime libraries, and profiling tools needed to deploy and execute neural network models on their dedicated Neural Processing Unit hardware.

Micro-Compiler

A micro-compiler in TinyML is a specialized compiler (e.g., within TVM or a vendor SDK) that translates high-level neural network models into highly optimized, low-level machine code or C code targeted for microcontroller execution.

Operator Fusion

Operator fusion is a graph optimization technique where consecutive neural network operations (layers) are combined into a single, compound kernel to reduce memory accesses and overhead, critical for efficient microcontroller inference.

Graph Optimization

Graph optimization in TinyML is the process of transforming a neural network's computational graph—through techniques like constant folding and operator fusion—to reduce its memory footprint and improve execution speed on constrained hardware.

Model Zoo

A TinyML model zoo is a curated repository of pre-trained, optimized, and benchmarked neural network models for common edge tasks (like keyword spotting or visual wake words), ready for deployment on specific microcontroller platforms.

Embedded ML Framework

An embedded ML framework is a software library or toolchain, such as TensorFlow Lite Micro or CMSIS-NN, specifically engineered to enable the deployment and execution of machine learning models on microcontroller-based embedded systems.

On-Device SDK

An on-device SDK is a vendor-specific software development kit that provides libraries, APIs, and tools to develop applications that include local, on-device machine learning inference, typically for a family of microcontrollers or processors.

Deployment Workflow

The TinyML deployment workflow is the end-to-end process of converting a trained model, optimizing it for target hardware, integrating it into embedded firmware, and validating its performance and resource usage on the actual device.

Glossary

Embedded Neural Network Architectures

Terms related to the design of neural network topologies optimized for severe memory, power, and compute constraints of microcontrollers. Target: ML Researchers & Embedded Architects.

Depthwise Separable Convolution

Depthwise separable convolution is a factorized convolution operation that decomposes a standard convolution into a depthwise convolution (applying a single filter per input channel) followed by a pointwise convolution (a 1x1 convolution to combine channel outputs), dramatically reducing computational cost and parameters for embedded vision models.

Inverted Residual Block

An inverted residual block is a mobile-optimized neural network building block, first introduced in MobileNetV2, that expands the number of channels with a lightweight expansion layer, applies depthwise convolution, and then projects back to a smaller number of channels, using linear bottlenecks to preserve representational power while minimizing memory footprint.

Squeeze-and-Excitation Block

A squeeze-and-excitation (SE) block is an architectural unit that models channel-wise relationships by first squeezing global spatial information into a channel descriptor, then exciting it through a self-gating mechanism to recalibrate channel-wise feature responses, improving performance with minimal computational overhead.

EfficientNet-Lite

EfficientNet-Lite is a family of convolutional neural network architectures derived from EfficientNet but optimized for on-device inference by removing squeeze-and-excitation blocks with non-linear activations and using fixed scaling, making them compatible with integer-only hardware accelerators like Edge TPUs.

MobileNet

MobileNet is a family of lightweight convolutional neural network architectures designed for mobile and embedded vision applications, primarily built using depthwise separable convolutions to drastically reduce the model size and computational complexity compared to standard networks.

Binary Neural Network

A binary neural network (BNN) is an extreme form of quantized network where both weights and activations are constrained to binary values (+1 or -1), replacing most floating-point multiplications with efficient bitwise XNOR and popcount operations to enable ultra-low-power inference on microcontrollers.

Micro-DNN

A Micro-DNN (Micro Deep Neural Network) refers to an extremely compact neural network architecture, often under 100KB in size, specifically designed and optimized to execute directly on microcontroller units with severe memory and compute constraints.

Ghost Module

A ghost module is a lightweight convolutional block that generates more feature maps from cheap linear operations on intrinsic features, reducing redundant computations in standard convolutions to build efficient networks with fewer parameters and FLOPs for embedded deployment.

Once-For-All Network

A Once-For-All (OFA) network is a single, large neural network trained to support many sub-networks of different depths, widths, and kernel sizes through weight sharing, enabling hardware-aware neural architecture search without retraining for diverse microcontroller resource constraints.

MCUNet

MCUNet is a co-design framework that jointly optimizes Tiny Neural Network architecture (TinyNAS) and the underlying inference engine (TinyEngine) to enable ImageNet-scale classification directly on microcontrollers with limited memory (e.g., 256KB SRAM).

Neural Architecture Search

Neural Architecture Search (NAS) is an automated process for discovering optimal neural network architectures for a given task and set of constraints, such as latency or memory footprint, often using reinforcement learning, evolutionary algorithms, or gradient-based methods.

Hardware-Aware NAS

Hardware-aware Neural Architecture Search (HW-NAS) is a variant of NAS where the search algorithm directly optimizes the neural architecture for specific hardware performance metrics like latency, energy consumption, or memory usage on target devices such as microcontrollers or NPUs.

Differentiable NAS

Differentiable Neural Architecture Search (DARTS) is a gradient-based NAS method that formulates the search space as a continuous, over-parameterized network where the architecture parameters are learned via standard gradient descent alongside the model weights, making the search process significantly faster.

ProxylessNAS

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.

ShuffleNet

ShuffleNet is a computationally efficient CNN architecture that uses pointwise group convolutions and a channel shuffle operation to enable information flow across channel groups, significantly reducing computation cost while maintaining accuracy for mobile and embedded devices.

SqueezeNet

SqueezeNet is a small CNN architecture that achieves AlexNet-level accuracy on ImageNet with 50x fewer parameters by using 1x1 convolutions (squeeze layers) and decreasing the number of input channels to 3x3 filters, making it highly suitable for deployment in embedded systems.

Attention Condensation

Attention condensation is a model compression technique for vision transformers that reduces the complexity of self-attention by condensing the number of tokens or key/value pairs, enabling the deployment of transformer-like models on resource-constrained hardware.

Dynamic Convolution

Dynamic convolution is a technique that aggregates multiple parallel convolution kernels weighted by input-dependent attention, increasing model capacity and representation power with only a minor increase in computational cost, suitable for efficient networks.

Shift-based Operations

Shift-based operations replace traditional multiplications in neural networks with bit-shift and addition operations, leveraging the efficiency of shift registers in digital hardware to drastically reduce the computational cost and energy consumption of convolution and fully-connected layers.

XNOR-Net

XNOR-Net is a binary neural network that approximates convolutions using primarily binary operations (XNOR and bit-count) by binarizing both weights and inputs to +1/-1 and scaling the result, enabling extreme acceleration on CPU bitwise instruction sets.

Fused Layer

A fused layer is a compiler optimization that merges the computational graph of multiple sequential neural network operations (e.g., convolution, batch normalization, and activation) into a single, monolithic kernel to eliminate intermediate memory writes and reduce inference latency on embedded hardware.

Bottleneck Layer

A bottleneck layer is a structural component in a neural network that uses 1x1 convolutions to first reduce (compress) and then expand the number of channels, limiting the computational cost of subsequent 3x3 or 5x5 convolutions within residual blocks, as popularized by ResNet.

Linear Bottleneck

A linear bottleneck is a layer within an inverted residual block that uses a linear activation function (instead of ReLU) to prevent non-linearities from destroying information in low-dimensional spaces, a key design principle for maintaining representational capacity in highly compressed mobile networks.

Fire Module

The fire module is the fundamental building block of the SqueezeNet architecture, consisting of a squeeze layer (with only 1x1 filters) that feeds into an expand layer (with a mix of 1x1 and 3x3 filters) to reduce parameters while preserving the receptive field.

Channel Shuffle

Channel shuffle is an operation used in ShuffleNet that permutes the channels of a feature map between different groups after a group convolution, allowing information to flow across groups and mitigating the representational limitations caused by using multiple group convolutions in sequence.

Grouped Convolution

Grouped convolution is a variant of standard convolution where the input channels are divided into separate groups, and a separate convolutional filter is applied to each group, significantly reducing parameters and computations at the cost of limited cross-channel interaction.

Pointwise Convolution

Pointwise convolution is a 1x1 convolution that operates across all input channels to combine or project them into a new channel space, used heavily in efficient architectures like MobileNet for channel mixing following a depthwise convolution.

Glossary

Microcontroller Inference Optimization

Terms related to runtime techniques for executing neural networks efficiently on MCUs, including fixed-point arithmetic, kernel optimization, and memory management. Target: Performance Engineers.

Fixed-Point Arithmetic

Fixed-point arithmetic is a numerical representation and computational method where numbers are stored and manipulated as integers with an implicit, fixed number of fractional bits, eliminating the need for floating-point hardware on microcontrollers.

Quantization

Quantization is a model compression technique that reduces the numerical precision of a neural network's weights and activations, typically from 32-bit floating-point to lower-bit integers like INT8, to decrease model size and accelerate inference.

Integer Quantization

Integer quantization is a specific form of quantization where model parameters and activations are constrained to integer values, enabling highly efficient execution using integer-only arithmetic units common in microcontrollers.

Post-Training Quantization (PTQ)

Post-training quantization is a process of converting a pre-trained floating-point model to a lower-precision integer format using a calibration dataset, without requiring retraining, to enable efficient microcontroller deployment.

Quantization-Aware Training (QAT)

Quantization-aware training is a technique where a model is trained or fine-tuned with simulated quantization operations, allowing it to learn to compensate for the precision loss and typically achieve higher accuracy than post-training quantization.

Symmetric Quantization

Symmetric quantization is a scheme where the quantization range is symmetric around zero, simplifying the scaling math by using a single scale factor and often a zero-point of zero, which is common for weight quantization.

Asymmetric Quantization

Asymmetric quantization is a scheme that uses separate minimum and maximum values to define the quantization range, allowing it to better capture skewed data distributions, such as ReLU activations, using a non-zero zero-point.

Dequantization

Dequantization is the process of converting quantized integer values back to floating-point numbers, typically used during the quantization calibration phase or when interpreting low-precision outputs for final processing.

Kernel Optimization

Kernel optimization refers to the manual or automated low-level tuning of fundamental neural network operation implementations (kernels) for a specific microcontroller architecture to maximize performance and minimize memory usage.

Operator Fusion

Operator fusion is a compiler optimization that combines multiple sequential neural network operations (e.g., convolution, batch normalization, and activation) into a single, fused kernel to reduce intermediate memory writes and overall latency.

Loop Unrolling

Loop unrolling is a compiler optimization that reduces loop overhead by duplicating the loop body multiple times, decreasing the number of branch instructions and often enabling better instruction-level parallelism and register usage.

Loop Tiling

Loop tiling is a memory optimization technique that partitions loop iterations into smaller blocks (tiles) to improve data locality and fit working sets into faster, smaller cache memories, reducing costly main memory accesses.

SIMD Instructions

SIMD (Single Instruction, Multiple Data) instructions are processor instructions that perform the same operation on multiple data points simultaneously, providing significant speedups for vector and matrix operations common in neural network inference.

CMSIS-NN

CMSIS-NN is a collection of efficient, processor-optimized neural network kernels developed by Arm as part of the Cortex Microcontroller Software Interface Standard, designed for deploying neural networks on Cortex-M series microcontrollers.

TensorFlow Lite Micro (TFLM)

TensorFlow Lite Micro is a lightweight, open-source deep learning inference framework designed to run TensorFlow models on microcontrollers and other devices with only kilobytes of memory.

Static Memory Allocation

Static memory allocation is a memory management strategy where all buffers for model weights, activations, and intermediate tensors are pre-allocated at compile-time, eliminating runtime allocation overhead and fragmentation for deterministic execution.

Memory Pooling

Memory pooling is a technique where a large, contiguous block of memory is allocated once and then subdivided into fixed-size or variable-size buffers for different inference tasks, improving allocation speed and reducing fragmentation.

In-Place Computation

In-place computation is an optimization where the output of a neural network layer is written directly into the memory location of its input, reusing memory buffers to drastically reduce peak RAM usage during inference.

Flash Footprint

Flash footprint refers to the total amount of non-volatile flash memory required to store a machine learning model's parameters (weights), constants, and the inference engine code on a microcontroller.

RAM Footprint

RAM footprint refers to the peak amount of volatile working memory (RAM) required during the execution of a machine learning model to store activations, intermediate tensors, and runtime buffers on a microcontroller.

Compute Graph

A compute graph is a directed acyclic graph representation of a neural network where nodes represent operations (ops) and edges represent the multidimensional data arrays (tensors) flowing between them, used for optimization and scheduling.

Static Scheduling

Static scheduling is a strategy where the execution order of all neural network operations and their memory assignments are determined at compile-time, resulting in a completely predictable, low-overhead inference runtime on microcontrollers.

Model Pruning

Model pruning is a compression technique that removes redundant or less important parameters (weights) from a neural network to reduce its size and computational cost, often resulting in sparse weight matrices.

Structured Pruning

Structured pruning removes entire groups of weights, such as entire channels or filters in a convolutional layer, resulting in a smaller, denser model that is easier to accelerate on standard hardware without specialized sparse kernels.

Sparsity

Sparsity refers to the proportion of zero-valued elements in a tensor, particularly a weight matrix; high sparsity can be exploited through specialized sparse kernels to reduce computations and memory accesses during inference.

Depthwise Separable Convolution

Depthwise separable convolution is an efficient convolutional layer variant that splits the standard convolution into a depthwise convolution (applying a single filter per input channel) followed by a pointwise convolution (1x1 convolution), significantly reducing computations.

Calibration

Calibration in quantization is the process of feeding a representative dataset through a floating-point model to collect statistics (e.g., min/max ranges) of activations, which are used to determine the optimal quantization parameters (scale and zero-point).

Scaling Factor

A scaling factor (or scale) is a floating-point value used in quantization to map between the quantized integer range and the original floating-point range, calculated as (float_max - float_min) / (quant_max - quant_min).

Zero-Point

The zero-point is an integer value in asymmetric quantization that represents the quantized equivalent of the real value zero, allowing for efficient padding with zeros and the handling of asymmetric data ranges.

INT8 Inference

INT8 inference is the execution of a neural network where weights and activations are represented as 8-bit integers, offering a 4x memory reduction and significant speedup over FP32 inference on hardware with optimized integer pipelines.

Glossary

Power-Aware TinyML

Terms related to techniques for minimizing and managing energy consumption during on-device ML inference and system operation. Target: Hardware & Battery Life Engineers.

Dynamic Voltage and Frequency Scaling (DVFS)

Dynamic Voltage and Frequency Scaling (DVFS) is a power management technique that dynamically adjusts a processor's operating voltage and clock frequency based on real-time computational workload demands to optimize energy efficiency.

Power Gating

Power gating is a circuit design technique that uses header or footer switches to completely cut off the power supply to an idle logic block or core, thereby eliminating both dynamic and static (leakage) power consumption.

Clock Gating

Clock gating is a power-saving technique that disables the clock signal to portions of a digital circuit when they are not performing useful computation, thereby eliminating dynamic power dissipation from unnecessary clock toggling.

Energy-Proportional Computing

Energy-proportional computing is a design principle where a computing system's energy consumption scales linearly with its utilization, aiming for near-zero power draw at idle and minimal overhead for low activity levels.

Low-Power Inference Mode

A low-power inference mode is a specialized operational state of a machine learning accelerator or processor that employs aggressive power-saving techniques, such as reduced precision or clock speed, to execute neural network inferences with minimal energy consumption.

Sleep States (C-States)

Sleep states, or C-states, are predefined low-power modes in a processor where non-essential circuits are powered down or clock-gated, trading off wake-up latency for reduced static power consumption during idle periods.

Leakage Power Reduction

Leakage power reduction encompasses circuit and architectural techniques, such as power gating and multi-threshold CMOS, aimed at minimizing the static current that flows through transistors even when they are in the off state, a dominant source of power consumption in deep sub-micron technologies.

Energy Harvesting Integration

Energy harvesting integration is the design of electronic systems, particularly for IoT and edge devices, to capture and utilize ambient energy from sources like light, vibration, or RF waves to supplement or replace battery power.

Power-Aware Scheduling

Power-aware scheduling is an operating system or runtime technique that allocates computational tasks across processing cores and schedules their execution times to minimize total system energy consumption while meeting performance deadlines.

Dynamic Power Management (DPM)

Dynamic Power Management (DPM) is a system-level strategy that dynamically controls the power states of hardware components, such as putting them into low-power sleep modes, based on workload predictions and performance requirements.

Energy-Delay Product (EDP)

The Energy-Delay Product (EDP) is a combined metric, calculated as energy consumed multiplied by execution time, used to evaluate the trade-off between the performance and energy efficiency of a computing system or algorithm.

Inference-Per-Watt

Inference-per-watt is a performance-per-watt metric specific to machine learning, measuring the number of neural network inferences a system can perform per joule of energy consumed, used to benchmark the energy efficiency of AI accelerators.

Energy-Accuracy Trade-off

The energy-accuracy trade-off describes the design space in machine learning systems where reducing computational precision, model size, or activation sparsity saves energy but may also decrease the model's prediction accuracy.

Near-Threshold Computing (NTC)

Near-Threshold Computing (NTC) is a circuit design paradigm where digital logic operates with a supply voltage close to the transistor's threshold voltage, achieving significant energy savings at the cost of reduced performance and increased sensitivity to process variations.

Approximate Computing

Approximate computing is a design paradigm that intentionally trades off computational precision or correctness for gains in performance, energy efficiency, or area, often applied in error-resilient applications like multimedia processing and machine learning.

In-Memory Computing (IMC)

In-Memory Computing (IMC) is an architecture that performs computation directly within memory arrays, such as SRAM or emerging non-volatile memory, eliminating the energy-intensive movement of data between separate memory and processing units.

Dynamic Thermal Management (DTM)

Dynamic Thermal Management (DTM) is a set of hardware and software techniques, such as dynamic voltage and frequency scaling or clock gating, that actively monitor chip temperature and throttle performance to prevent overheating and ensure reliability.

Maximum Power Point Tracking (MPPT)

Maximum Power Point Tracking (MPPT) is an algorithm used in energy harvesting systems to dynamically adjust the electrical load on a harvesting source, like a solar panel, to continuously extract the maximum possible power from it.

Battery-Aware Task Mapping

Battery-aware task mapping is a scheduling algorithm that assigns computational tasks to specific processor cores or accelerators while considering the battery's state of charge, internal resistance, and degradation characteristics to maximize system lifetime.

Energy-Constrained Scheduling

Energy-constrained scheduling is an algorithmic approach that determines the order and timing of task execution on a device with a finite energy budget, aiming to complete a set of tasks before the available energy is depleted.

Early Exit Networks

Early exit networks, or multi-exit networks, are neural network architectures with intermediate classifiers that allow simpler inputs to be classified at earlier layers, bypassing subsequent computationally expensive layers to save inference energy.

Wake-on-Event

Wake-on-event is a system power management feature where a deeply sleeping device is awakened by a specific external trigger, such as a sensor reading exceeding a threshold or a packet from a wake-up radio, enabling ultra-low-power always-on sensing.

Always-On (AON) Domain

An always-on (AON) domain is a small, isolated section of a system-on-chip that remains powered even when the main processor and other subsystems are in a deep sleep state, responsible for monitoring critical sensors and handling wake-up events.

Duty Cycling

Duty cycling is a fundamental power-saving technique for radios and sensors where the device periodically switches between a short active state to communicate or sample and a long low-power sleep state, with the ratio of active time to total cycle time defining the duty cycle.

Adaptive Sampling Rate

Adaptive sampling rate is a power management technique for sensors where the frequency of data acquisition is dynamically adjusted based on the context or activity level, reducing energy consumption during periods of low information content.

Power Usage Effectiveness (PUE) for Edge

Power Usage Effectiveness (PUE) for edge computing is an adaptation of the data center efficiency metric, calculated as total facility power divided by IT equipment power, used to evaluate the energy overhead of cooling and power delivery in distributed edge nodes.

Energy Profiling Tools

Energy profiling tools are software and hardware instruments, such as external power monitors or on-chip sensors, used to measure and analyze the detailed power consumption of software routines, hardware blocks, or full systems during execution.

Advanced Configuration and Power Interface (ACPI)

The Advanced Configuration and Power Interface (ACPI) is an open industry standard that provides an operating system with direct control over the power management and configuration of hardware components like processors, memory, and peripherals.

Power Side-Channel

A power side-channel is a security vulnerability where an attacker analyzes the dynamic power consumption of a cryptographic circuit to infer secret information, such as encryption keys, through techniques like Simple Power Analysis (SPA) or Differential Power Analysis (DPA).

Energy-Neutral Operation

Energy-neutral operation is a design goal for energy-harvesting systems where the long-term average energy consumption is less than or equal to the average energy harvested from the environment, enabling theoretically perpetual device operation.

Glossary

On-Device Learning

Terms related to performing model adaptation, fine-tuning, or federated learning directly on microcontroller-based edge devices. Target: Research Engineers & Privacy Specialists.

Federated Learning

Federated Learning (FL) is a decentralized machine learning paradigm where a global model is trained collaboratively across multiple edge devices or servers, each holding local data, without the need to exchange the raw data itself.

Federated Averaging (FedAvg)

Federated Averaging (FedAvg) is the foundational algorithm in federated learning where a central server aggregates model updates (typically weight deltas or gradients) from participating clients by computing a weighted average to form a new global model.

Local SGD

Local Stochastic Gradient Descent (Local SGD) is an optimization method used in federated learning where each client performs multiple local gradient descent steps on its private data before sending its updated model parameters to the server for aggregation.

Differential Privacy

Differential Privacy (DP) is a rigorous mathematical framework for quantifying and limiting the privacy loss incurred when an individual's data is included in a computation, commonly applied in federated learning by adding calibrated noise to model updates.

Secure Aggregation

Secure Aggregation is a cryptographic protocol in federated learning that allows a server to compute the sum of client model updates without being able to inspect any individual client's contribution, thereby protecting client data privacy.

Homomorphic Encryption

Homomorphic Encryption (HE) is a form of encryption that allows computations to be performed directly on encrypted data, enabling privacy-preserving federated learning where the server can aggregate encrypted model updates without decrypting them.

Model Poisoning

Model Poisoning is a security attack in federated learning where a malicious client submits crafted model updates designed to corrupt the global model, degrade its performance, or inject a backdoor.

Backdoor Attack

A Backdoor Attack in federated learning is a type of model poisoning where an adversary embeds a hidden functionality into the global model that causes it to misbehave only on inputs containing a specific trigger pattern.

Gradient Leakage

Gradient Leakage refers to a class of privacy attacks in federated learning where an adversary, often the central server, can reconstruct sensitive training data from the shared model gradients or updates.

Personalization

Personalization in federated learning refers to techniques that adapt a global model to the specific data distribution of an individual client or device, improving local performance without compromising collaborative training.

Continual Learning

Continual Learning (also known as Lifelong Learning) is the ability of a machine learning model to learn sequentially from a stream of data, acquiring new knowledge while retaining previously learned tasks, a key challenge in on-device learning scenarios.

Catastrophic Forgetting

Catastrophic Forgetting is the tendency of a neural network to abruptly and drastically lose previously learned information when trained on new data, a primary challenge in continual and on-device learning.

Non-IID Data

Non-Independent and Identically Distributed (Non-IID) data refers to the statistical heterogeneity commonly found in federated learning, where data distributions vary significantly across different clients, complicating model convergence.

Statistical Heterogeneity

Statistical Heterogeneity is the fundamental characteristic of federated learning systems where the local data distributions across clients are not identical, leading to challenges like client drift and slower convergence.

Client Drift

Client Drift is a phenomenon in federated learning where local models, optimized on heterogeneous client data, diverge from the global objective, hindering convergence and necessitating algorithms like FedProx to mitigate it.

FedProx

FedProx is a federated optimization algorithm that modifies the local client objective by adding a proximal term to constrain local updates, mitigating the negative effects of statistical and system heterogeneity (client drift).

SCAFFOLD

SCAFFOLD (Stochastic Controlled Averaging for Federated Learning) is an algorithm that uses control variates (correction terms) to reduce the variance in client updates, addressing the client drift problem caused by data heterogeneity.

Cross-Device FL

Cross-Device Federated Learning involves training a model across a massive number of resource-constrained edge devices (e.g., smartphones, IoT sensors), characterized by intermittent connectivity and a high degree of heterogeneity.

Cross-Silo FL

Cross-Silo Federated Learning involves training a model across a small number of reliable, resource-rich organizational entities (e.g., hospitals, banks), where data is partitioned by organization rather than by individual user device.

Split Learning

Split Learning is a distributed learning technique where a neural network is partitioned vertically between a client and a server; the client computes initial layers and sends the intermediate activations (smashed data) to the server for the remainder of the forward and backward pass.

Vertical Federated Learning

Vertical Federated Learning (VFL) is a paradigm where different parties hold different feature sets about the same set of entities (samples), and they collaborate to train a model without directly sharing their raw feature data.

On-Device Fine-Tuning

On-Device Fine-Tuning refers to the process of adapting a pre-trained machine learning model using local data directly on an edge device, such as a microcontroller, to personalize the model or adapt to new tasks.

Low-Rank Adaptation (LoRA)

Low-Rank Adaptation (LoRA) is a parameter-efficient fine-tuning method that freezes the pre-trained model weights and injects trainable rank decomposition matrices into transformer layers, drastically reducing the number of trainable parameters for on-device adaptation.

Adapter Layers

Adapter Layers are small, trainable neural network modules inserted between the fixed layers of a pre-trained model, enabling efficient task-specific adaptation with minimal new parameters, suitable for on-device fine-tuning.

Secure Multi-Party Computation (SMPC)

Secure Multi-Party Computation (SMPC) is a cryptographic subfield that enables multiple parties to jointly compute a function over their private inputs while revealing nothing but the final output, used for privacy-preserving federated aggregation.

Membership Inference Attack

A Membership Inference Attack is a privacy attack aimed at determining whether a specific data sample was part of the training set of a machine learning model, posing a risk to models trained on sensitive data.

Byzantine Robustness

Byzantine Robustness in federated learning refers to the property of an aggregation algorithm to tolerate a fraction of clients that may send arbitrary, incorrect, or malicious updates, ensuring the global model's integrity.

Federated Optimization

Federated Optimization is the study of optimization algorithms specifically designed for the federated learning setting, addressing challenges like communication efficiency, statistical heterogeneity, and partial client participation.

Communication Rounds

Communication Rounds in federated learning refer to the iterative cycles where the server broadcasts the global model to selected clients, clients perform local training, and the server aggregates the returned updates.

Privacy-Accuracy Trade-off

The Privacy-Accuracy Trade-off describes the fundamental tension in privacy-preserving machine learning, where increasing the level of privacy protection (e.g., via differential privacy) typically comes at the cost of reduced model utility or accuracy.

Glossary

TinyML Deployment & MLOps

Terms related to the pipeline for building, testing, updating, and monitoring machine learning models in production on microcontroller fleets. Target: DevOps & Platform Engineers.

Over-the-Air (OTA) Update

An Over-the-Air (OTA) update is a method of wirelessly distributing new software, firmware, or machine learning models to a fleet of remote devices, such as microcontrollers, without requiring physical access.

Model Registry

A model registry is a centralized repository for storing, versioning, and managing the lifecycle of machine learning model artifacts, enabling controlled deployment and rollback in production environments.

Model Drift

Model drift is the degradation of a machine learning model's predictive performance over time due to changes in the underlying relationships between its input data and the target variable it was trained to predict.

Canary Deployment

A canary deployment is a software release strategy where a new version is initially rolled out to a small, representative subset of users or devices to monitor its performance and stability before a full rollout.

Shadow Mode

Shadow mode is a deployment strategy where a new model processes live input data in parallel with the production model, but its predictions are not used to affect system behavior, allowing for performance comparison without risk.

Continuous Integration and Continuous Deployment (CI/CD)

Continuous Integration and Continuous Deployment (CI/CD) is a set of practices and automated pipelines that enable developers to frequently merge code changes and reliably deploy software, including machine learning models, to production.

ML Pipeline

An ML pipeline is an automated sequence of steps that orchestrates the end-to-end machine learning workflow, from data ingestion and preprocessing to model training, evaluation, and deployment.

Feature Store

A feature store is a data management system that acts as a centralized repository for storing, serving, and monitoring curated, reusable features for machine learning models across training and inference environments.

Model Serving

Model serving is the process of deploying a trained machine learning model into a production environment where it can receive input data, perform inference, and return predictions via an API or other interface.

Model Monitoring

Model monitoring is the practice of continuously tracking a deployed machine learning model's performance, data quality, and operational health to detect issues like drift, degradation, or infrastructure failures.

Blue-Green Deployment

A blue-green deployment is a release strategy that maintains two identical production environments (blue and green), allowing for instantaneous traffic switching between an old version (blue) and a new version (green) to enable zero-downtime updates and fast rollback.

Configuration Management

Configuration management is the process of systematically handling changes to a system's settings, parameters, and software in a controlled and consistent manner, often using declarative files and version control.

Secure Boot

Secure boot is a security standard that ensures a device boots using only software that is cryptographically signed and trusted by the device manufacturer, preventing the execution of unauthorized or malicious code during startup.

Digital Signature

A digital signature is a cryptographic mechanism that uses public-key cryptography to verify the authenticity and integrity of a digital message, software, or model, confirming it was created by a known sender and was not altered.

Device Authentication

Device authentication is the process of verifying the identity of a hardware device attempting to connect to a network or service, typically using cryptographic credentials like certificates or keys.

Message Queuing Telemetry Transport (MQTT)

Message Queuing Telemetry Transport (MQTT) is a lightweight, publish-subscribe network protocol designed for efficient machine-to-machine communication in constrained environments with low bandwidth and high latency.

Offline-First Operation

Offline-first operation is a system design principle where an application or device is built to function fully without a network connection, synchronizing data with a central server only when connectivity is available.

Service Level Objective (SLO)

A Service Level Objective (SLO) is a measurable target for the reliability or performance of a service, such as latency or uptime, that forms the basis for agreements between service providers and consumers.

Alerting System

An alerting system is a software component that automatically generates and routes notifications—such as emails, SMS, or dashboard alerts—when predefined metrics or conditions indicate a potential problem in a monitored system.

Audit Trail

An audit trail is a chronological, immutable record of system events, user actions, and data changes that provides a verifiable history for security analysis, compliance reporting, and forensic investigation.

Lifecycle Management

Lifecycle management is the comprehensive process of governing an asset—such as a software application, device, or machine learning model—from its initial development and deployment through its active use, updates, and eventual retirement.

Containerization

Containerization is an operating system-level virtualization method for deploying and running distributed applications within isolated, lightweight execution environments called containers, which package an application and its dependencies.

Real-Time Operating System (RTOS)

A Real-Time Operating System (RTOS) is an operating system designed for deterministic, time-critical applications, providing guaranteed response times and scheduling for tasks running on embedded systems and microcontrollers.

Digital Twin

A digital twin is a virtual, dynamic representation of a physical object, system, or process that uses real-time data and simulation to mirror its state, behavior, and performance for analysis, monitoring, and optimization.

Rollout Strategy

A rollout strategy is a planned approach for deploying a new software version or model to a user base or device fleet, often involving phased releases, targeting rules, and mechanisms for monitoring and rollback.

Remote Diagnostics

Remote diagnostics is the capability to monitor, analyze, and troubleshoot the health and performance of a deployed device or system from a central location, often using telemetry data and remote access tools.

Desired State Configuration

Desired State Configuration (DSC) is a declarative management paradigm where a system's target configuration is defined in code, and an automated process continuously reconciles the actual system state to match this desired state.

Hardware Abstraction Layer (HAL)

A Hardware Abstraction Layer (HAL) is a software layer that provides a uniform interface for application code to interact with hardware components, isolating the application from the specific details of the underlying hardware.

Trusted Execution Environment (TEE)

A Trusted Execution Environment (TEE) is a secure, isolated area within a main processor that ensures sensitive data—such as cryptographic keys or model parameters—is stored, processed, and protected in a trusted manner, even if the main operating system is compromised.

Zero-Touch Provisioning

Zero-touch provisioning is an automated process for configuring and onboarding new devices into a network or management system without requiring manual intervention at the device location.

Glossary

Sensor Data Processing

Terms related to algorithms and architectures for real-time analysis of sensor streams (audio, vibration, vision) on resource-constrained devices. Target: Signal Processing & IoT Engineers.

Digital Signal Processing (DSP)

Digital Signal Processing (DSP) is the computational manipulation of discrete-time signals, such as sensor data, using algorithms to filter, analyze, or transform them for applications like audio, vibration, and image analysis.

Fast Fourier Transform (FFT)

The Fast Fourier Transform (FFT) is an efficient algorithm for computing the Discrete Fourier Transform (DFT), which decomposes a signal from its time domain into its constituent frequencies in the frequency domain.

Mel-Frequency Cepstral Coefficients (MFCCs)

Mel-Frequency Cepstral Coefficients (MFCCs) are a set of features derived from the short-term power spectrum of an audio signal, designed to mimic human auditory perception and widely used in speech and audio recognition.

Discrete Cosine Transform (DCT)

The Discrete Cosine Transform (DCT) is a linear, invertible function that expresses a finite sequence of data points as a sum of cosine functions oscillating at different frequencies, central to image and audio compression (e.g., JPEG, MP3).

Kalman Filter

A Kalman filter is a recursive algorithm that uses a series of noisy measurements observed over time to produce statistically optimal estimates of unknown variables, commonly used for sensor fusion and tracking.

Sensor Fusion

Sensor fusion is the process of integrating data from multiple disparate sensors (e.g., IMU, camera, radar) to produce more accurate, complete, and reliable information than could be obtained from any single sensor.

Inertial Measurement Unit (IMU)

An Inertial Measurement Unit (IMU) is an electronic device that combines accelerometers and gyroscopes, and sometimes magnetometers, to measure a body's specific force, angular rate, and orientation.

Time-Series Analysis

Time-series analysis involves methods for analyzing sequences of data points indexed in time order to extract meaningful statistics, identify patterns, and forecast future values from sensor streams.

Sliding Window

A sliding window is a data processing technique where a fixed-size window moves sequentially over a data stream, allowing for real-time analysis of the most recent segment of time-series or sensor data.

Feature Extraction

Feature extraction is the process of transforming raw sensor data into a reduced set of informative, non-redundant values (features) that are more suitable for machine learning model training and inference.

Finite Impulse Response (FIR) Filter

A Finite Impulse Response (FIR) filter is a type of digital filter whose output depends only on a finite number of past and present input samples, characterized by its stability and linear phase response.

Infinite Impulse Response (IIR) Filter

An Infinite Impulse Response (IIR) filter is a type of digital filter whose output depends on both past inputs and past outputs, offering a more efficient frequency response than FIR filters but with potential stability concerns.

Wavelet Transform

The Wavelet Transform is a mathematical technique that decomposes a signal into wavelets—brief, oscillatory functions localized in both time and frequency—enabling multi-resolution analysis for non-stationary signals.

Short-Time Fourier Transform (STFT)

The Short-Time Fourier Transform (STFT) is a Fourier-related transform used to determine the sinusoidal frequency and phase content of local sections of a signal as it changes over time, producing a spectrogram.

Signal-to-Noise Ratio (SNR)

Signal-to-Noise Ratio (SNR) is a measure that compares the level of a desired signal to the level of background noise, quantifying the clarity and quality of a sensor measurement or communication channel.

Root Mean Square (RMS)

Root Mean Square (RMS) is a statistical measure of the magnitude of a varying quantity, calculated as the square root of the mean of the squares of the values, commonly used to quantify the power of an AC signal or vibration.

Peak Detection

Peak detection is an algorithmic process for identifying local maxima (peaks) in a signal, which is fundamental for analyzing events in time-series data such as heartbeats, seismic activity, or mechanical impacts.

Zero-Crossing Rate (ZCR)

Zero-Crossing Rate (ZCR) is a temporal feature of a signal defined as the rate at which the signal changes its sign from positive to negative or vice versa, often used in audio analysis to distinguish between voiced and unvoiced speech.

Moving Average Filter

A moving average filter is a simple Finite Impulse Response (FIR) filter that smooths a signal by replacing each data point with the average of its neighboring points within a specified window, reducing short-term fluctuations.

Analog-to-Digital Converter (ADC) Sampling

ADC sampling is the process by which an Analog-to-Digital Converter (ADC) measures the amplitude of a continuous analog signal at discrete time intervals to convert it into a digital representation.

Nyquist Rate

The Nyquist rate is the minimum sampling rate required to perfectly reconstruct a continuous bandlimited signal from its samples, defined as twice the highest frequency component present in the signal.

Aliasing

Aliasing is a distortion artifact that occurs when a signal is sampled at a rate lower than the Nyquist rate, causing high-frequency components to be misrepresented as lower frequencies in the sampled data.

Anti-Aliasing Filter

An anti-aliasing filter is a low-pass analog filter applied to a signal before analog-to-digital conversion to remove frequency components above the Nyquist frequency, thereby preventing aliasing in the sampled data.

Sensor Calibration

Sensor calibration is the process of adjusting the output of a sensor to match a known standard or reference, correcting for systematic errors like offset, gain, and non-linearity to ensure measurement accuracy.

Activity Recognition

Activity recognition is a machine learning task that involves classifying the physical actions or behaviors (e.g., walking, running, sitting) of a subject based on sensor data, typically from accelerometers and gyroscopes.

Anomaly Detection

Anomaly detection is the identification of rare items, events, or observations in sensor data that deviate significantly from the majority of the data, indicating potential faults, intrusions, or novel events.

Gesture Recognition

Gesture recognition is the process by which gestures made by a user, often captured via cameras or inertial sensors, are interpreted by a computer system to understand and execute commands.

Optical Flow

Optical flow is the pattern of apparent motion of objects, surfaces, and edges in a visual scene caused by the relative motion between an observer (camera) and the scene, used for motion detection and tracking.

Acoustic Event Detection (AED)

Acoustic Event Detection (AED) is the task of identifying and classifying specific sound events (e.g., glass breaking, dog barking) within an audio stream using signal processing and machine learning techniques.

Voice Activity Detection (VAD)

Voice Activity Detection (VAD) is a signal processing technique that identifies the presence or absence of human speech in an audio segment, used to gate audio processing and conserve resources in communication systems.

Glossary

Tiny Language Models

Terms related to the development, compression, and deployment of small-scale language models capable of running on microcontroller hardware. Target: NLP Engineers & Embedded Developers.

Quantization

Quantization is a model compression technique that reduces the numerical precision of a neural network's weights and activations, converting them from high-precision floating-point formats (like 32-bit) to lower-precision integers (like 8-bit or 4-bit) to shrink model size and accelerate inference.

Pruning

Pruning is a model compression technique that removes redundant or less important parameters (weights, neurons, or entire layers) from a neural network to reduce its size and computational cost while aiming to preserve accuracy.

Knowledge Distillation

Knowledge distillation is a model compression technique where a smaller, more efficient 'student' model is trained to mimic the behavior and output distributions of a larger, more accurate 'teacher' model, transferring learned knowledge to a deployable form.

Weight Clustering

Weight clustering is a compression technique that groups similar weight values in a neural network into a smaller set of shared centroids, replacing the original weights with cluster indices to reduce storage requirements.

Low-Rank Factorization

Low-rank factorization is a model compression technique that approximates a large weight matrix as the product of two or more smaller matrices, reducing the total number of parameters and computational complexity.

Structured Pruning

Structured pruning is a model compression technique that removes entire, structurally regular components from a neural network, such as entire neurons, channels, filters, or layers, to produce a smaller, hardware-friendly architecture.

Unstructured Pruning

Unstructured pruning is a model compression technique that removes individual weights from a neural network based on a criterion like magnitude, creating an irregular, sparse pattern that requires specialized hardware or software for efficient execution.

Post-Training Quantization (PTQ)

Post-training quantization is a compression method where a pre-trained model is converted to a lower numerical precision (e.g., from FP32 to INT8) after training is complete, using a calibration dataset to determine optimal scaling factors, without requiring retraining.

Quantization-Aware Training (QAT)

Quantization-aware training is a model compression technique where quantization error is simulated during the training process, allowing the model to learn and adapt its weights to maintain higher accuracy when later converted to a lower-precision format for deployment.

Static Quantization

Static quantization is a post-training quantization method where the scaling factors (used to map floating-point ranges to integer ranges) are calculated once using a calibration dataset and remain fixed during inference.

Dynamic Quantization

Dynamic quantization is a post-training quantization method where the scaling factors for activations are calculated on-the-fly for each input during inference, offering flexibility at the cost of runtime overhead.

INT8 Inference

INT8 inference is the execution of a neural network using 8-bit integer arithmetic for weights and activations, a common quantization target that balances significant model compression and acceleration with acceptable accuracy loss.

BFloat16

BFloat16 is a 16-bit floating-point number format that preserves the dynamic range of a standard 32-bit float (FP32) by using the same 8-bit exponent, making it highly suitable for training and inference with minimal conversion loss.

Mixed-Precision Training

Mixed-precision training is a technique that uses lower-precision data types (like FP16 or BFloat16) for most operations during neural network training to speed up computation and reduce memory usage, while keeping certain critical operations in higher precision (like FP32) to maintain numerical stability and model accuracy.

Neural Architecture Search (NAS)

Neural architecture search is an automated process for designing optimal neural network architectures for a given task and set of constraints (like latency or model size) by exploring a vast search space of possible designs.

Hardware-Aware Neural Architecture Search

Hardware-aware neural architecture search is an automated design process that discovers neural network architectures optimized not just for accuracy, but also for specific hardware deployment metrics like latency, memory usage, and power consumption on a target device.

Once-For-All Network

A Once-For-All network is a large, trainable 'supernet' containing many possible subnetworks of varying sizes and computational costs, designed to be trained once and then allow for the extraction of numerous efficient, specialized submodels for different deployment scenarios without retraining.

Model Compression

Model compression is a broad set of techniques, including quantization, pruning, and knowledge distillation, aimed at reducing the memory footprint, computational complexity, and energy consumption of a neural network to facilitate deployment on resource-constrained devices.

Vocabulary Pruning

Vocabulary pruning is a compression technique for language models that reduces the size of the model's embedding layer by removing rarely used tokens from its vocabulary, thereby decreasing the model's parameter count and memory footprint.

Subword Tokenization

Subword tokenization is a text processing method used in language models that breaks words down into smaller, frequently occurring units (subwords), enabling the model to handle a vast vocabulary and out-of-vocabulary words efficiently with a fixed, manageable token set.

SentencePiece

SentencePiece is a language-agnostic, open-source library for subword tokenization that implements algorithms like Byte-Pair Encoding and Unigram language modeling, treating the input text as a raw sequence of Unicode characters without requiring pre-tokenization.

Model Distillation

Model distillation, synonymous with knowledge distillation, is the process of training a compact student model to replicate the predictions and often the internal representations of a larger, more complex teacher model.

Activation Quantization

Activation quantization is the process of converting the intermediate outputs (activations) of a neural network's layers from a high-precision format to a lower-precision integer format, a critical step for fully quantized inference to reduce memory bandwidth and enable integer-only arithmetic.

Quantization Scale and Zero-Point

In linear quantization, the scale is a floating-point number that maps the range of floating-point values to the integer range, and the zero-point is an integer offset that ensures a real value of zero is exactly representable in the quantized space.

Model Sparsity

Model sparsity refers to the proportion of zero-valued elements in a neural network's weight or activation tensors, a property induced by techniques like pruning that can be exploited to reduce computation and memory traffic if supported by hardware or software.

Structured Sparsity

Structured sparsity is a pattern of zeros in a neural network's weight matrix that exhibits a regular structure, such as entire rows, columns, or blocks being zero, enabling efficient computation on standard hardware without specialized sparse kernels.

N:M Sparsity

N:M sparsity is a fine-grained structured sparsity pattern where for every block of M consecutive weights, at least N are forced to be zero, a pattern efficiently supported by modern GPU tensor cores (e.g., 2:4 sparsity) for acceleration.

Iterative Pruning

Iterative pruning is a model compression strategy that repeatedly cycles between pruning a small fraction of a network's least important parameters and fine-tuning the remaining network to recover accuracy, resulting in a highly sparse model with minimal performance degradation.

Lottery Ticket Hypothesis

The lottery ticket hypothesis is a conjecture in deep learning stating that within a large, randomly initialized neural network, there exist smaller subnetworks ('winning tickets') that, when trained in isolation from the start, can achieve comparable accuracy to the full network.

Gradient Flow

In the context of model compression, analyzing gradient flow involves studying how gradients propagate backward through a pruned or quantized network during training, as disrupted flow can indicate optimization difficulties and inform the design of compression algorithms.

Glossary

Embedded Security for TinyML

Terms related to securing models, data, and update pipelines on microcontroller devices against physical and network-based threats. Target: Security Engineers & IoT Architects.

Secure Boot

Secure Boot is a hardware-enforced security mechanism that ensures a microcontroller or embedded device executes only cryptographically signed and verified firmware or software during its initial startup sequence.

Trusted Execution Environment (TEE)

A Trusted Execution Environment (TEE) is a secure, isolated area of a main processor that provides a protected space for the execution of sensitive code and the handling of confidential data, separate from the device's standard operating system.

Hardware Security Module (HSM)

A Hardware Security Module (HSM) is a dedicated, tamper-resistant physical computing device that safeguards and manages digital keys, performs cryptographic operations, and provides a root of trust for secure system functions.

Physical Unclonable Function (PUF)

A Physical Unclonable Function (PUF) is a hardware security primitive that exploits inherent, microscopic manufacturing variations in silicon to generate a unique, device-specific digital fingerprint that can be used for cryptographic key generation and device authentication.

Memory Protection Unit (MPU)

A Memory Protection Unit (MPU) is a hardware component in a microcontroller that enforces memory access rules, preventing unauthorized code from reading from or writing to specific regions of memory to isolate and protect critical system software.

Secure Element

A Secure Element is a certified, tamper-resistant hardware chip, often in a microcontroller package, designed to securely host applications, store cryptographic keys, and perform sensitive operations in an isolated environment.

Firmware Attestation

Firmware Attestation is a security process where a device cryptographically proves the integrity and authenticity of its currently running firmware to a remote verifier, typically using a hardware root of trust.

Secure Over-the-Air (SOTA) Update

Secure Over-the-Air (SOTA) Update is a process for remotely and securely delivering, authenticating, and installing firmware or software updates to embedded devices in the field, ensuring update integrity and preventing rollback to vulnerable versions.

Hardware Root of Trust

A Hardware Root of Trust is an immutable, hardware-based security foundation within a system-on-chip that performs the initial trusted measurement and verification of system software, establishing a chain of trust for all subsequent operations.

Side-Channel Attack

A Side-Channel Attack is a security exploit that extracts secret information from a cryptographic system by analyzing indirect, physical emissions such as power consumption, electromagnetic radiation, sound, or timing variations during its operation.

Differential Power Analysis (DPA)

Differential Power Analysis (DPA) is an advanced form of side-channel attack that uses statistical analysis of multiple power consumption traces measured from a cryptographic device to derive its secret encryption keys.

Fault Injection Attack

A Fault Injection Attack is a physical attack on a microcontroller where an adversary intentionally induces operational faults—such as voltage glitches, clock glitches, or laser pulses—to cause computational errors and bypass security checks or extract secrets.

Trusted Platform Module (TPM)

A Trusted Platform Module (TPM) is an international standard for a secure cryptoprocessor, typically a dedicated microcontroller, that provides hardware-based, tamper-resistant generation and storage of cryptographic keys, along with remote attestation capabilities.

Lightweight Cryptography

Lightweight Cryptography refers to a class of cryptographic algorithms, including ciphers and hash functions, specifically designed to have a small hardware footprint, low power consumption, and high efficiency for implementation on constrained devices like microcontrollers.

Authenticated Encryption

Authenticated Encryption is a cryptographic mode of operation that simultaneously provides confidentiality (via encryption), integrity, and authenticity (via a Message Authentication Code) for data, ensuring it cannot be read or undetectably altered.

Elliptic Curve Cryptography (ECC)

Elliptic Curve Cryptography (ECC) is a public-key cryptography approach based on the algebraic structure of elliptic curves over finite fields, providing equivalent security to traditional methods like RSA with significantly smaller key sizes, making it ideal for constrained devices.

Post-Quantum Cryptography (PQC)

Post-Quantum Cryptography (PQC) refers to cryptographic algorithms designed to be secure against attacks from both classical computers and future quantum computers, which are anticipated to break widely used public-key cryptosystems like RSA and ECC.

Secure Hash Algorithm (SHA)

Secure Hash Algorithm (SHA) is a family of cryptographic hash functions standardized by NIST that transform input data of any size into a fixed-size output (digest), used for data integrity verification, digital signatures, and key derivation.

Control Flow Integrity (CFI)

Control Flow Integrity (CFI) is a security mechanism that protects software from control-flow hijacking attacks by ensuring that the runtime execution flow of a program adheres strictly to a pre-determined, legitimate control-flow graph.

Address Space Layout Randomization (ASLR)

Address Space Layout Randomization (ASLR) is a memory-protection technique that randomizes the memory addresses used by key data areas of a process, such as the base of the executable, libraries, heap, and stack, making exploitation of memory corruption vulnerabilities more difficult.

Zero-Trust Architecture

Zero-Trust Architecture is a security model that operates on the principle of 'never trust, always verify,' requiring strict identity verification and least-privilege access controls for every person and device attempting to access resources on a private network, regardless of location.

ARM TrustZone

ARM TrustZone is a system-wide hardware security technology integrated into ARM processors that creates two isolated execution environments—a Secure World for trusted software and a Normal World for the general-purpose operating system—protected by hardware.

Intel SGX

Intel Software Guard Extensions (SGX) is a set of security-related instruction codes built into some Intel CPUs that allow user-level code to allocate private regions of memory, called enclaves, which are protected from processes running at higher privilege levels.

Platform Security Architecture (PSA)

Platform Security Architecture (PSA) is an ARM-led industry framework that provides a holistic set of threat models, security specifications, and open-source firmware (Trusted Firmware-M) to enable the design of secure, connected devices from the ground up.

Secure Multi-Party Computation (MPC)

Secure Multi-Party Computation (MPC) is a cryptographic protocol that enables multiple parties to jointly compute a function over their private inputs while keeping those inputs concealed from each other, allowing for privacy-preserving collaborative analytics.

Homomorphic Encryption

Homomorphic Encryption is a form of encryption that allows specific types of computations to be performed directly on encrypted data, generating an encrypted result which, when decrypted, matches the result of the operations performed on the plaintext.

Differential Privacy

Differential Privacy is a rigorous mathematical framework for quantifying and limiting the privacy loss incurred by an individual when their data is included in a statistical analysis or machine learning dataset, ensuring that the output reveals minimal information about any single entry.

True Random Number Generator (TRNG)

A True Random Number Generator (TRNG) is a hardware device that generates random numbers from a physical, non-deterministic process (such as thermal noise or quantum effects), providing a fundamental source of entropy for cryptographic security.

Secure Erase

Secure Erase is a process for permanently deleting data from a storage medium by overwriting it with patterns designed to make the original data unrecoverable using forensic techniques, ensuring data sanitization at end-of-life.

Key Derivation Function (KDF)

A Key Derivation Function (KDF) is a cryptographic algorithm that derives one or more secret keys from a secret value (such as a master key, password, or passphrase) using a pseudorandom function, often incorporating a salt to prevent pre-computation attacks.

Glossary

TinyML Benchmarking & Profiling

Terms related to methodologies and tools for measuring and comparing the performance, accuracy, and resource usage of TinyML models and systems. Target: Performance Analysts & Researchers.

Inference Latency

Inference latency is the total time delay, measured from the input of data to the output of a prediction, for a machine learning model to perform a single inference on a target hardware device.

Peak Memory Usage

Peak memory usage is the maximum amount of RAM or SRAM consumed by a model and its runtime during the execution of an inference task, including weights, activations, and intermediate buffers.

Energy per Inference

Energy per inference is the total electrical energy, typically measured in microjoules or millijoules, consumed by a hardware system to complete a single forward pass of a machine learning model.

MACC Count (Multiply-Accumulate Operations)

MACC count is the total number of multiply-accumulate operations required to execute a neural network, serving as a primary metric for computational workload and complexity.

Throughput (Frames per Second)

Throughput, often measured in frames or inferences per second (FPS/IPS), is the rate at which a system can process and complete inference tasks over a sustained period.

Worst-Case Execution Time (WCET)

Worst-case execution time is the maximum possible time a specific task, such as a model inference, could take to complete under all permissible operating conditions, critical for real-time systems.

Benchmark Suite

A benchmark suite is a standardized collection of models, datasets, and measurement procedures designed to evaluate and compare the performance of machine learning systems across different hardware platforms.

Profiling Tool

A profiling tool is software used to instrument, measure, and analyze the runtime behavior of a system, collecting data on metrics like execution time, memory access, and power consumption.

TinyMLPerf

TinyMLPerf is an industry-standard benchmark suite from MLCommons designed to measure the performance and efficiency of machine learning inference on ultra-low-power microcontrollers and embedded devices.

Layer-wise Profiling

Layer-wise profiling is the detailed measurement and analysis of resource consumption (time, memory, energy) for each individual layer or operator within a neural network.

Compute Bound vs. Memory Bound

A system is compute-bound when its performance is limited by the speed of its arithmetic units, and memory-bound when limited by the speed of data movement to and from memory.

Roofline Model

The roofline model is an analytical performance model that visualizes the attainable performance of a computational kernel as a function of its operational intensity and the hardware's peak compute and memory bandwidth.

Accuracy-Latency Trade-off

The accuracy-latency trade-off describes the engineering compromise where improving a model's prediction accuracy often increases its computational complexity and inference latency, and vice versa.

Pareto Frontier

A Pareto frontier is a set of optimal solutions in a multi-objective optimization problem where no objective can be improved without degrading at least one other objective, such as accuracy versus latency.

Static Power vs. Dynamic Power

Static power is the constant power consumed by a circuit due to leakage current when it is powered on but idle, while dynamic power is the additional power consumed during active switching and computation.

Thermal Throttling

Thermal throttling is a protective mechanism where a processor reduces its operating clock speed or voltage to decrease power dissipation and prevent overheating when a critical temperature threshold is reached.

Hardware-in-the-Loop (HIL) Testing

Hardware-in-the-loop testing is a validation methodology where the actual target microcontroller or embedded hardware executes the model and software under test within a simulated or controlled environment.

Deterministic Execution

Deterministic execution refers to a system's property of producing identical outputs and exhibiting identical timing behavior for identical inputs across repeated runs, which is essential for reliable real-time systems.

Tail Latency (P95, P99)

Tail latency refers to the high-percentile latencies (e.g., 95th or 99th percentile) in a distribution of inference times, representing the worst delays experienced by a small fraction of requests.

Operational Intensity

Operational intensity is a metric defined as the number of operations (e.g., FLOPs) performed per byte of data transferred from main memory, used to characterize an algorithm's balance between computation and memory access.

Performance Counter

A performance counter is a specialized hardware register within a processor that counts microarchitectural events such as clock cycles, cache misses, or instructions retired, used for low-level profiling.

Cross-Platform Benchmarking

Cross-platform benchmarking is the practice of measuring and comparing the performance of identical machine learning workloads across different hardware architectures, operating systems, or software frameworks.

End-to-End Latency

End-to-end latency is the total time from the initial sensor data acquisition or system trigger to the final actionable output or actuation, encompassing all preprocessing, inference, and postprocessing stages.

Utilization (Compute, Memory)

Utilization is a percentage metric indicating how much of a hardware resource's theoretical maximum capacity (e.g., of a CPU core, NPU, or memory bandwidth) is being used during a workload.

Statistical Profiling

Statistical profiling is a performance analysis technique that periodically samples the program counter or call stack to construct an approximate profile of where a program spends its execution time, minimizing overhead.

Golden Dataset

A golden dataset is a curated, representative, and static set of input data with known expected outputs, used as a reference for validating model accuracy and performance during benchmarking and regression testing.

Model Efficiency

Model efficiency is a holistic measure of a neural network's performance relative to its consumption of computational resources, typically balancing metrics like accuracy, latency, memory footprint, and energy use.