Math Bridge: Gesture Sampling and int8 Weights

← Back to Edge AI & ML Lab
Math BridgeEdge & FogStruggle-friendly runway

How can one lab pass sampling and still fail compression?

Keep the accelerometer clock and the int8 weight ruler in separate evidence columns.

Edge Eddie, the guideEdge Eddie guides
The one targetVerify input timing and weight rounding independently.
The chapter case100 Hz, 800 ms wrist wave, max |w| 0.85, weight −0.20.
What it buys youA lab record that says which quantisation passed.

A field team faces an unresolved physical question: How can one lab pass sampling and still fail compression? They must answer it before changing maximum absolute weight on the real device. Predict the direction first.

See the relationship before changing it

The figure reads from left to right. The blue card is maximum absolute weight. The middle card applies this page's relationship. The green card is nyquist. Walk the arrows once: set the input, apply the rule, then read the result with its unit.

The retained audit below checks several chapter fixtures. This added model holds every other chapter fixture fixed, so the numeric fixture does not switch without explanation.

Maximum absolute weight changes nyquist An input card leads through the page relationship to the nyquist result. SET INPUT ONE CONTROL APPLY RULE predict calculate check units READ RESULT
Walk the arrows. Expanding the weight range makes every code step wider. It changes model rounding but cannot change the already sampled gesture clock.

Derive the baseline in four named moves

  1. 1

    Name the input. The chapter baseline for maximum absolute weight is 0.85.

  2. 2

    Name the relationship. fgesture=1/T; q=max|w|/127; code=round(w/q); ŵ=codeq

  3. 3

    Substitute the chapter fixture. Set maximum absolute weight to 0.85. The page ledger gives nyquist as 50 Hz.

  4. 4

    Read the result. Keep Hz beside the value. Use it only inside the technical boundary on this page.

Predict, then change maximum absolute weight

Try Predict the direction of nyquist. Move one control, calculate, then check your prediction.

0.85
Chapter baseline
Nyquist

Observe Expanding the weight range makes every code step wider. It changes model rounding but cannot change the already sampled gesture clock. Reset the control to 0.85 and compare nyquist.

Explain Only maximum absolute weight moves here. The other chapter fixtures remain fixed.

Check yourself

What should you do before trusting a moved-control result?
Answer: Predict its direction, apply the shown relationship, keep the units, and reset to the worked baseline.
What does this small model leave out?
Answer: Only maximum absolute weight moves. Field effects named in the page's technical boundary stay fixed.

1. Two errors share one nickname

Temporal aliasing happens when a changing gesture is sampled too slowly. Weight rounding happens when a fixed trained number is parked on the nearest int8 code. One depends on hertz; the other depends on the selected weight range and code count.

Edge Eddie: Same word, different axis, different release test.

2. Name the moves

1

Halve the sample rate100 Hz gives a 50 Hz Nyquist limit.

2

Invert the gesture period800 ms is 0.8 s, so the fundamental is 1/0.8 = 1.25 Hz.

3

Set the int8 scaleq = max|w| / 127.

4

Round the codecode = round(w/q).

5

Reconstruct and compareŵ = code q; error = |ŵ − w|.

3. Work the lab's fixed case

q = 0.85/127 = 0.0066929; round(−0.20/q) = −30

The reconstructed weight is −0.200787, so the error is 0.000787, inside q/2 = 0.00335. Separately, 50/1.25 = 40 gives the wrist-wave fundamental forty-fold room below Nyquist.

4. Try one controlled change

fgesture=1/T; q=max|w|/127; code=round(w/q); ŵ=codeq

TryMove only the calibrated maximum absolute weight. The 100 Hz input, 800 ms gesture, −0.20 example weight, and int8 code range stay fixed.

Sample rate
Nyquist
Gesture fundamental
Timing margin
int8 step
RMS rounding floor
Rounded code
Reconstructed weight
Absolute error
Half-step bound

ObserveAt max |w| = 0.85, the step is 0.0066929, the code is −30, reconstruction is −0.200787, and error is 0.000787. The timing outputs do not move.

ExplainExpanding the weight range makes every code step wider. It changes model rounding but cannot change the already sampled gesture clock.

Technical boundaries.

The widget is a symmetric, per-tensor, ideal int8 example.

Input
Higher gesture harmonics and analogue filtering still need measurement
Quantiser
Real models may use per-channel scales, zero points, clipping, and saturation
Outcome
One reconstructed weight cannot prove accuracy or threshold stability

Release against representative windows, the deployed conversion, and the actual runtime.

5. Read the forty-fold margin honestly

The 1.25 Hz fundamental is far below 50 Hz, but a sharp gesture contains higher harmonics. The margin is a useful first check, not proof that the full motion waveform and sensor front end are alias-free.

6. Keep two acceptance rows

For sampling, record rate, filter, window, mounting, and spectrum. For compression, record calibration range, scale policy, saturation, per-class metrics, confidence thresholds, artifact hash, and target-runtime result.

7. Check yourself

Does the 100 Hz rate determine the int8 weight scale?
Answer: No. Sample rate governs time; max |w| and 127 positive codes govern this scale.
Why must the −0.20 error stay below q/2?
Answer: Nearest-code rounding can move a value by at most half one uniform step unless it clips.
Does one passing round trip approve the model?
Answer: No. Representative accuracy, saturation, thresholds, latency, and target execution still decide.
Honesty boundary.

The equations reproduce the lab's teaching values, not a universal TinyML quantiser.

100 Hz
Lab sensor cadence
0.85
Sketch maximum absolute weight
0.000787
One example's reconstruction error

Go deeper in the lab and validate both the physical input and the complete optimized artifact.