This project is a submission to the 4th ChipIgnite AI competition The challenge aims to leverage generative AI to develop an open-source hardware accelerator designed explicitly for Keyword Spotting (KWS) applications on the Caravel System-on-Chip.
Keyword Spotting (KWS) (or more simply, word spotting) deals with the identification of predefined keywords in audio data streams.
This project is inpsired by the low-power neural network solutions proposed in the following papers:
- Depthwise separable convolutional neural network (DS-CNN).
- Reduced precision to store neural network weights, we will experiment with INT8, FP8, FP4 and Ternary formats.
- Reduced precision to represent activation values, most likely INT8 or FP8.
- Aim to fit neural network parameters (weights) into 16Kb .. 32Kb of memory.
- 2D convolution layer
- 2D depthwise layer
- Batch Normalization layer
- Fully connected layer
- ReLU activation
Pete Warden. Speech commands: A public dataset for single-word speech recognition. Dataset available from: http://download.tensorflow.org/data/speech_commands_v0.01.tar.gz
- https://paperswithcode.com/task/keyword-spotting
- https://paperswithcode.com/paper/hello-edge-keyword-spotting-on
- https://github.com/ARM-software/ML-KWS-for-MCU
- https://github.com/google-research/google-research/tree/master/kws_streaming
- https://research.google/pubs/keyword-spotting-for-google-assistant-using-contextual-speech-recognition
❗ Important Note |
---|
Refer to README for a quickstart of how to use caravel_user_project
Refer to README for this sample project documentation.
Refer to the following readthedocs for how to add cocotb tests to your project.