Référence

Glossaire

Définis une fois, employés de façon cohérente.

Les termes qui reviennent sur ce site, définis une fois. Quand une définition porte un chiffre, ce chiffre vient d'un artefact mesuré et non d'une brochure.

Ternary weight

A weight that takes one of three values: −α, 0 or +α, where α is a single scale shared across a tensor. Three states carry log₂(3) ≈ 1,58 bits, hence “1,58-bit model”. Multiplying by one of three values is a sign flip, a skip or a copy, so the inner loop of inference has no floating-point multiply in it.

Straight-through estimator

The trick that makes ternary training work. The forward pass quantizes weights to three levels; the backward pass updates a hidden full-precision copy as if the quantization were the identity function. The network therefore learns weights that survive being snapped to three levels, because it has only ever seen the snapped values in its own forward pass.

ATOME01

The packed weight format: four trits per byte in base 3. The C engine loads the blob directly with no conversion at boot, which is why there is no unpacking step and no scratch buffer for one.

Zero-heap

No malloc anywhere in the engine. All state is static or on the stack, with a shape fixed at compile time. On a device this removes an entire class of failure — fragmentation, allocation failure under load — and it makes peak RAM a number you can measure once rather than a distribution you have to bound.

Bit-exact parity

The property that the Python reference, the C99 engine and the cross-compiled binary produce identical output rather than merely similar output. Measured as max |Δ| across stages, plus multi-token generation runs compared token by token.

Tensor arena

The scratch memory a runtime interpreter needs to hold intermediate tensors. TensorFlow Lite for Microcontrollers requires one; a compiled fixed-shape engine does not, which is most of the RAM difference between the two.

FlatBuffer

The serialized model format TensorFlow Lite reads at boot. It is what makes swapping a model without recompiling firmware possible, and it is also part of what makes the runtime bigger.

Sliding window

A classification window that advances by fewer samples than its own length, so consecutive windows overlap. Almost all continuous sensing works this way, and it is the regime where recomputing the whole window per decision wastes most of the work.

Delta / streaming inference

Computing only what changed. Per-layer activation rings hold the history, so one new sample costs one new timestep per layer instead of a full window recompute. The decisions are bit-identical to full recomputation, which is what makes it a saving rather than an approximation.

CMSIS-NN

ARM's optimised neural-network kernel library for Cortex-M, and the code X-CUBE-AI generates underneath. When a cycle count on this site is compared against CMSIS-NN, CMSIS-NN is the opponent's number, not ours.

Subject-wise split

A train/test split where the people in the test set never appear in training. For anything worn or carried it is the only split that means anything: a random split leaks a subject's own gait into the model that will be scored on it.

Leak-free evaluation

Model selection done on a validation set carved out of the training subjects, and the test set scored exactly once. The alternative — picking the best epoch by test score — produces numbers that are real but unrepeatable, and it is the single most common way a tiny-model benchmark becomes fiction.

Cycles per MAC

Clock cycles spent per multiply-accumulate. It normalises away model size and lets two engines doing identical arithmetic be compared directly. Ours is 9,13 on Cortex-M4; CMSIS-NN is 3,13.

Perplexity

How surprised a language model is by text it did not write. Lower is better. It is only comparable between models that use the same tokenizer, which is why byte-level comparisons here quote bits per byte where the tokenizers differ.

Router entropy

How undecided the per-token router is between the three pathways. Low entropy means the block knows which mechanism this token needs; flat entropy means the input does not resemble the training distribution. Useful as an out-of-domain diagnostic, not calibrated as a probability.