С одной стороны, мне повезло, что я родился там и тогда, когда я был, а это было в Шеффилде, Йоркшир (графство Бога), Англия, в 1957 году. Благодаря моей удаче я смог лично увидеть 1960-е, хотя и глазами молодого парня. Мне также довелось увидеть самый первый эпизод Доктора Кто в 1963 году, первые люди высадились на Луну в 1969 году, первые домашние компьютеры на базе микропроцессоров в 1970-х годах, первый ПК IBM в 1981 году, а также появление Интернета и Всемирная паутина для широкой публики в 1993 году.

В этом году мне будет 63 года, а это значит, что я буду праздновать 21-ю годовщину своего 21-го дня рождения, и это не то, о чем можно говорить слишком часто. Конечно, поскольку всегда приятно иметь что-то с нетерпением, я буду отмечать свой 100-летний юбилей в следующем году, если считать в восьмеричной системе счисления (основание 8).

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

Нам приходилось создавать наши программы на ФОРТРАНЕ, записывать их на перфокарты и вручную переносить колоду карт к хранителям машины, чтобы добавить их в расписание выполнения в неопределенное время в будущем. Типичный цикл отладки («Отсутствует запятая в строке 2») занимал неделю, поэтому лучшее, на что мы могли надеяться, - это заставить работать одну простую программу каждый семестр. Создать программу DSP было бы просто невозможно, даже если бы студенты (или преподаватели) имели представление о том, что означает аббревиатура DSP.

Совсем недавно я наблюдал рост искусственного интеллекта (AI), машинного обучения (ML) и глубокого обучения (DL) (см. Также Что такое часто задаваемые вопросы AI, ANN, ML, DL и DNN?). Меня поражает то, что я слышу о высокопроизводительных облачных системах искусственного интеллекта, созданных с помощью таких инструментов, как Google TensorFlow. Я также был поражен приложениями искусственного интеллекта машинного зрения, которые могут выполнять обнаружение и распознавание объектов. В дополнение к таким вещам, как распознавание лиц, некоторые системы могут определять возраст, пол и эмоции (Существует 98% вероятность, что 25-летний мужчина недоволен тем, что я смотрю на него!)

Мне также было интересно наблюдать за появлением новых компаний и устройств, которые особенно нацелены на приложения AI. Буквально пару недель назад, например, из стелс-режима вышел новый фирменный абонент Perceive. Сотрудники Perceive утверждают, что заново изобрели математику нейронных сетей, используя теорию информации, и создали чип под названием Ergo (латинское слово, означающее поэтому).

Ergo обеспечивает пиковую производительность более 4 TOPS (тера, или триллион операций в секунду) при пиковой мощности менее 1/10 Вт. Меня не волнует, что кто-то говорит, это много ТОПОВ.

Пройдя через бездну, мы обнаруживаем, что Ergo может запускать искусственные нейронные сети (ИНС) с весом, превышающим 100 миллионов, и размером, превышающим 400 МБ. Кроме того, он может одновременно запускать несколько сетей, поэтому одна сеть может обнаруживать и идентифицировать объекты, другая - оттачивать лица, а третья - обрабатывать звук.

Все это очень интересно, но я боюсь, что создание приложений ИИ для работы на чем-то вроде Ergo выходит за рамки моих скромных возможностей. Мой первый проблеск надежды был, когда я познакомился с концепцией NanoEdge AI Studio от Cartesiam (см. Также Любой встраиваемый разработчик может создавать системы AI / ML).

Идея заключается в том, что NanoEdge AI Studio начинает с того, что задает вам ряд вопросов, в том числе о том, какой процессор вы собираетесь использовать (варианты: Arm Cortex M0, M0 +, M3, M4 и M7), сколько оперативной памяти вы хотите использовать. посвятите свое решение AI / ML (оно может создавать решения, для которых требуется всего 4–16 КБ ОЗУ), а также количество и типы датчиков, которые вы хотите использовать. Затем NanoEdge AI Studio генерирует модель искусственного интеллекта, которую вы интегрируете в свой собственный код. Кроме того, он обучает модель, используя реальные данные с ваших датчиков. Как это мило?

