Skip to content

Применение функционала библиотеки моделирования импульсных нейронных сетей Norse для задачи распознавания речи.

Notifications You must be signed in to change notification settings

DenisMihailapov/Norse-ASR

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 

Repository files navigation

Обработка речевых сигналов импульсными нейронными сетями

NSU Logo MMF NSU Logo

Новосибирский государственный университет, Механико-математический факультет, Кафедра вычислительных систем.

Аннотация

Студент: Михайлапов Денис Иванович

Научный руководитель: Тарков Михаил Сергеевич, к.т.н, дочент, с.н.с, ИФПП СО РАН

Выпускная квалификационная работа посвящена исследованию распознавания речевых сигналов импульсными нейронными сетями. Принципиальным отличием данных сетей от классических нейронных сетей, является кодирование информации в виде интервалов между импульсами. Данных подход обеспечивает более высокую энергоэффективность и надёжность данной нейронной сети при аппаратной реализации.

В работе было проведено моделирование свёрточной импульсной нейронной сети с использованием языка программирования Pуthon и новой библиотеки машинного обучения Norse, исследована точность распознавания речевых сигналов на пяти различных наборах данных. Также было проведено квантование весов нейронной сети и исследована зависимость качества работы сети в зависимости от уровня квантования.

В работе приведены графики и таблицы. Исходный код с проведёнными экспериментами выложен на Github.

Краткое описание работы

В качестве языка программирования используется язык Python. Мы заранее перевели аудиозаписи всех наборов данных в спектрограммы с помощью библиотеки matplotlib и сохранили их в виде отдельных папок с изображениями. Затем эти спектрограммы, посредством функционала Norse, переводятся в двумерные импульсные последовательности и подаются на вход сети (см. код класса SCNN). В конце мы оцениваем работу сети. Также мы исследуем поведение точности модели при квантовании весовых коэффициентов. Исходный код метода квантования можно найти во всех ноутбуках, а также отдельно в файле Quant.py из папки Utils. Заметим, что данный метод отличается от метода квантования модели приведённом в torch.quantization.

Описание репозитория

В данном репозиторий находятся численные эксперименты применения функционала библиотеки моделирования импульсных нейронных сетей Norse, написанный на основе библиотеки глубокого машинного обучения PyTorch, для задачи распознавания речи.

В папке Notebook собраны все ноутбуки с чиленными экспериментами. Каждый ноутбук подписан в соответствии с распознаваемым набором данных.

В папке Utils собран исходный код утилит, написанных в ходе работы:

  • AudioLoader.py -- утилита для работы с аудиофайлами.
  • SpikeUtils.py -- утилита для работы со спайковыми последовотельностями (почти не использовалась).
  • Quant.py -- код метода квантования весов модели.

Данные на Google drive

По следующим ссылкам можно получить доступ ко всем сохранённым моделям Google Drive with all image data и к папкам со спектрограммами Google Drive with all image data

Текст работы

На данный момент мы не можем дать ссылку на текст работы.


2021г

About

Применение функционала библиотеки моделирования импульсных нейронных сетей Norse для задачи распознавания речи.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published