other

TinyML — ИИ на устройствах

TinyML — машинное обучение прямо на микроконтроллерах: распознавание сигналов, предиктивная диагностика и ИИ без облака. Разрабатываем TinyML-решения под ключ: от данных до прошивки.

Что такое TinyML

TinyML (Tiny Machine Learning) — это запуск моделей машинного обучения прямо на микроконтроллерах и других маломощных устройствах. Модель работает на самом устройстве, без облака и интернета: с минимальным энергопотреблением, мгновенным откликом и без передачи данных наружу. Если обычный ИИ требует серверов и GPU, то TinyML умещает нейросеть в несколько десятков-сотен килобайт памяти микроконтроллера.

Почему TinyML — это важно

  • Работает офлайн: не нужен интернет и облако — решение работает в поле, на производстве, в шахте, в лесу.
  • Приватность: данные не покидают устройство. Это критично для персональных данных и 152-ФЗ.
  • Низкое энергопотребление: автономные устройства живут месяцами и годами на одной батарейке.
  • Мгновенный отклик: задержки в миллисекундах вместо сотен миллисекунд до облака.
  • Экономия: нет расходов на передачу данных и облачные вычисления.

Чем TinyML отличается от обычного ML и Edge AI

Обычный ML работает на серверах и GPU, требует постоянной связи и больших ресурсов. Edge AI — вычисления на более мощных устройствах (одноплатные компьютеры, шлюзы, камеры). TinyML — самый низкий уровень: микроконтроллеры с килобайтами памяти, работающие от батареи. TinyML — это Edge AI в его предельной форме.

Как работает TinyML: полный пайплайн

  1. Сбор данных. Датчики (акселерометр, микрофон, токовые клещи, камера) собирают сырые сигналы.
  2. Подготовка и признаки. Сигналы очищаются, нарезаются на окна, из них извлекаются признаки (MFCC для звука, спектр для вибрации и т.д.).
  3. Обучение модели. Модель обучается на мощном компьютере — обычно это компактная архитектура (маленькая CNN, DSCNN, дерево решений).
  4. Оптимизация. Квантизация, pruning и distillation уменьшают модель до десятков-сотен килобайт без потери точности.
  5. Конвертация. Модель переводится в формат TensorFlow Lite for Microcontrollers или ONNX.
  6. Деплой в прошивку. Модель встраивается в код микроконтроллера (C/C++), часто как статический массив байтов.
  7. Инференс на устройстве. Устройство делает предсказания локально и реагирует: включает реле, отправляет событие, подаёт сигнал.
  8. Мониторинг и обновления. Точность отслеживается, модель обновляется по воздуху (OTA).

Аппаратные платформы

  • ESP32 / ESP32-S3 — Wi-Fi/BLE и достаточная память для TinyML.
  • STM32 — промышленный стандарт, богатая периферия, оптимизация CMSIS-NN.
  • Nordic nRF52 / nRF53 — энергоэффективные BLE-платформы.
  • Arduino Nano 33 BLE Sense — встроенные датчики, удобно для прототипов.
  • Raspberry Pi Pico — бюджетная платформа на RP2040.
  • Sony Spresense — многоканальный звук и камера для edge-задач.

Фреймворки и инструменты

  • TensorFlow Lite for Microcontrollers — основной стандарт TinyML.
  • Edge Impulse — платформа для быстрого прототипирования.
  • CMSIS-NN — оптимизированные ядра для ARM Cortex-M.
  • microTVM и ONNX Runtime — альтернативные рантаймы.
  • Arduino и PlatformIO — сборка и прошивка устройств.

Ограничения микроконтроллеров

  • Память: обычно 64–512 КБ RAM и 512 КБ – 2 МБ flash.
  • Процессор: десятки-сотни МГц, часто без FPU или с ограниченным.
  • Энергия: питание от батареи, важен каждый миллиампер.
  • Отсутствие ОС: инференс должен быть детерминированным и быстрым.

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

  • Квантизация — переход с 32-битных чисел на 8-битные: модель уменьшается в 4 раза.
  • Pruning — удаление незначимых связей и нейронов.
  • Knowledge distillation — обучение маленькой модели по большой.
  • Выбор архитектуры — компактные CNN, DSCNN, деревья решений вместо тяжёлых сетей.
  • Оптимизация признаков — вычисление признаков на устройстве дешевле, чем гонять сырые данные.

