Компактная нейронная сеть для устройств интернета вещей



19 января 2022 года
Юрий Изотов учится на 2 курсе в аспирантуре Физико-технического института ПетрГУ. В составе научного коллектива лаборатории он принял участие в разработке компактного алгоритма распознавания рукописных цифр базы данных MNIST на основе резервуарной нейронной сети LogNNet, также разработанной в ПетрГУ.

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

Была выдвинута гипотеза, что резервуарная нейронная сеть LogNNet может применяться на устройствах в экосистеме интернета вещей с малым объемом оперативной памяти. Как специалисту в области автоматизации и программированию микроконтроллеров передо мной стояла задача воплотить эту идею на практике и реализовать алгоритм распознавания рукописных цифр из базы MNIST на миниатюрных платах Arduino UNO и Arduino Nano IoT,

− рассказывает Юрий.

Задача заключалась в разработке алгоритма сети LogNNet на языке программирования С, в понимании распределения памяти и попытке реализовать распознавание цифр. Т.к. плата обладает ограниченным объемом памяти порядка 2 Кб, реализовать все нюансы нейронной сети является непростой задачей. Необходимо правильно распределить память между массивами, попытаться избавиться от переменных с плавающей запятой, которые занимают большой объем памяти, повторно использовать участки памяти и т.д. Но при всем этом нужно чтобы не потерялось главное – способность системы распознавать цифры на уровне точности компьютерной модели нейронной сети.

После проведенной работы алгоритм на плате Arduino UNO получился компактным, всего 62 линии исполняемого кода. В результате, на платах с объемом 2 Кб RAM удалось реализовать сеть LogNNet 784:22:10 c 22 нейронами в резервуаре, которая давала точность распознавания порядка 85% на базе MNIST.

Интересным продолжением являлась проверка работы распознавателя на реальных рукописных изображениях, которые можно рисовать на специальном дисплее для Arduino. Эта работа также была проведена и прошли успешные испытания с распознаванием,

− комментирует руководитель лаборатории по разработке электронной компонентной базы на основе микро- и наноструктур ПетрГУ доцент Андрей Величко.

Подобный алгоритм может быть установлен на широком спектре аппаратно-программных средств, например, Raspberry PI, Orange Pi, Arduino, Microduino и Femtoduino. Это позволит создать прототипы периферийных устройств, в том числе обладающих невысоким объемом RAM, выполняющих полезные функции с применением собственного искусственного интеллекта в пространстве интернета вещей.

Медиацентр ПетрГУ

 Физико-технический институт

Адрес:
Учебно-лабораторный корпус ФТИ №6 (ул. Университетская, д.10а), 231 каб.

Телефон(ы):
(814-2) 71-96-76

fti@petrsu.ru

Последние новости