Використання мікроконтролера Arduino для розпізнавання ключових слів

Вантажиться...
Ескіз

Дата

2022

Назва журналу

Номер ISSN

Назва тому

Видавець

КПІ ім. Ігоря Сікорського

Анотація

Використання нейронних мереж для розпізнавання інформації, зокрема голосу, розширює функціональні можливості вбудованих систем на мікроконтролерах. Але необхідно враховувати обмеження ресурсів мікроконтролера. Мета роботи – проаналізувати вплив параметрів обробки голосу та архітектури нейронної мережі на ступінь використання ресурсів мікроконтролера. Для цього створюється база даних зразків ключового слова, зразків інших слів і голосів, зразків шумів, оцінюється ймовірність розпізнавання ключового слова серед інших слів і шумів, залежність обсягу використовуваної пам'яті від мікроконтролера та встановлено час прийняття рішення від кількості коефіцієнтів MFC, а також встановлено залежність обсягу використаної пам’яті мікроконтролера та часу прийняття рішення від типу згорткової нейронної мережі. Під час експерименту використовувалася плата Arduino Nano 33 BLE Sense. Модель нейронної мережі була побудована та навчалась на програмній платформі Edge Impulse. Для проведення експерименту було створено три групи даних з назвами «hello», «невідомо», «шум». Група «hello» містить 94 приклади слова «hello» англійською мовою, вимовленого жіночим голосом. Група «невідомі» містить 167 прикладів інших слів, які вимовляються як жіночими, так і чоловічими голосами. Група «шум» містить 166 зразків шуму і випадкових звуків. Згідно з рекомендацією Edge Impulse, 80% зразків з кожної з груп даних використовувалися для навчання моделі нейронної мережі, а 20% зразків використовувалися для тестування. Аналіз результатів показує, що зі збільшенням кількості коефіцієнтів MFC і, відповідно, точності розпізнавання ключових слів, обсяг програмної пам’яті, зайнятої кодом, збільшується на 480 байт (менше 1%). Для мікроконтролера nRF52840 це не є значним збільшенням. Обсяг використовуваної оперативної пам'яті під час експерименту не змінився. Хоча час розрахунку точності визначення кодового слова збільшився лише на 14 мс (менше 5%) із збільшенням кількості коефіцієнтів MFC, процедура розрахунку досить тривала (приблизно 0,3 с) у порівнянні з довжиною звукової вибірки. 1 с. Це може бути певним обмеженням при обробці звукового сигналу 32-розрядними мікроконтролерами. Для аналізу фраз або речень необхідно використовувати більш потужні мікроконтролери або мікропроцесори. За результатами експериментальних досліджень можна стверджувати, що обчислювальних ресурсів 32-розрядних мікроконтролерів цілком достатньо для розпізнавання голосових команд з можливістю попередньої цифрової обробки звукового сигналу, зокрема використання низькочастотних кепстральних коефіцієнтів. Вибір числа коефіцієнтів суттєво не впливає на обсяг використовуваної FLASH і RAM пам'яті мікроконтролера nRF52840. Результати порівняння показують перевагу 2D мережі в точності визначення ключового слова як для 12, так і для 13 коефіцієнтів MFC. Використання одновимірної згорткової нейронної мережі для розпізнавання зразків голосу в проведеному експерименті забезпечує економію пам’яті приблизно на 5%. Якість розпізнавання ключового слова з числом коефіцієнтів MFC 12 становить приблизно 0,7. Для 17 коефіцієнтів MFC якість розпізнавання становить уже 0,97. Обсяг використовуваної оперативної пам'яті у випадку 2D мережі трохи зменшився. Час обробки вибірки голосу для обох типів мереж практично однаковий. Таким чином, одновимірні згорткові нейронні мережі мають певні переваги в додатках мікроконтролерів для обробки та розпізнавання голосу. Обмеженням розпізнавання голосу на мікроконтролері є досить великий час обробки звукового відліку (приблизно 0,3 с) при тривалості самого відліку 1 с, це можна пояснити досить низькою тактовою частотою 64 МГц. Збільшення тактової частоти зменшить час обчислення.

Опис

Ключові слова

мікроконтролери, мел-частотні кепстральні коефіцієнти, згорткові нейронні мережі, розпізнавання голосу, microcontrollers, mel-frequency cepstral coefficients, convolutional neural networks, voice recognition

Бібліографічний опис

Рижова, А. Р. Використання мікроконтролера Arduino для розпізнавання ключових слів : магістерська дис. : 171 Електроніка / Рижова Анна Романівна. – Київ, 2022. – 92 с.

DOI