Сценарии применения TinyML

Предиктивное обслуживание оборудования

Датчики вибрации и тока на станке, насосе или двигателе. TinyML-модель на устройстве выявляет аномалии и предсказывает поломку до остановки производства — без облака и проводов.

Распознавание звуков и ключевых слов

Keyword spotting, детекция стекла, выстрелов, неисправностей по звуку. Микрофон и микроконтроллер распознают событие локально и мгновенно.

Распознавание жестов и движения

Акселерометр и гироскоп на носимых устройствах распознают жесты, падения и активность — всё считается на устройстве.

Компьютерное зрение на edge

Классификация изображений и детекция объектов на маломощных камерах для контроля качества, подсчёта и безопасности.

Аномалии в промышленности

Отклонения в телеметрии, температуре, давлении. Модель на устройстве фиксирует проблему сразу, а не после передачи в облако.

Умный дом и носимые устройства

Локальное распознавание сценариев, присутствия и активности — быстро, приватно и без интернета.

Сельское хозяйство и мониторинг

Автономные датчики в поле распознают состояние растений и почвы, работая месяцами от батареи.

Примеры задач TinyML

  • Keyword spotting и голосовые команды без облака.
  • Детекция аномалий вибрации и тока оборудования.
  • Распознавание жестов по IMU-датчикам.
  • Классификация звуков: стекло, поломка, животные.
  • Распознавание присутствия и активности.
  • Контроль качества по изображению на edge.

Как мы внедряем TinyML

  1. Постановка задачи. Определяем, что именно нужно распознавать и где будет работать устройство.
  2. Сбор и разметка данных. Собираем датасет на реальных датчиках и в реальных условиях.
  3. Прототип модели. Обучаем компактную модель на компьютере и проверяем точность.
  4. Оптимизация под железо. Квантизация и сжатие модели под память и энергопотребление.
  5. Деплой в прошивку. Встраиваем модель в микроконтроллер и настраиваем инференс.
  6. Полевые тесты. Проверяем в реальных условиях, устраняем шумы и дрейф датчиков.
  7. Поддержка. Обновляем модель и следим за точностью.

Стоимость и сроки

  • Прототип TinyML — от 3 недель.
  • TinyML в устройстве с прошивкой — от 1,5 месяцев.
  • Промышленное решение с предиктивным обслуживанием — от 2,5 месяцев.

Стоимость зависит от объёма данных, сложности задачи и требований к железу. Подробнее — в услуге разработки ПО для умных домов и микроконтроллеров.

Часто задаваемые вопросы

Что такое TinyML простыми словами?

TinyML — это когда нейросеть работает прямо на маленьком микроконтроллере, а не на сервере. Устройство само распознаёт сигналы и принимает решения без интернета.

Чем TinyML отличается от обычного машинного обучения?

Обычный ML работает на мощных серверах и GPU, а TinyML — на микроконтроллерах с килобайтами памяти и батарейным питанием. Модели специально сжимают и оптимизируют.

Нужен ли интернет для TinyML?

Нет. Вся обработка идёт на устройстве. Интернет может понадобиться только для обновления модели или передачи уже готовых результатов.

Какие модели можно запускать на микроконтроллере?

Компактные: небольшие CNN, DSCNN, деревья решений, регрессии. Чаще всего — задачи классификации сигналов: звук, вибрация, движение, изображения низкого разрешения.

Насколько точным может быть TinyML?

При правильном датасете и оптимизации точность близка к серверным моделям: квантизация обычно теряет 1–2% точности, что для большинства задач не критично.

Сколько энергии потребляет TinyML?

Некоторые модели работают от батарейки месяцами и годами: инференс занимает миллисекунды, а устройство большую часть времени спит.

Какие платформы вы используете?

ESP32, STM32, Nordic nRF, Arduino Nano 33 BLE Sense, Raspberry Pi Pico и Sony Spresense. Платформу подбираем под задачу и бюджет.

Можно ли обновлять модель на устройстве?

Да, по воздуху (OTA): мы предусматриваем безопасное обновление модели и прошивки без физического доступа к устройству.

Начнём с вашей задачи

Расскажите, что нужно распознавать и на каком железе — мы оценим задачу, соберём датасет и запустим прототип TinyML. Напишите нам.

Использовать эту технологию
>_