PyTorch
llama
DSCNN / README.md
cchiou-amba's picture
Add LICENSE and upstream attribution/modification notices
d6b4cf6 verified
|
Raw History Blame Contribute Delete
2.25 kB
---
library_name: pytorch
license: apache-2.0
---
# DS-CNN Keyword Spotting (Ambarella N1-655 CVflow v3 NVP)
Depthwise Separable Convolutional Neural Network (DS-CNN) for 12-class Keyword Spotting (KWS) on 1-second 16 kHz audio clips, trained on the Google Speech Commands dataset.
Original paper: [Hello Edge: Keyword Spotting on Microcontrollers](https://arxiv.org/abs/1711.07128)
Model Configuration:
- Reference implementation: [https://github.com/ARM-software/ML-KWS-for-MCU](https://github.com/ARM-software/ML-KWS-for-MCU)
- Original Weight: [https://huggingface.co/EclipseAidge/ds_cnn](https://huggingface.co/EclipseAidge/ds_cnn)
- Dataset: Google Speech Commands v0.02 (CC-BY-4.0)
- License: Apache-2.0 (`LICENSE`)
- Support Cooper version:
- CNNGen: `[3.9.0 / n1-655x]` (`cavalry_gen 3.0.4`)
## Upstream Attribution & Modification Notice
- **Upstream Copyright**: Copyright (c) Arm Limited and Contributors (`ARM-software/ML-KWS-for-MCU`), MLCommons Association (`mlcommons/tiny`), and Eclipse Aidge (`EclipseAidge/ds_cnn`), licensed under the Apache License, Version 2.0. Trained on Google Speech Commands v0.02 (Creative Commons Attribution 4.0 International, Copyright Google LLC).
- **Modification Notice (Apache-2.0 Section 4(b))**: Modified by Ambarella International LLC (2026). Transposed input layout to NCHW `[1, 1, 49, 10]` IEEE FP16 and compiled via Ambarella Cooper SDK CNNGen 3.9.0 (`cavalry_gen 3.0.4`) into CVflow v3 N1-655 (`vdg_arch = 0xB`) Cavalry DAG binary format (`n1-655_kws_dscnn_amba_optimized.bin`).
## NVP Port & Runtime Specification
- **Target SoC**: Ambarella N1-655 (`vdg_arch = 0xB`, CVflow v3 `cavalry_gen` 3.0.4)
- **Input port**: `StatefulPartitionedCall_functional_1_conv2d_BiasAdd_in0` `[1, 1, 49, 10]` IEEE FP16 (1 s @ 16 kHz, 40 ms window, 20 ms hop, 40 HTK Mel bins [20..4000 Hz], DCT-II top 10 MFCCs)
- **Output port**: `dense` `[1, 12]` IEEE FP16 (12 Speech Commands classes: `silence`, `unknown`, `yes`, `no`, `up`, `down`, `left`, `right`, `on`, `off`, `stop`, `go`)
| Model | Device | Compression | Model Link |
| :---: | :---: | :---: | :--- |
| DSCNN | N1-655 | Amba_optimized | [Model_Link](https://huggingface.co/cchiou-amba/DSCNN/blob/main/n1-655_kws_dscnn_amba_optimized.bin) |