Помогают защитить Большой Барьерный Риф с TensorFlow на Kaggle Присоединяйтесь вызов

TensorFlow Lite для микроконтроллеров

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

Почему микроконтроллеры важны

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

Поддерживаемые платформы

TensorFlow Lite для микроконтроллеров написан на C ++ 11 и требует 32-битной платформы. Он был протестирован с большим количеством процессоров , на основе ARM Cortex-M Series архитектуры, и она была портирована на другие архитектуры , в том числе ESP32 . Фреймворк доступен в виде библиотеки Arduino. Он также может создавать проекты для сред разработки, таких как Mbed. Он имеет открытый исходный код и может быть включен в любой проект C ++ 11.

Поддерживаются следующие платы разработки:

Изучите примеры

Каждый пример приложения на Github и имеет README.md файл , который объясняет , как он может быть развернут на поддерживаемых платформах. В некоторых примерах также есть сквозные учебные пособия с использованием конкретной платформы, как показано ниже:

Рабочий процесс

Для развертывания и запуска модели TensorFlow на микроконтроллере требуются следующие шаги:

  1. Поезд модели:
  2. Запуск вывода на устройстве с помощью C ++ библиотеки и обрабатывать результаты.

Ограничения

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

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

  • Поддержка для ограниченного подмножества операций TensorFlow
  • Поддержка ограниченного набора устройств
  • Низкоуровневый C ++ API, требующий ручного управления памятью
  • Обучение на устройстве не поддерживается

Следующие шаги