Алгоритм Bonsai позволяет применять методы машинного обучения на аппаратной платформе Arduino с объемом памяти 2 КБ


Раньше машинное обучение выполнялось в облаке, затем часть полученных выводов перемещалась на граничное устройство, и мы даже видели, что микроконтроллеры способны распознавать изображения с помощью микроконтроллера GAP8 RISC-V .

Но, не так давно мы столкнулись с техническим документом «Ресурсоэффективное машинное обучение на устройствах с 2 КБ оперативной памяти для Интернета вещей», в котором показано, как можно выполнять такие задачи с очень небольшим количеством ресурсов.

Сравнение алгоритма Bonsai с другими алгоритмами

Вот выдержка:

В этом документе разработан новый алгоритм на основе дерева, называемый Bonsai, для эффективного прогнозирования на устройствах IoT, например, на базе платы Arduino Uno, имеющей 8-битный микроконтроллер ATmega328P, работающий на частоте 16 МГц, без встроенной поддержки с плавающей запятой, 2 КБ ОЗУ и 32 КБ флэш-памяти только для чтения.  Bonsai поддерживает точность прогнозирования, сводя к минимуму размер модели и затраты на прогнозирование путем: (а) разработки модели дерева, которая изучает одно, мелкое, разреженное дерево с мощными узлами; (б) редкого проецирование всех данных в низкоразмерное пространство, в котором изучается дерево; и (c) совместное изучение всех параметров дерева и проекции. Экспериментальные результаты на нескольких тестовых наборах данных демонстрируют, что Bonsai может делать прогнозы в миллисекундах даже на медленных микроконтроллерах, может поместиться в КБ памяти, имеет более низкое потребление батареи, чем все другие алгоритмы, при достижении точности прогнозирования, которая может быть на 30% выше, чем у других современных методов ресурсосберегающего машинного обучения. Также показано, Bonsai обобщает другие ограниченные ресурсами параметры за пределами IoT, создавая значительно лучшие результаты поиска по сравнению с рядовым Bing L3, когда размер модели ограничен 300 байтами.

Исследователи протестировали его как на Arduino Uno (доступно 2 КБ RAM), так и на BBC Micro:bit (доступно 16 КБ RAM). Обучение осуществляется на ноутбуке или в облаке, затем вы загружаете результаты на плату для разработки, которая сама может делать вывод без внешней помощи. Они сравнивают его с другим алгоритмом, который занимает несколько мегабайт вместо двух килобайт для аналогичного алгоритма, а в некоторых случаях даже с меньшей точностью. Потребляемая мощность алгоритма Bonsai также значительно ниже. Вы найдете все детали, в том числе математическую формулу алгоритма в техническом документе, указанному во вступлении. Исходный код можно найти на  Github, где так же указано, что проект был выполнен Microsoft Research India.

Выражаем свою благодарность источнику с которого взята и переведена статья, сайту cnx-software.com.

Оригинал статьи вы можете прочитать здесь.

Комментарии:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.