Идея небольшой системы ИИ, работающей на относительно недорогом микроконтроллере (MCU), подпадает под категорию TinyML (крошечное машинное обучение). Я только недавно узнал, что это вещь. У него даже есть собственное отраслевое собрание в форме Саммита TinyML (см. Также TinyML Packs a Punch).

Фактически, именно я узнал о концепции TinyML, которая также познакомила меня с недавно опубликованной книгой TinyML: Машинное обучение с TensorFlow Lite на Arduino и микроконтроллерах сверхмалого энергопотребления, авторами которой являются Пит Уорден и Дэниел Ситунаяке. Версия этой маленькой красавицы в мягкой обложке доступна на Amazon Prime за 33 доллара, и позвольте мне сказать прямо здесь и сейчас, что она стоит каждого пенни.

Книга начинается с преподавания фундаментальных концепций машинного обучения наряду с рабочим процессом глубокого обучения: определение цели, сбор набора данных, разработка архитектуры модели (на ПК), обучение модели (на ПК), преобразование модели ( для запуска на вашем MCU), запустите логический вывод, оцените и устраните неисправности результатов. Я так много узнал из первых трех глав (всего 28 страниц), что проникся вновь обретенной уверенностью.

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

Оказывается, авторы работали с людьми из производителя микросхем Ambiq и парнями и девушками из SparkFun, чтобы произвести SparkFun Edge Board за 15 долларов. В дополнение к микроконтроллеру на этой плате есть два микрофона MEMS, 3-осевой акселерометр и разъем для подключения к камере. К сожалению, до сих пор обзоры были так себе, но я считаю, что новая версия этой платы находится в разработке.

К счастью, авторы также рекомендуют другие доски, на которых будут проводиться некоторые или все эксперименты, описанные в книге. Одна плата, на которой проводятся все эксперименты, - это Arduino Nano 33 BLE, которая стоит всего 26 долларов на Amazon Prime. В дополнение к микроконтроллеру этот маленький мошенник может похвастаться микрофоном; 9-осевой инерционный датчик; датчики температуры, влажности и барометрического давления; датчик жестов, приближения, цвета и интенсивности света.

Напомню, что по профессии я инженер-конструктор оборудования. Хотя я могу писать элементарный код на C / C ++, мои навыки программирования не самого высокого уровня. Я также слышал ужасные истории о сложности создания ИНС. Таким образом, если бы правда была сказана, если бы вы спросили меня, прежде чем я прочитал эту книгу, я бы сказал, что создание даже элементарной модели AI / ML / DL было бы выше моих возможностей. Однако оказывается, что некоторые действительно умные люди создали несколько удивительно сложных инструментов и сред, которые устраняют большую часть сложности, которую видит невежественный пользователь, такой как ваш скромный рассказчик (я горжусь своей скромностью).

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

С другой стороны, мне нравятся все технологии, которые идут нам навстречу. Я искренне верю, что в недалеком будущем у нас появятся гарнитуры, сочетающие ИИ с дополненной реальностью (AR), уменьшенной реальностью (DR) и дополненной виртуальностью (AV), и что результат изменит то, как мы взаимодействовать с нашими системами, миром и друг другом (см. также Что такое часто задаваемые вопросы VR, MR, AR, DR, AV и HR?).

С другой стороны, я должен признать, что начал бояться, что меня оставят позади. У меня было видение, что я сижу в кресле-качалке на крыльце в своем безумном старении и наблюдаю, как проходит мир, - всего лишь пользователь технологий, а не творец (грустное лицо). Но превратите этот хмурый взгляд вверх тормашками в улыбку, потому что старая собака еще многообещает. Оказывается, вопреки всем ожиданиям, вооружившись такой книгой, как TinyML, вы можете научить старого Макса новым трюкам!