Pith. sign in

REVIEW 3 major objections 4 minor 33 references

Scalable Keyword Spotting via Modular Network Expansion

T0 review · 3 major / 4 minor · reviewed 2026-08-01 · deepseek-v4-flash

Pith's one-line read A deployed keyword-spotting model can accept new keywords by freezing the core and attaching a small trainable branch, with old triggers unchanged by construction.

desk verdict A genuinely useful by-construction non-regression guarantee, with FRR gains that mostly survive an honest re-look at the depth selection. read the letter →

arxiv 2607.19918 v1 pith:ELPBKKI7 submitted 2026-07-22 cs.SD

classification cs.SD
keywords keywordspottingclass-incrementallearningmodularneuralnetworksembeddeddevicesnon-regressionguaranteefalserejectrateparameter-efficientexpansionon-devicedeployment
verification ladder T0 review T1 audit T2 compute T3 formal

The pith

A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.

The reading

The paper tries to establish that an embedded keyword-spotting system can grow its vocabulary after deployment without any risk of regressing on existing keywords. The method freezes the entire deployed network—including batch-normalization statistics and the core classifier—and attaches a parameter-capped (≤10k) expansion branch with a separate head for new keywords, trained only on new-keyword data. Because the core computation is untouched, the original logits and thresholds are identical for every input, so the shipped decision rule for old keywords is preserved exactly. On a standard 10-command benchmark at a fixed 1% false-accept operating point, the expanded model reports average new-keyword false-reject rates of 4.37%, versus 6.46% for a parameter-matched separate-model ensemble and 6.41% for LoRA, while using fewer multiply-accumulate operations.

What carries the argument

Expanded Blocks: each block taps the activation of a frozen base encoder block, concatenates it with the previous expanded block's output (identity for the first block), and applies a light residual transform—a small-kernel 1-D convolution, batch-normalization, and hard-swish. The final expanded state is pooled and fed to a separate New Head for Y2 ∪ {∅}. The carrying identity is Eq. (3): since the Core Head's computation is frozen and independent of the expansion path, the core logits are exactly the base logits for every input, giving a non-regression guarantee by construction rather than by regularization.

What would settle it

Hold out a sixth keyword pair, run the depth sweep only on the five pairs used in the paper, then evaluate on the held-out pair: if the L=4 configuration does not reproduce the ~2-point FRR gain over the ensemble baseline on the unseen pair, the reported improvement is an artifact of selecting L on the evaluation set. Alternatively, train the expansion on keywords from a language not seen by the base model and compare against the separate-model ensemble.

Watch

Extended reading notes

Core claim

The central discovery is that the strict safety guarantee does not cost accuracy: freezing the base and reading its intermediate activations through a lightweight branch transfers better to new keywords than retraining a separate model of the same budget, while preserving core behavior exactly. Concretely, the paper proves ℓ_exp_core(x) ≡ ℓ_base_core(x) for all x, meaning the probability the deployed detector assigns to any original keyword or the background class is unchanged for every input. The branch is trained solely on new-keyword data with cross-entropy, and the inference rule first runs the core detector and only consults the new head when the core rejects. Empirically this configura

Load-bearing premise

The whole gain rests on the premise that a ~10k-parameter branch reading only frozen base features can learn reliable new-keyword boundaries and a shared background from new-keyword data alone; if the frozen features are not transferable, or if the new head's negative distribution at deployment differs from its training background, the reported FRR advantage collapses.

Editorial extensions

If this is right

  • Existing keyword detections are bit-for-bit unchanged after expansion, so the shipped user experience cannot regress on old triggers.
  • New keywords can be added using only recordings of those keywords plus a background set; the original training data need not be stored or reused.
  • Under the same ≤10k added-parameter budget, the expansion branch outperforms separate-model, adapter, and LoRA baselines on new-keyword detection at a fixed FAR.
  • Worst-case inference cost is 16.34M MACs, lower than the 18.45M/20.52M of adapter/LoRA alternatives, under the core-first decision rule.
  • The expansion works best when tapping four of the base blocks; deeper layers are too specialized to the core vocabulary to help new keywords.

Reading between the lines

