Джефф Дин рекомендует: Почему будущее машинного обучения за крошечными чипами

машинное обучение искусственный интеллект глубокое обучение Нейронные сети

Редактор отдела планирования | Натали
Автор | Пит Уорден
компилировать | не знать
Править | Дебра
Руководство по передовой ИИ:Недавно Пит Уорден, инженер по глубокому обучению в команде Google TensorFlow, опубликовал сообщение в блоге, в котором подробно описал, что миниатюризация — это будущее направление приложений машинного обучения, и считает, что машинное обучение может работать на крошечных чипах с низким энергопотреблением. эффективность. Джефф Дин, глава Google Brain, также ретвитнул сообщение в блоге, подчеркнув его техническую осуществимость.

Для получения дополнительных галантерейных товаров, пожалуйста, обратите внимание на публичный аккаунт WeChat «AI Frontline» (ID: ai-front)



Вот перевод статьи Пита Уордена из AI Frontier:

Азим пригласил меня выступить с докладом на CogX и хотел, чтобы я сосредоточился на определенном моменте. Если бы это произошло несколько лет назад, я бы постарался убедить людей, что глубокое обучение — это настоящая революция, а не просто шумиха, но есть очень много примеров, которые хорошо ответили на этот вопрос. Я всегда знал ответ раньше большинства людей, не потому, что я был каким-то пророком, а потому, что у меня была возможность провести много времени, экспериментируя с этой технологией. Я уверен в ценности глубокого обучения, потому что видел его использование в самых разных сценариях, и я знаю, что единственное, что удерживает его от широкого распространения, — это скорость развертывания от исследований и разработок до производства.

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

Микрокомпьютеры не только дешевы, они распространены повсеместно

Этот рынок очень фрагментирован, поэтому получить точную статистику сложно. Но самые надежные оценки на данный момент предполагают, что в этом году будет продано более 40 миллиардов микроконтроллеров, а с учетом компонентов, интегрированных в продукты, это число может исчисляться сотнями миллиардов. Микроконтроллеры (MCU) состоят из небольшого ЦП, возможно, всего нескольких КБ ОЗУ, и встроены в бытовое, медицинское, автомобильное и промышленное оборудование. Они спроектированы так, чтобы потреблять очень мало энергии, и достаточно дешевы, чтобы их можно было встроить практически в любое устройство, а средняя цена в этом году ожидается ниже 50 центов.

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

Энергия является ограничивающим фактором

Любое устройство, зависящее от мощности, столкнется с рядом препятствий. Его можно использовать только там, где есть проводка, и даже там, где есть проводка, доступ к ней может быть затруднен по целому ряду конкретных причин, например, на заводе или в операционной. Чтобы повесить устройства с питанием в углу комнаты, требуются альтернативы, такие как шнуры питания или Power over Ethernet. Преобразователи напряжения могут быть дорогими и тратить энергию. Даже портативные устройства, такие как телефоны или ноутбуки, требуют частого использования базы для зарядки.

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

  • Дисплей может потреблять 400 мВт.

  • Активные радиомодули могут потреблять 800 мВт.

  • Bluetooth может использовать 100 мВт.

  • Акселерометр 21 мВт.

  • Гироскоп 130 мВт.

  • GPS 176 мВт.

Сам микроконтроллер может потреблять только милливатт или меньше, а периферийные устройства потребляют больше. Батарейка типа «таблетка» может обеспечить 2500 джоулей энергии, и даже одного милливатта потребляемой мощности хватит примерно на месяц. Конечно, в большинстве продуктов сегодня используются периодические паузы и спящие режимы, чтобы избежать постоянного расхода энергии, но даже в этом случае бюджет ограничен.

Процессор и датчики почти не потребляют энергии, радио и дисплей потребляют больше всего энергии

