Mémoire de maîtrise (2020)
Document en libre accès dans PolyPublie |
|
Libre accès au plein texte de ce document Conditions d'utilisation: Tous droits réservés Télécharger (2MB) |
Résumé
Le repérage de mots clés est une sous-tâche de la reconnaissance vocale qui a pour but de détecter des mots spécifiques dans un fil audio continu. Ce genre de tâche est généralement utilisé par des assistants vocaux ou des appareils de domotique afin d'effectuer des actions telles qu'allumer des lumières. Puisque cette tâche doit fonctionner en temps réel, elle roule généralement de façon locale sur des systèmes embarqués tels que des microcontrôleurs. Depuis quelques années, on a commencé à utiliser des Réseaux de Neurones (RdN) pour effectuer du repérage de mots. Toutefois, les RdN requièrent beaucoup de calculs et d'espace destockage. Afin de réduire les coûts en calculs des RdN, beaucoup de systèmes emploient de la quantification. La binarisation, qui est une forme draconienne de la quantification, a déjà été utilisée pour des tâches de reconnaissance vocale complexes, mais pas pour du repérage de mots clés. Dans ce travail, nous évaluons l'utilisation des RdN binaires appliqués sur une tâche de repérage de 10 mots. Les systèmes de reconnaissance vocale conventionnels utilisent le spectrogramme de Mel ou les MFCCs (Mel-Frequency Cepstral Coefficients) pour représenter le son. Afin de s'adapter au RdN binaires, nous proposons une nouvelle façon de modéliser l'audio qui mesure la variation de la puissance dans le temps. Cette représentation est composée de valeurs binaires et offre des résultats de classification supérieurs lorsque testée sur un RdN binaire (comparativement au spectrogramme de Mel). Le RdN binaire utilisé pour évaluer les performances de cette représentation était inspiré de l'architecture ResNet. Sur ce réseau, l'utilisation de la représentation binaire a amélioré la précision de la classification de 1.7%. En considérant l'objectif de trouver une implémentation matérielle efficace et à basse puissance de RdN pour du repérage de mots clés, nous concluons que les microcontrôleurs ne sont pas de bons candidats pour de la binarisation. Ce type de système embarqué est optimisé pour des opérations s'effectuant sur des valeurs entières de un ou plusieurs octets. Puisque les FPGA peuvent facilement gérer des opérations binaires, une deuxième approche qui utilise ces systèmes a été proposée. Pour ce faire, une heuristique nommée PoET-BiN a été employée. Cette heuristique remplace les couches d'un RdN avec des opérations à base de tables de vérité (LUT). Toutefois, PoET-BiN n'a jamais été validé sur des couches convolutionnelles. Après avoir appliqué cette heuristique sur un réseau binaire convolutionnel, la précision de la classification a diminué de façon considérable. En somme, ces approches ne semblent pas être suffisantes pour exploiter le plein potentiel des réseaux binaires sur ce type de tâche. Il faudrait creuser d'avantage.
Abstract
Keyword Spotting (KWS) is a machine learning task which attempts to detect a small set of words within an audio stream. This type of task is typically used for voice activation of virtual personal assistant so rindomotic devices to perform simpleactions like turning on the lights. Because of low-latency requirements, KWS usually runs on the edge (smartphones, microcontrollers,etc). Inrecentyears,DeepNeuralNetworks(DNNs)havebeenusedforthis type of task. However, DNNs require many multiply-add operations and storage space. To reduce the computational costs of DNNs, quantization has often been used. Binarization, an extreme form of quantization, has previously been applied to larger speech recognition tasks, but not to KWS. In this work, we evaluate the use of Binarized Neural Networks (BNNs) on a 10-word KWS task. Traditional voice recognition systems used log-Mel spectrograms or Mel-Frequency Cepstral Coefficients (MFCCs) to represent speech. A new way to extract features which uses binary features is proposed. The representation computes the variation of power over time and is bettersuitedforBNNs. Overall,using this representationonafully-binarizedneuralnetwork offereda1.7%higherclassificationaccuracycomparedtothetraditionallog-Melspectrogram. The BNN used to test the representation was inspired by the ResNet architecture. With the objective of finding a precise and hardware efficient implementation of BNNs for KWS, we conclude that binarization is not optimal for current microcontrollers since the hardware is optimized for byte-sized information. In contrast, with the currently existing hardware, FPGAs might be a better fit. To test this, PoET-BiN, a heuristic which maps neural network layers to FPGA Look-Up Tables (LUTs) was used. However, PoET-BiN was never validated on convolutional layers. Applying this heuristic to a binary convolutional network considerably affected the classification accuracy. Overall, the proposed approaches were not enough to exploit the full potential of BNNs for keyword spotting. Future works should seek to optimize these methods.
Département: | Département de génie électrique |
---|---|
Programme: | génie électrique |
Directeurs ou directrices: | Jean Pierre David |
URL de PolyPublie: | https://publications.polymtl.ca/5449/ |
Université/École: | Polytechnique Montréal |
Date du dépôt: | 10 nov. 2020 10:55 |
Dernière modification: | 26 sept. 2024 09:22 |
Citer en APA 7: | Riviello, A. (2020). Binary Neural Networks for Keyword Spotting Tasks [Mémoire de maîtrise, Polytechnique Montréal]. PolyPublie. https://publications.polymtl.ca/5449/ |
---|---|
Statistiques
Total des téléchargements à partir de PolyPublie
Téléchargements par année
Provenance des téléchargements