A per-tensor quantizer maps every value in an activation tensor through one shared scale. That coupling matters when most activations occupy a narrow interval but a few values have much larger magnitude. The large values can determine the scale, while the dense central region is represented with coarser spacing than its own range would require.
This is not a statement that every large activation is erroneous or removable. An outlier may carry useful model state. The issue is numerical: one scale has to cover values with very different magnitudes.
The largest magnitude can set the step size
For a symmetric signed integer quantizer with integer limit (Q), a simple range-preserving scale can be written as
[ s = \frac{\max_i |x_i|}{Q}. ]
A real activation (x) is then mapped approximately as
[ q = \operatorname{clip}\left(\operatorname{round}\left(\frac{x}{s}\right), -Q, Q\right), \qquad \hat{x} = sq. ]
If the maximum absolute activation grows while (Q) stays fixed, (s) grows too. Adjacent representable reconstructed values are separated by (s). A tensor whose central mass sits near zero can therefore lose local numeric resolution because a small number of distant values expanded the shared range.
For example, consider two tensors with most values between (-1) and (1). If one tensor has no value outside that interval and another contains a value near (16), a max-based per-tensor scale for the second tensor must span the larger magnitude. With the same integer format, the spacing around zero is correspondingly larger.
The mechanism follows directly from the mapping. It does not require the outlier to be statistically rare under a formal distribution; it only requires the shared scale to be influenced by a value far from the region where many other values lie.
Range preservation and central resolution are separate goals
Choosing a scale from the full observed range avoids clipping values inside that range, but it does not minimize every form of quantization error. A scale can preserve an extreme value while assigning relatively few distinct integer codes to a dense central interval.
Clipping changes that objective. If a threshold (T) below the observed maximum is used,
[ s = \frac{T}{Q}, ]
values beyond (T) saturate, while values inside the threshold receive finer spacing. The resulting error moves rather than disappears: clipped values incur saturation error, while in-range values can receive lower rounding error.
The useful threshold is therefore model- and tensor-dependent. Selecting it from a representative calibration set is an empirical optimization problem, not a universal constant. A threshold that works for one activation distribution can be unsuitable for another layer, input domain, or model.
Granularity changes which values share a scale
Per-tensor quantization is the broadest common sharing boundary: all selected values use one scale. Finer granularity can reduce the influence of an outlier by limiting the group of values that must share its range.
Per-channel or per-group schemes assign separate scales to smaller partitions. If a large activation is confined to one partition, other partitions can retain scales matched to their own ranges. This changes the error geometry without requiring the outlier itself to be deleted.
The benefit is conditional. Finer granularity requires scale metadata and kernel support, and the exact partition axis has to match the tensor layout and quantization scheme. Weight quantization and activation quantization also have different operational constraints; a granularity that is convenient for static weights may be less convenient for runtime activations.
A format name such as INT8 does not specify this boundary. Two INT8 deployments can use different scale granularities, clipping policies, zero-point conventions, and calibration procedures, producing different numeric behavior from the same floating-point tensor.
Calibration data defines the observed range
Static activation quantization often derives scale parameters from calibration inputs. Those inputs determine which activation ranges the calibration process observes. If they omit input patterns that produce larger magnitudes, the selected range can be too narrow for later traffic. If they overrepresent unusual extremes, a max-based scale can become unnecessarily wide for common inputs.
This makes calibration coverage part of the numeric contract. The goal is not simply to collect many samples. The sample set has to exercise the activation regimes expected in the intended workload.
Dynamic quantization changes the timing of scale selection by deriving parameters at runtime for the current tensor or batch, depending on the implementation. It does not remove the underlying coupling when a group of values still shares one scale. An outlier in that group can still enlarge the step size for its neighbors.
Outlier handling can move across the model
Some quantization designs transform or partition activations so that unusually large components do not share the same low-precision range as the bulk of the tensor. Others retain selected operations or values at higher precision. These approaches alter where precision is spent rather than making outlier magnitude irrelevant.
That distinction matters during model serving. A quantized checkpoint, a runtime quantizer, and the execution kernel must agree on scale granularity and the representation expected by each operation. A mathematically sensible partition is not useful if the serving path silently assumes another layout or scale scope.
Evaluation also needs to separate numeric reconstruction from task behavior. Lower tensor reconstruction error does not by itself guarantee better generated output, and preserving every extreme activation does not by itself guarantee better model behavior. Quantization changes propagate through later operations, nonlinearities, residual paths, and subsequent token positions.
The scale boundary is the implementation boundary
Activation outliers become especially disruptive when the quantizer forces them to share a scale with many much smaller values. The practical question is therefore not merely whether outliers exist. It is which values share scale parameters, how those parameters are selected, and what happens outside the represented range.
Per-tensor max scaling answers those questions with one broad range and no clipping inside the observed maximum. Finer granularity and calibrated clipping change the boundary in different ways. Each changes the location and shape of quantization error, so the serving configuration has to be evaluated as part of the model rather than treated as a storage format alone.