Как видно из этого набора цифр, процессоры и датчики могут снизить энергопотребление до микроваттного диапазона (такие как микросхемы машинного зрения Qualcomm Glance или даже ПЗС-матрицы или микрофоны, потребляющие всего сотни микроватт), но дисплей и радио мощность Потребляемая мощность высока, даже маломощные WIFI и Bluetooth потребляют десятки милливатт при активации. Перемещение данных также потребляет много энергии. Кажется, существует закон, согласно которому энергия, потребляемая операцией, пропорциональна расстоянию, на которое передаются биты. ЦП и датчик отправляют данные на расстоянии всего нескольких миллиметров друг от друга и стоят дешево, в то время как радио отправляет данные на расстояние в несколько метров и более и стоит дорого. Даже с технологическим прогрессом в целом, я не думаю, что эти отношения коренным образом изменятся. На самом деле хотелось бы, чтобы разрыв в стоимости между вычислительным блоком и магнитолой стал больше, потому что тогда больше возможностей снизить потребление вычислительной мощности.

Мы собираем гораздо больше данных датчиков, чем используем

Несколько лет назад я разговаривал с некоторыми инженерами, работающими над снимками с микроспутников. В основном они используют камеру, поставляемую с телефоном, которая способна снимать видео высокой четкости, но на спутнике имеется лишь небольшой объем памяти для хранения результатов и загрузки на базовые станции на Земле с ограниченной пропускной способностью каждые несколько часов. . Я понимаю, что с той же проблемой сталкиваются почти везде, где используются датчики, и даже домашние камеры ограничены беспроводными соединениями и пропускной способностью сети. У меня есть друг, у которого использование интернет-провайдера в декабре намного выше, чем в другие месяцы, из-за резкого падения коэффициента сжатия видеопотока (с большей дисперсией кадров) из-за мерцающих огней на Рождество!

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

Что это означает для машинного обучения

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

Глубокое обучение требует больших вычислительных ресурсов и может работать на существующих микроконтроллерах.

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

Это важно, потому что чтение значений из DRAM требует намного больше энергии, возможно, в тысячи раз, чем выполнение арифметических операций, поскольку DRAM физически находится дальше друг от друга, чем регистры. Устройства с низкими требованиями к памяти (десятки или сотни КБ) могут использовать SRAM или флэш-память меньшей мощности. Следовательно, приложения глубокого обучения хорошо подходят для использования микроконтроллеров, особенно при использовании 8-битных вычислений вместо вычислений с плавающей запятой, поскольку микроконтроллеры часто уже предоставляют очень подходящие инструкции, подобные DSP. Это не новая идея, Apple и Google уже запускают сети распознавания речи на таких чипах, но в мире машинного обучения или встраиваемых систем многие люди, кажется, не понимают, насколько хорошо глубокое обучение и микроконтроллеры хорошо сочетаются друг с другом. .

Глубокое обучение может быть очень энергоэффективным

Я потратил много времени на изучение пикоджоулей, потребляемых операцией, которые можно использовать как меру того, сколько энергии потребляет одна арифметическая операция. Если я знаю, сколько операций нужно выполнить данной нейронной сети один раз, я могу примерно оценить ее энергопотребление. Например, минимальная конфигурация сети классификации изображений MobileNetV2 использует 22 миллиона операций, и если бы я знал, что конкретной системе требуется 5 пикоджоулей для выполнения одной операции, это потребовало бы (5 пикоджоулей * 22 000 000=) 110 микроджоулей энергии. Если мы анализируем один кадр в секунду, требуется всего 110 микроватт, а батарейка типа «таблетка» может работать почти год. Эти цифры сопоставимы с доступными в настоящее время цифровыми сигнальными процессорами, и я хотел бы видеть дальнейшее повышение эффективности. Это означает, что затраты энергии на работу существующей нейронной сети на существующем оборудовании уже находятся в рамках бюджета постоянно работающего устройства с батарейным питанием, и, вероятно, они будут увеличиваться по мере совершенствования архитектуры модели нейронной сети и аппаратного обеспечения.

Глубокое обучение делает данные датчиков более ценными

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

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

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

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

Английский оригинал:

https://petewarden.com/2018/06/11/why-the-future-of-machine-learning-is-tiny/