Editorial extensions of the paper, not claims the author makes directly.

  • If the frozen features do not transfer to the new vocabulary—say, new keywords from a language or acoustic domain absent from base training—the 4.37% figure should deteriorate toward or below the separate-model baseline; that is a testable boundary of the method.
  • The depth hyperparameter L is selected on the same held-out keyword pairs used to report the headline numbers, so the gain may be optimistically biased; evaluating on a further held-out pair would tighten the claim.
  • The core-first decision rule means new-head false accepts can only occur on utterances the core rejects; tuning the two thresholds jointly, rather than at independent 1% FAR, could shift the operating curve.
  • The same modular expansion recipe—freeze, attach a small branch, separate head—may apply to other class-incremental problems on embedded models where the base features are rich enough.
Share X Bluesky LinkedIn Reddit HN

Editorial analysis

A structured set of objections, weighed in public.

Desk editor's note, referee report, and a circularity audit.

Referee Report

3 major / 4 minor

Summary. The paper proposes a modular expansion method for incremental keyword spotting (KWS). The deployed base model, including batch-normalization parameters and running statistics, is frozen; a lightweight expansion branch (≤10k added parameters) taps intermediate activations of the frozen encoder and feeds a separate new-keyword head. Since the core head is not changed by the expansion path, the core logits and the core-first decision rule are preserved exactly for all inputs (Eq. 3). Training uses only new-keyword data D2. Experiments on Google Speech Commands v2 with Common Voice negatives report new-keyword and core FRR at 1% FAR, averaged over 8 seeds with 95% CIs, and compare against full fine-tuning, EWC, head-only, ensemble, adapters, and LoRA. The headline result is average new-keyword FRR of 4.37% vs 6.46% for the ensemble baseline and 6.41% for LoRA under the same added-parameter budget, with lower worst-case MACs.

