Update README.md
Browse files
README.md
CHANGED
|
@@ -110,7 +110,9 @@ Users (both direct and downstream) should be made aware of the risks, biases and
|
|
| 110 |
|
| 111 |
## How to Get Started with the Model
|
| 112 |
|
| 113 |
-
|
|
|
|
|
|
|
| 114 |
|
| 115 |
[More Information Needed]
|
| 116 |
|
|
@@ -119,27 +121,30 @@ Use the code below to get started with the model.
|
|
| 119 |
### Training Data
|
| 120 |
|
| 121 |
<!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
|
|
|
|
| 122 |
|
| 123 |
-
[More Information Needed]
|
| 124 |
|
| 125 |
### Training Procedure
|
| 126 |
|
| 127 |
<!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
|
|
|
|
|
|
|
| 128 |
|
| 129 |
#### Preprocessing [optional]
|
| 130 |
|
| 131 |
[More Information Needed]
|
|
|
|
|
|
|
| 132 |
|
|
|
|
|
|
|
|
|
|
| 133 |
|
| 134 |
-
#### Training Hyperparameters
|
| 135 |
-
|
| 136 |
-
- **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
|
| 137 |
|
| 138 |
-
####
|
| 139 |
|
| 140 |
-
|
| 141 |
|
| 142 |
-
[More Information Needed]
|
| 143 |
|
| 144 |
## Evaluation
|
| 145 |
|
|
@@ -149,92 +154,4 @@ Use the code below to get started with the model.
|
|
| 149 |
|
| 150 |
#### Testing Data
|
| 151 |
|
| 152 |
-
|
| 153 |
-
|
| 154 |
-
[More Information Needed]
|
| 155 |
-
|
| 156 |
-
#### Factors
|
| 157 |
-
|
| 158 |
-
<!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
|
| 159 |
-
|
| 160 |
-
[More Information Needed]
|
| 161 |
-
|
| 162 |
-
#### Metrics
|
| 163 |
-
|
| 164 |
-
<!-- These are the evaluation metrics being used, ideally with a description of why. -->
|
| 165 |
-
|
| 166 |
-
[More Information Needed]
|
| 167 |
-
|
| 168 |
-
### Results
|
| 169 |
-
|
| 170 |
-
[More Information Needed]
|
| 171 |
-
|
| 172 |
-
#### Summary
|
| 173 |
-
|
| 174 |
-
|
| 175 |
-
|
| 176 |
-
## Model Examination [optional]
|
| 177 |
-
|
| 178 |
-
<!-- Relevant interpretability work for the model goes here -->
|
| 179 |
-
|
| 180 |
-
[More Information Needed]
|
| 181 |
-
|
| 182 |
-
## Environmental Impact
|
| 183 |
-
|
| 184 |
-
<!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->
|
| 185 |
-
|
| 186 |
-
Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).
|
| 187 |
-
|
| 188 |
-
- **Hardware Type:** [More Information Needed]
|
| 189 |
-
- **Hours used:** [More Information Needed]
|
| 190 |
-
- **Cloud Provider:** [More Information Needed]
|
| 191 |
-
- **Compute Region:** [More Information Needed]
|
| 192 |
-
- **Carbon Emitted:** [More Information Needed]
|
| 193 |
-
|
| 194 |
-
## Technical Specifications [optional]
|
| 195 |
-
|
| 196 |
-
### Model Architecture and Objective
|
| 197 |
-
|
| 198 |
-
[More Information Needed]
|
| 199 |
-
|
| 200 |
-
### Compute Infrastructure
|
| 201 |
-
|
| 202 |
-
[More Information Needed]
|
| 203 |
-
|
| 204 |
-
#### Hardware
|
| 205 |
-
|
| 206 |
-
[More Information Needed]
|
| 207 |
-
|
| 208 |
-
#### Software
|
| 209 |
-
|
| 210 |
-
[More Information Needed]
|
| 211 |
-
|
| 212 |
-
## Citation [optional]
|
| 213 |
-
|
| 214 |
-
<!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
|
| 215 |
-
|
| 216 |
-
**BibTeX:**
|
| 217 |
-
|
| 218 |
-
[More Information Needed]
|
| 219 |
-
|
| 220 |
-
**APA:**
|
| 221 |
-
|
| 222 |
-
[More Information Needed]
|
| 223 |
-
|
| 224 |
-
## Glossary [optional]
|
| 225 |
-
|
| 226 |
-
<!-- If relevant, include terms and calculations in this section that can help readers understand the model or model card. -->
|
| 227 |
-
|
| 228 |
-
[More Information Needed]
|
| 229 |
-
|
| 230 |
-
## More Information [optional]
|
| 231 |
-
|
| 232 |
-
[More Information Needed]
|
| 233 |
-
|
| 234 |
-
## Model Card Authors [optional]
|
| 235 |
-
|
| 236 |
-
[More Information Needed]
|
| 237 |
-
|
| 238 |
-
## Model Card Contact
|
| 239 |
-
|
| 240 |
-
[More Information Needed]
|
|
|
|
| 110 |
|
| 111 |
## How to Get Started with the Model
|
| 112 |
|
| 113 |
+
To you can download directly the quantized exported program for the Ethos-U backend(`Conformer_ArmQuantizer_quant_exported_program.pt2`) and call the `to_edge_transform_and_lower` ExecuTorch API.
|
| 114 |
+
This means you don't need to train the model from scratch and you don't need to load & pre-process representative dataset for calibration. You can focus on developing the application running on device.
|
| 115 |
+
For an example end-to-end speech-to-text application running on an embedded platform, have a look at https://gitlab.arm.com/artificial-intelligence/ethos-u/ml-embedded-evaluation-kit/-/blob/experimental/executorch/docs/use_cases/asr.md
|
| 116 |
|
| 117 |
[More Information Needed]
|
| 118 |
|
|
|
|
| 121 |
### Training Data
|
| 122 |
|
| 123 |
<!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
|
| 124 |
+
We used the LibriSpeech 960h dataset. The dataset is composed of 460h of clean audio data and 500h of more noisy data. We obtain the dataset as part of the PyTorch torchaudio library.
|
| 125 |
|
|
|
|
| 126 |
|
| 127 |
### Training Procedure
|
| 128 |
|
| 129 |
<!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
|
| 130 |
+
If you want to train the Conformer model from scratch, you can do so by following the instructions in https://github.com/Arm-Examples/ML-examples/tree/main/pytorch-conformer-train-quantize/training
|
| 131 |
+
We used an AWS g5.24xlarge instance to train the NN.
|
| 132 |
|
| 133 |
#### Preprocessing [optional]
|
| 134 |
|
| 135 |
[More Information Needed]
|
| 136 |
+
We first train a tokenizer on the Librispeech dataset. The tokenizer converts labels into tokens. For example, in English, it is very common to have 's at the end of words, the tokenizer will identify that patten and have a dedicated token for the 's combination.
|
| 137 |
+
The code to obtain the tokenizer is available in https://github.com/Arm-Examples/ML-examples/blob/main/pytorch-conformer-train-quantize/training/build_sp_128_librispeech.py . The trained tokenizer is also available in the Hugging Face repository.
|
| 138 |
|
| 139 |
+
We also apply a MelSpectrogram on the input audio as per the Conformer paper - the LibriSpeech dataset contains audio recordings sampled at 16kHz. The Conformer
|
| 140 |
+
paper recommends 25ms window length, corresponding to 400 samples(16000*0.025=400) and a stride of 10ms, corresponding to 160 samples(16000*0.01). We use 80 filter banks as
|
| 141 |
+
recommended by the paper and 512 FFTs.
|
| 142 |
|
|
|
|
|
|
|
|
|
|
| 143 |
|
| 144 |
+
#### Training Hyperparameters
|
| 145 |
|
| 146 |
+
- **Training regime:** The model is trained in FP32
|
| 147 |
|
|
|
|
| 148 |
|
| 149 |
## Evaluation
|
| 150 |
|
|
|
|
| 154 |
|
| 155 |
#### Testing Data
|
| 156 |
|
| 157 |
+
We test the model on the LibriSpeech `test-clean` dataset and obtain 7% Word Error Rate.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|