Инженерная группа стремится подтолкнуть ИИ мощностью 1 мВт к краю
Когда группа TinyML недавно провела свое первое собрание, ее участники должны были решить ряд фундаментальных вопросов, начиная с:Что такое TinyML?
TinyML - это сообщество инженеров, сосредоточенных на том, как лучше всего реализовать машинное обучение (ML) в системах со сверхнизким энергопотреблением. Первая из их ежемесячных встреч была посвящена определению проблемы. Возможно ли машинное обучение для устройств с низким энергопотреблением, таких как микроконтроллеры? И нужны ли специализированные процессоры машинного обучения со сверхнизким энергопотреблением?
Евгений Гусев из Qualcomm AI Research определил TinyML как подходы машинного обучения (ML), которые потребляют 1 мВт или ниже. Гусев сказал, что 1 мВт - это «магическое число» для постоянно включенных приложений на смартфонах.
«Об облачном машинном обучении много говорят, в то время как машинное обучение на уровне смартфонов становится все более и более сложным», - сказал он. «Но если вы посмотрите на данные, 90 процентов данных находятся в реальном мире. Как подключить все эти камеры, IMU и другие датчики и выполнить машинное обучение на этом уровне? »
«Tiny ML будет большим, и существует реальная, острая необходимость управлять всей экосистемой крошечного ML, включая приложения, программное обеспечение, инструменты, алгоритмы, оборудование, ASIC, устройства, фабрики и все остальное», - сказал Гусев. .
Инженер Google Нат Джеффрис представляет на первой встрече TinyML (Изображение:TinyML)
TensorFlow Lite
Инженер Google Даниэль Ситунайке представил обзор TensorFlow Lite, версии платформы Google TensorFlow, разработанной для периферийных устройств, включая микроконтроллеры.
«TensorFlow Lite был нацелен на мобильные телефоны, но мы рады запускать его на все меньших устройствах», - сказал он.
После построения модели в TensorFlow инженеры могут запустить ее через конвертер Tensor Flow Lite, который «делает ее меньше и выполняет такие вещи, как квантование, что позволяет уменьшить размер и точность модели до такого масштаба, в котором она будет удобно размещаться. на устройстве, на которое вы нацеливаетесь », - сказал он.
Ситунаяке описал один метод, который можно использовать для повышения энергоэффективности, который включает объединение моделей в цепочку.
«Представьте себе каскадную модель классификаторов, в которой у вас есть модель с действительно низким энергопотреблением, почти не использующая мощность для обнаружения звука, а затем другая модель, требующая больше энергии для работы, которая выясняет, человеческая речь это или нет», он объяснил. «Затем более глубокая сеть, которая просыпается только при выполнении этих условий, которая потребляет больше энергии и ресурсов. Объединив их в цепочку, вы будите только [энергоемкий], когда вам это нужно, так что вы можете значительно сэкономить на энергоэффективности ».
Каскадные модели машинного обучения могут помочь сэкономить электроэнергию (Изображение:Google)
Нат Джефферис, инженер группы Google «TensorFlow Lite для микроконтроллеров», описал тенденцию к строгим требованиям к энергопотреблению в современных потребительских гаджетах, несмотря на сложные функции и сложные сенсорные системы. Эти устройства могут работать от батарей, которых должно хватить на месяцы или годы, или использовать сбор энергии.
«Мы считаем, что лучшим решением для этого является Tiny ML - глубокое обучение на микроконтроллерах», - сказал он. «Это позволяет нам выполнять циклы ЦП и считывания датчиков, которые [не требуют много энергии], в отличие от отправки всей информации за пределы кристалла ... TinyML можно использовать для сжатия данных датчика всего в несколько байтов, которые вы можете затем можно послать… лишь за малую часть мощности », - сказал он.
Недавний вызов Google, когда участники разработали модели объемом 250 Кбайт для обнаружения людей, получил множество впечатляющих заявок, и «подтверждает, что то, что мы делаем, имеет смысл», - сказал Джеффрис.
«В настоящее время мы можем уменьшить модели TensorFlow до такой степени, чтобы мы могли разместить их на микроконтроллерах, и поэтому сейчас отличное время для этого», - сказал он. «Мы очень рады начать этот процесс».
Дорожная карта Google для TensorFlow Lite на микроконтроллерах включает в себя открытый исходный код некоторых демонстраций Google, работу с поставщиками микросхем для оптимизации ядер, оптимизацию использования памяти TensorFlow Lite для запуска более сложных моделей на одних и тех же устройствах и включение большего количества платформ разработки (SparkFun Edge - единственный плата пока поддерживается, но скоро появится поддержка плат Arduino и Mbed).
Специальные устройства
Вице-президент по развитию бизнеса GreenWaves Technologies Мартин Крум представил аргументы в пользу специализированных процессоров приложений с низким энергопотреблением для машинного обучения. Крум согласился, что отраслевое обсуждение того, как продолжить использование машинного обучения со сверхнизким энергопотреблением, давно назрело.
«Мы отчаянно нуждаемся в большем внимании в этой области, как с алгоритмической точки зрения, так и с точки зрения нашего [аппаратного] мира», - сказал он.
GreenWaves разработала прикладной процессор RISC-V, GAP8, который ориентирован на логический вывод в периферийных устройствах, потребляющих милливаттную мощность и обеспечивающих сверхнизкие токи в режиме ожидания. Компания нацелена на устройства с батарейным питанием, а также на устройства, использующие сбор энергии (подробнее о том, как работает чип GreenWaves, читайте в нашей предыдущей статье).
Ускоритель машинного обучения со сверхнизким энергопотреблением GreenWaves имеет девять ядер RISC-V (Изображение:GreenWaves Technologies)
Для снижения энергопотребления используются различные методы. Это включает в себя распараллеливание, но не для ускорения работы; Используется 8 ядер, чтобы обеспечить более низкую тактовую частоту, что позволяет снизить напряжение ядра, что экономит энергию (на практике тактовая частота регулируется динамически, в зависимости от рабочей нагрузки).
Чип ориентирован на сверточные нейронные сети (CNN) с аппаратным ускорителем, выполняющим свертку 5 × 5 для 16-битных данных за один тактовый цикл (не включая обратную запись). Явное управление памятью зависит от природы CNN, которые широко используются для обработки изображений; датчики изображения имеют фиксированный размер, для вывода требуется одинаковое количество весов, и результат всегда будет одного и того же размера. Таким образом, инструмент может генерировать код для всего перемещения данных во время компиляции.
Крум признал, что достаточно специализироваться, чтобы эффективно обрабатывать рабочие нагрузки машинного обучения, сохраняя при этом достаточную гибкость, чтобы реагировать на достижения в области технологий, - это сложный баланс.
«Возможности ИИ развиваются невероятно быстро. Сегодняшняя отличная идея о том, как что-то делать, вероятно, не то, что будет хорошей идеей завтрашнего дня », - сказал Крум. «Если мы будем слишком сильно специализироваться, то сможем быстро ускорить то, что все делали в прошлом году, что нехорошо для компании. Поэтому мы пытаемся сбалансировать разницу между гибкостью, программируемостью и ускорением ».
По словам Крума, чип GreenWaves находится на отборе образцов в течение года, производство начнется в этом месяце, а массовые поставки чипа потребителям начнутся к концу третьего квартала.
Встречи TinyML проводятся в последний четверг каждого месяца в районе залива и открыты для участников как из промышленности, так и из академических кругов.
Интернет вещей
- Вывод сетей на основе намерений на крайнюю границу Интернета вещей
- Периферийные вычисления:архитектура будущего
- Гиперконвергенция и вычисления на краю:часть 3
- Ощутимые преимущества VR в инженерной сфере
- Тенденции продолжают продвигать обработку до края для ИИ
- Edge теперь в центре событий
- Необходимость открытого исходного кода на периферии (электронная книга)
- Автомобилестроение на грани
- Как Intelligent Edge меняет мир вычислений
- 6 типов организаций, которые возглавят революцию в области периферийных вычислений