Significance. If the empirical comparison holds, the paper has clear practical value: it provides a strict, by-construction non-regression guarantee for deployed KWS detectors while adding new keywords with a small parameter and compute overhead. Strengths include the exact preservation argument of Eq. (3), evaluation on five held-out keyword pairs, confidence intervals over 8 runs, and parameter/MAC-budget matching. However, the central empirical claim is weakened by a model-selection procedure that uses the evaluation data (the expansion depth L is chosen from FRR on the {left,right} pair and then used in the same pair's headline result), and by baseline hyperparameters that are compute-matched but not accuracy-tuned. With an honest out-of-sample selection protocol, the method would be considerably more convincing.

major comments (3)
  1. [§4.5, Fig. 3, and Table 2] Expansion depth L=4 is selected from the FRR-vs-L curve computed for Y2={left,right} and then adopted for all reported comparisons. Table 2's average and the {left,right} row both include exactly this task. No validation split is used for architectural selection, so the reported 4.37% average partly reflects tuning on the evaluation data. This is selection bias rather than circularity in Eq. (3), but it is load-bearing because the paper's claim is empirical superiority. Please provide a nested or out-of-sample selection protocol (e.g., choose L on a validation split for each pair, or fix L on a separate development pair) and report results under that protocol; also report sensitivity of the Table 2 conclusions to L.
  2. [§3.5 and §4.2] Adapters and LoRA are configured to match the added-parameter budget and inference compute, but no accuracy-based validation selection is reported for their depth/rank. If the proposed method's hyperparameter L is tuned on the test tasks (see previous comment) while the baselines are only compute-matched, the observed 2.09-point FRR gain may partly reflect a hyperparameter advantage rather than the modular-expansion mechanism. Please tune all methods under the same validation-based protocol, or state explicitly why compute matching alone is the appropriate comparison, and show the resulting performance for all methods.
  3. [§4.4 / Table 2] The claim that the proposed method 'outperforms' LoRA and Ensemble rests on point estimates with overlapping CIs for some individual pairs (e.g., {up,down}: 4.57±0.73 vs LoRA 5.12±1.78). The average CIs are more favorable, but with the L-selection issue above, the CI coverage is not trustworthy. After fixing the selection protocol, please also report paired or per-task comparisons and, if possible, the number of pairs for which the proposed method is statistically better.
minor comments (4)
  1. [§3.3] The sentence 'the concatenation reduces to an identity' for the first Expanded Block is confusing: if there is no previous expanded output, the block's input is just the frozen activation, which is not an identity operation. Please clarify the exact first-block computation.
  2. [§3.4, Eq. (5)] The notation switches among score_y, s_core_y, and s_new_y. Please define s_core_y explicitly before Eq. (5) and keep the notation consistent throughout.
  3. [Table 2] The table omits core FRR for methods that freeze the core path because they match Base Model exactly; this is reasonable, but the caption should state that these values are identical by construction rather than only mentioning it in the text.
  4. [Fig. 3] The y-axis label 'FRR' should specify whether it is macro FRR for Y2 at the same 1% FAR threshold used in Table 2, and whether the curve is for the {left,right} pair only or averaged over pairs.

Circularity Check

0 steps flagged · score 0.0 of 10

No significant circularity: the non-regression guarantee is definitional by design and the FRR comparison is an external benchmark result.

full rationale

The derivation chain is self-contained. Equation (3) asserts ℓ_exp_core(x) ≡ ℓ_base_core(x) because the Core Head is frozen and receives no input from the expansion path; the paper explicitly calls this a 'strict non-regression guarantee by construction' (§3.3). This is an architectural identity, not a fitted claim or a predicted empirical finding, so it cannot be circular. The load-bearing empirical claim—lower new-keyword FRR than Ensemble/Adapters/LoRA—is tested on an external benchmark (GSC positives, Common Voice negatives) with five held-out keyword pairs and 8 random seeds (§4.1, §4.3, Table 2). No central premise rests on the authors' prior work: reference [3] is only a related-work citation for multichannel KWS and is not used to justify the expansion mechanism or the non-regression guarantee. The only methodological weakness is in §4.5, where the expansion depth L=4 is selected from Figure 3 on the {left,right} pair and then that same pair contributes to Table 2's average; this is a selection-on-evaluation-data concern that could bias the reported margin, but it is not a claim that reduces by definition to its own inputs. Under the stated hard rules, selection bias of this kind is not circular reasoning.

Assumptions & free parameters 3 free parameters · 4 assumptions · 0 invented entities

No new physical entities are postulated. The central empirical claim depends mainly on transferability of frozen base features, the calibration corpus, and the fixed parameter budget. The most consequential free parameter is the post-hoc-chosen expansion depth L=4.

free parameters (3)
  • Expansion depth L (number of tapped blocks) = 4
    Chosen as the 'optimal configuration' from a sweep on the same five held-out tasks used in Table 2 (§4.5, Fig. 3). This is post-hoc selection on the evaluation tasks and affects every reported FRR number.
  • Per-keyword detection thresholds = Calibrated to 1% FAR on Common Voice test per keyword
    Each threshold is fit to the negative corpus before FRR is measured (§4.3). All reported results are at this single operating point.
  • Added-parameter budget cap = 10k
    Hand-chosen design constraint that defines the comparison; all methods are compared at this budget. Results could differ at other budgets.
assumptions (4)
  • domain assumption The original training data D1 are unavailable during expansion and cannot be used.
    Defines the problem setup in §3.1 and excludes replay-based and data-dependent EWC approaches from the main comparison.
  • domain assumption A 150k-parameter SVDF-style model trained on GSC is representative of deployed small-footprint KWS detectors.
    Used in §3.2 and §4 to frame the method as practical for embedded devices; external validity of the results depends on this.
  • domain assumption Frozen intermediate features of the base network transfer to new keywords through a small Conv1D branch.
    This is the core premise of the method, tested only for five GSC word pairs; it could fail for phonetically dissimilar or out-of-domain commands.
  • domain assumption Mozilla Common Voice test negatives are representative of the deployment negative distribution for threshold calibration.
    All thresholds are calibrated to 1% FAR on CV (§4.3); if this negative distribution is not representative, the reported FRR levels change.

how reviews work

0 comments
Cite this review

Pith. "Pith review of Scalable Keyword Spotting via Modular Network Expansion." pith.science (2026). https://pith.science/paper/ELPBKKI7

@misc{pith2026260719918,
  author       = {Pith},
  title        = {Pith review of: Scalable Keyword Spotting via Modular Network Expansion},
  year         = {2026},
  howpublished = {\url{https://pith.science/paper/ELPBKKI7}},
  note         = {Machine review of arXiv:2607.19918}
}
abstract

Keyword spotting (KWS) models on embedded devices often need to add new keywords after deployment, but updates are difficult when original training data are unavailable and regressions on existing triggers are unacceptable. At a fixed operating point, our method reduces average new-keyword false reject rate (FRR) from 6.46 to 4.37 versus a parameter-matched separate-model baseline and outperforms parameter-efficient tuning baselines (adapters, LoRA), while using fewer multiply-accumulate operations (MACs) under the same added-parameter budget ($\leq$10k): 16.34M vs 18.45M/20.52M. We achieve this via parameter-capped modular expansion: the base network, including batch-normalization statistics and the core classifier, is frozen, and only a lightweight expansion branch with a separate new-keyword head is trained, preserving core logits, shipped outputs, and thresholds for existing keywords.

Figures

Figures reproduced from arXiv: 2607.19918 by the authors.

Figure 1
Figure 1. Base model and Encoder Block for core-keyword clas￾sification. the task identity (and thus which column to execute) is known at inference time. In contrast, we study class-incremental ex￾pansion of a single always-on, fixed-latency embedded KWS detector, where (i) the original training data are unavailable, (ii) model growth must be strictly bounded, and (iii) the shipped detector’s outputs and threshold-based decis… view at source ↗
Figure 3
Figure 3. New-keyword FRR (%) vs. Expanded Blocks L for Y2 = {left,right}. ranks) to match the additional inference compute of our expan￾sion under the same 10k-parameter budget. Relaxed-constraint continual learning. EWC is included for context: it regularizes fine-tuning using Fisher information estimated from D1 and therefore does not strictly satisfy the no￾access-to-D1 setting; we use λ = 5 × 105 in all experiments. 4. E… view at source ↗

Discussion (0). Sign in to comment.

Reference graph

Works this paper leans on

33 extracted references · 6 linked inside Pith

  1. [1]

    In deployed products, keyword inventories can change over time as new features, locales, or user needs emerge

    Introduction Keyword spotting enables hands-free interaction on resource- constrained devices, where small-footprint models must remain accurate and reliable across speakers and acoustic conditions [1, 2, 3]. In deployed products, keyword inventories can change over time as new features, locales, or user needs emerge. Up- dating a fixed-vocabulary KWS mod...

  2. [2]

    Most deployed systems use a fixed vocabulary and train compact neural classifiers, including CNN-based architectures and streaming-friendly designs such as SVDF models [1, 5, 6, 7]

    Related work Keyword spotting has been widely studied due to its importance in always-on voice interfaces. Most deployed systems use a fixed vocabulary and train compact neural classifiers, including CNN-based architectures and streaming-friendly designs such as SVDF models [1, 5, 6, 7]. These models achieve strong accu- racy under tight latency and memor...

  3. [3]

    none of the keywords of interest

    Methodology 3.1. Problem setup Letxdenote an input audio utterance. LetY 1 denote the set of deployed (core) keywords andY 2 a disjoint set of new key- words, withY 1 ∩ Y2 =∅. We use a single background label∅ to denote “none of the keywords of interest.” A base modelf base(x;θ base)is trained on a datasetD 1 with labels inY 1 ∪ {∅}. We are then given a s...

  4. [4]

    Datasets and expansion tasks Experiments are conducted on Google Speech Commands v2 (GSC) using the official train/validation/test splits

    Experiments 4.1. Datasets and expansion tasks Experiments are conducted on Google Speech Commands v2 (GSC) using the official train/validation/test splits. The target vocabulary is the standard set of 10 commands{left, right, on, off, stop, go, up, down, yes, no}. All other words in GSC, to- gether with silence segments, are mapped to the background label...

  5. [5]

    We presented a modular expansion mechanism that adds new keywords without touching the deployed detector

    Conclusion On-device KWS systems must evolve as products add features and languages, yet updates are challenging when the original training audio cannot be reused and regressions on existing key- words are unacceptable. We presented a modular expansion mechanism that adds new keywords without touching the deployed detector. The full base network is kept f...

  6. [6]

    All technical content, experiments, and conclusions were produced and verified by the authors

    Generative AI Use Disclosure We used ChatGPT (OpenAI; GPT-5.2) to assist with English editing and polishing of the manuscript. All technical content, experiments, and conclusions were produced and verified by the authors

  7. [7]

    Convolutional neural networks for small-footprint keyword spotting,

    T. N. Sainath and C. Parada, “Convolutional neural networks for small-footprint keyword spotting,” inInterspeech 2015, 2015, pp. 1478–1482

  8. [8]

    Broadcasted residual learning for efficient keyword spotting,

    B. Kim, S. Chang, J. Lee, and D. Sung, “Broadcasted residual learning for efficient keyword spotting,” inInterspeech 2021, 08 2021, pp. 4538–4542

Show all 33 references
  1. [9]

    Multichannel keyword spotting for noisy conditions,

    D. Saladukha, I. Koriabkin, K. Artsiom, A. Rak, and N. Ryzhikov, “Multichannel keyword spotting for noisy conditions,” inInter- speech 2025, 2025, pp. 2670–2674

  2. [10]

    Speech Commands: A Dataset for Limited- V ocabulary Speech Recognition,

    P. Warden, “Speech Commands: A Dataset for Limited- V ocabulary Speech Recognition,”arXiv e-prints, p. arXiv:1804.03209, Apr. 2018

  3. [11]

    Convolutional recurrent neural networks for small-footprint keyword spotting,

    S. Arık, M. Kliegl, R. Child, J. Hestness, A. Gibiansky, C. Fougner, R. Prenger, and A. Coates, “Convolutional recurrent neural networks for small-footprint keyword spotting,” inInter- speech 2017, 08 2017, pp. 1606–1610

  4. [12]

    Unrestricted vocabu- lary keyword spotting using lstm-ctc,

    Y . Zhuang, X. Chang, Y . Qian, and K. Yu, “Unrestricted vocabu- lary keyword spotting using lstm-ctc,” inInterspeech 2016, 2016, pp. 938–942

  5. [13]

    End-to-end streaming keyword spot- ting,

    R. Alvarez and H.-J. Park, “End-to-end streaming keyword spot- ting,” inICASSP 2019 - 2019 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), 2019, pp. 6336–6340

  6. [14]

    Query-by-example key- word spotting using long short-term memory networks,

    G. Chen, C. Parada, and T. N. Sainath, “Query-by-example key- word spotting using long short-term memory networks,” in2015 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), 2015, pp. 5236–5240

  7. [15]

    Adversarial Deep Metric Learning for Cross-Modal Audio- Text Alignment in Open-V ocabulary Keyword Spotting,

    Y . Jung, Y .-H. Lee, M. Jung, J. Roh, C. W. Han, and H.-Y . Cho, “Adversarial Deep Metric Learning for Cross-Modal Audio- Text Alignment in Open-V ocabulary Keyword Spotting,” inInter- speech 2025, 2025, pp. 2645–2649

  8. [16]

    Few-shot keyword spotting with prototypical networks,

    A. Parnami and M. Lee, “Few-shot keyword spotting with prototypical networks,” in2022 7th International Conference on Machine Learning Technologies (ICMLT), ser. ICMLT

  9. [17]

    Lora: Low-rank adaptation of large language models,

    E. J. Hu, Y . Shen, P. Wallis, Z. Allen-Zhu, Y . Li, S. Wang, and W. Chen, “Lora: Low-rank adaptation of large language models,”CoRR, vol. abs/2106.09685, 2021. [Online]. Available: https://arxiv.org/abs/2106.09685

  10. [18]

    Metric learning for keyword spotting,

    J. Huh, M. Lee, H. Heo, S. Mun, and J. S. Chung, “Metric learning for keyword spotting,” in2021 IEEE Spoken Language Technol- ogy Workshop (SLT), 2021, pp. 133–140

  11. [19]

    Overcoming catastrophic forgetting in neural networks,

    J. Kirkpatrick, R. Pascanu, N. Rabinowitz, J. Veness, G. Des- jardins, A. A. Rusu, K. Milan, J. Quan, T. Ramalho, A. Grabska-Barwinska, D. Hassabis, C. Clopath, D. Kumaran, and R. Hadsell, “Overcoming catastrophic forgetting in neural networks,”Proceedings of the National Acad...

  12. [20]

    Learning without forgetting,

    Z. Li and D. Hoiem, “Learning without forgetting,”IEEE Trans- actions on Pattern Analysis and Machine Intelligence, vol. 40, no. 12, pp. 2935–2947, 2018

  13. [21]

    Continual learning with deep generative replay,

    H. Shin, J. K. Lee, J. Kim, and J. Kim, “Continual learning with deep generative replay,” inAdvances in Neural Information Processing Systems, I. Guyon, U. V . Luxburg, S. Bengio, H. Wallach, R. Fergus, S. Vishwanathan, and R. Garnett, Eds., vol. 30. Curran Associates, Inc., 2...

  14. [22]

    Experience replay for continual learning,

    D. Rolnick, A. Ahuja, J. Schwarz, T. Lillicrap, and G. Wayne, “Experience replay for continual learning,” inAdvances in Neural Information Processing Systems, H. Wallach, H. Larochelle, A. Beygelzimer, F. d'Alch ´e-Buc, E. Fox, and R. Garnett, Eds., vol. 32. Curran Associates,...

  15. [24]

    SpecAugment: A Simple Data Augmenta- tion Method for Automatic Speech Recognition,

    D. S. Park, W. Chan, Y . Zhang, C.-C. Chiu, B. Zoph, E. D. Cubuk, and Q. V . Le, “SpecAugment: A Simple Data Augmenta- tion Method for Automatic Speech Recognition,” inInterspeech 2019, 2019, pp. 2613–2617

  16. [25]

    Adam: A method for stochastic optimiza- tion,

    D. Kingma and J. Ba, “Adam: A method for stochastic optimiza- tion,”International Conference on Learning Representations, 12 2014

  17. [26]

    Progressive neural networks,

    A. Rusu, N. Rabinowitz, G. Desjardins, H. Soyer, J. Kirkpatrick, K. Kavukcuoglu, R. Pascanu, and R. Hadsell, “Progressive neural networks,”arXiv preprint arXiv:1606.04671, 06 2016

  18. [27]

    Com- pressing deep neural networks using a rank-constrained topology,

    P. Nakkiran, R. Alvarez, R. Prabhavalkar, and C. Parada, “Com- pressing deep neural networks using a rank-constrained topology,” inInterspeech 2015, 2015, pp. 1473–1477

  19. [28]

    Batch normalization: Accelerating deep network training by reducing internal covariate shift,

    S. Ioffe and C. Szegedy, “Batch normalization: Accelerating deep network training by reducing internal covariate shift,” inProceedings of the 32nd International Conference on Machine Learning, ser. Proceedings of Machine Learning Research, F. Bach and D. Blei, Eds., vol. 37. L...

  20. [29]

    Searching for mobilenetv3,

    A. Howard, M. Sandler, B. Chen, W. Wang, L.-C. Chen, M. Tan, G. Chu, V . Vasudevan, Y . Zhu, R. Pang, H. Adam, and Q. Le, “Searching for mobilenetv3,” in2019 IEEE/CVF International Conference on Computer Vision (ICCV), 2019, pp. 1314–1324

  21. [30]

    Improving neural networks by preventing co-adaptation of feature detectors,

    G. E. Hinton, N. Srivastava, A. Krizhevsky, I. Sutskever, and R. R. Salakhutdinov, “Improving neural networks by preventing co-adaptation of feature detectors,”CoRR, vol. abs/1207.0580, 2012, cite arxiv:1207.0580. [Online]. Available: http://arxiv.org/abs/1207.0580

  22. [31]

    Common voice: A massively-multilingual speech corpus,

    R. Ardila, M. Branson, K. Davis, M. Kohler, J. Meyer, M. Henretty, R. Morais, L. Saunders, F. Tyers, and G. Weber, “Common voice: A massively-multilingual speech corpus,” in Proceedings of the Twelfth Language Resources and Evaluation Conference. Marseille, France: European La...

  23. [34]

    SGDR: stochastic gradient descent with warm restarts,

    I. Loshchilov and F. Hutter, “SGDR: stochastic gradient descent with warm restarts,” in5th International Conference on Learning Representations, ICLR 2017, Toulon, France, April 24-26, 2017, Conference Track Proceedings. OpenReview.net, 2017. [Online]. Available: https://openr...

  24. [2019]

    Available: http://arxiv.org/abs/1902.00751

    [Online]. Available: http://arxiv.org/abs/1902.00751

  25. [2022]

    ACM, Mar. 2022, p. 277–283. [Online]. Available: http://dx.doi.org/10.1145/3529399.3529443

Pith tools

Reviewed August 1, 2026 · model on record in the stance chip above.