Есть много практиков машинного обучения, которые не имеют опыта работы со встроенной платформой. С другой стороны, разработчики встраиваемых систем также могут быть незнакомы с алгоритмами машинного обучения. Но зачем вам доводить ML до микроконтроллера типа Arduino Nano Clock 64 MHz, Flash 1 MB, RAM 256 KB.

Почему мы должны запускать ML на микроконтроллерах?

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

Вот некоторые из практических причин:

  • Доступность. Пользователи хотят, чтобы смарт-устройства быстро реагировали на местные условия. Кроме того, следует учитывать все рыночные сценарии, такие как размер, доступность подключения к Интернету и многое другое.
  • Стоимость. Устройство должно быть в рамках минимального бюджета и соответствовать всем требованиям.
  • Эффективность – время автономной работы, функциональные возможности, дальность действия, надежность и, самое главное, размер устройства. Если вы бежите за этим, Arduino Nano прикроет это для вас.
  • Конфиденциальность — Arduino заботится о ваших данных и принимает меры предосторожности, чтобы ваши данные были в надежных руках.

TensorFlow Lite Micro теперь можно использовать с Arduino Nano 33 BLE Sense. Это было долгожданное объявление для всех любителей микроконтроллеров.

Он не требует поддержки операционной системы, каких-либо стандартных библиотек C или C++ или динамического выделения памяти. Основная среда выполнения умещается в 16 КБ на Arm Cortex M3, а с достаточным количеством операторов для запуска модели обнаружения речевых ключевых слов занимает в общей сложности 22 КБ.

Примеры логического вывода для TensorFlow Lite для микроконтроллеров теперь упакованы и доступны через диспетчер библиотек Arduino. Теперь мы можем легко запустить их на Arduino в несколько кликов. В этом разделе мы покажем вам, как их запускать. Вот примеры:

  • micro_speech — распознавание речи с помощью встроенного микрофона
  • magic_wand — распознавание жестов с помощью встроенного IMU
  • person_detection — обнаружение человека с помощью внешней камеры ArduCam

Для получения дополнительной информации о примерах вы можете взглянуть на источник в репозитории TensorFlow.

TensorFlow Lite для микроконтроллеров разработан с учетом конкретных ограничений разработки микроконтроллеров. Если вы работаете с более мощными устройствами (например, со встроенным устройством Linux, таким как Raspberry Pi), стандартная платформа TensorFlow Lite может быть проще для интеграции и более полезна.

TensorFlow Lite для микроконтроллеров — это экспериментальный порт TensorFlow Lite, предназначенный для запуска моделей машинного обучения на микроконтроллерах и других устройствах с объемом памяти всего в килобайтах. Так,

Следует учитывать следующие ограничения:

  • Доступна поддержка ограниченного подмножества операций TensorFlow (по сравнению со стандартным фреймворком).
  • Поддержка ограниченного набора устройств (все платы Arduino также не поддерживаются до настоящего времени)
  • Низкоуровневый C++ API, требующий ручного управления памятью (если вы разработчик Python, это может оказаться самой сложной задачей)

Сделать TensorFlow Lite для микроконтроллеров доступным в среде Arduino — это большое дело, и, поскольку доступность большего количества предварительно обученных моделей будет огромным изменением в доступности машинного обучения на развивающемся рынке периферийных вычислений. Попробую запустить некоторые модели на Arduino и поделюсь опытом.

Расскажите мне о своем опыте, если вы уже работали с этими инструментами.

Примечание от AI In Plain English

Мы всегда заинтересованы в помощи в продвижении качественного контента. Если у вас есть статья, которую вы хотели бы отправить в какое-либо из наших изданий, отправьте нам электронное письмо по адресу [email protected], указав свое имя пользователя на Medium, и мы добавим вас в качестве автора.