Ещё буквально 10—15 лет назад споры вокруг искусственного интеллекта (ИИ, AI — Artificial Intelligence) разгорались только в ключе гипотетических теорий и представлений о нем, как о чём-то фантастическом и нереально далёком. Однако взрывное развитие технологий и скоростей компьютерных вычислений в наше время не оставляет шансов фантастике оставаться сказкой и всё больше подтверждает то, что эффективные с точки зрения приносимой пользы устройства и технологии однозначно должны быть реализованы и служить на благо людям.
Само понятие ИИ — это довольно неопределённая субстанция, по крайней мере современные мыслители пока не пришли к однозначному определению что это такое, но при этом разделились на 2 лагеря: одни настроены пессимистически и считают, что ИИ угрожает человечеству и сможет заменить и вытеснить человека из цивилизации (например, в таком духе высказывается Илон Маск), другие, и в их числе Джек Ма — что ИИ никогда не сможет составить конкуренцию человеку.
Для обоснования второго заключения применяется подход, анализирующий уникальные отличия человека от всех других форм материи. Он опирается на принцип анализа коммуникации в виде слов, позволяющих нам общаться между собой и инициировать реальные события, и разделения их на 3 основных уровня по степени важности и влияния:
1-й уровень (самый низкий в приоритете) — слова-функции, определяющие набор команд и движений (например: «принеси», «дай», «подними» и т.д.);
2-й уровень — слова-системы, позволяющие описывать, создавать, реализовывать систему, технологию, процессы (например: «результативность», «эффективность», «качество», «система», «цель», «алгоритм», «процесс», «проект», «продукт», «управлять» и т.д.);
3-й уровень — слова-отношения, определяющие ключевые смыслы, формирующие человека как личность, особенности восприятия самого себя, людей, природы и окружающего мира в целом (например: «уважение», «достоинство», «честь», «Бог», «любовь», «свобода», «радость», «обида», «человек», «мужчина», «женщина» и т.д.)
Так вот, компьютеры и ИИ (имеется ввиду собирательный образ) могут работать превосходя человека на 1-м и 2-м уровнях, поскольку они напрямую связаны с уровнем отработки команд и работы сложных алгоритмов по анализу данных. Но попасть на 3-й уровень компьютеры не в состоянии, поскольку отношения в понимании человека невозможны для создания их компьютером, особенно учитывая часто иррациональное поведение человека. Компьютер может воспроизвести отношения, заложенные в него программно, но это не будут первичные человеческие отношения как таковые, а, следовательно, полностью заменить человека в принципе невозможно.
Пока кипят научные страсти и идут активные споры, компания NVIDIA вовсю продолжает развивать и выпускать оборудование для просчета алгоритмов и анализа информации на основе самообучения для повседневных применений.
Начав свой путь, как компания по выпуску видеокарт для игр, компания NVIDIA быстро осознала потенциал использования графических процессоров для просчета однотипных задач в параллельных потоках (видеокарты выполняют объёмные крипто-вычисления намного быстрее центрального процессора). Первое рабочее применение возможностей видеокарт было связано именно с«майнингом» биткойна и других криптовалют на высокопроизводительных видеокартах. Вторым этапом развития этой технологии стало создание ASIC-оборудования (построенного на архиитектуре GPU) для майнинга bitcoin уже в промышленных масштабах на алгоритме SHA-256 и его дальнейшие модификации.
Параллельно с расчетом алгоритмов для криптовалют возможности GPU стали использовать для расчета алгоритмов ИИ. В этот момент начался третий этап, заключающийся в создании специализированных микрокомпьютеров, предназначенных именно для работы с алгоритмами искусственного интеллекта.
В компании NVIDIA, а она является одним из лидеров рынка создания техники для работы с ИИ, представлена линейка Jetson для AI в периферийных и автономных устройствах. В данную линейку входят следующие серии:
- Jetson Nano — 0.5 TFLOPS (FP16)
- Jetson TX2 — 1.3 TFLOPS (FP16)
- Jetson Xavier NX — 21 TOPS (в операциях INT8)
- Jetson AGX Xavier — 20-32 TOPS (INT8)
Эти высокопроизводительные микрокомпьютеры обеспечивают скорость вычислений от 0,5 TFLOPS (FLOPS, floating point operations per second — количество операций с плавающей запятой, которые машина может обработать за одну секунду) до 32 TOPS (TOPS, trillion operations per second — триллионов операций в секунду).
Здесь следует прояснить, что TFLOPS строго говоря совсем не равно TOPS, поскольку TFLOPS оперирует с операциями с плавающей запятой в секунду, а TOPS - с операциями вообще, хотя в большинстве случаев для этой оценки берутся целые числа. В блоге NVIDIA можно найти информацию, что для видеокарты NVIDIA TITAN X представлены следующие характеристики: “11 TFLOPS FP32 = 44 TOPS INT8 (new deep learning inferencing instruction)”. Таким образом можно сделать вывод, что топ серии Jetson AGX Xavier с производительностью 32 TOPS при работе с целыми числами длиной 8 символов (INT8) соответствует 8 TFLOPS при работе с числами с плавающей запятой длиной 32 символа (FP32).
Микрокомпьютеры линейки Jetson для AI выполнены в форм-факторе вычислительного модуля (Module), обеспечивающего работу с необходимыми встроенными интерфейсами, но физические разъемы-интерфейсы в конструкцию не входят. Для присоединения внешних устройств необходимо иметь дополнительное расширение в виде стандартных комплектов разработчика Developer Kit, поставляемых компанией NVIDIA и задействующие все используемые в модуле возможности для интерфейсов или кастомных, разрабатываемых самими разработчиками с необходимыми только для работы его приложения разъёмами.
Jetson Nano
Линейку устройств NVIDIA для работы с искусственным интеллектом открывает серия Jetson Nano. Это достаточно производительный (по сравнению с конкурентами) и энергоэффективный микрокомпьютер, позволяющий выполнять требуемые расчеты в пределах указанной производительности и имеющий минимальную цену из всех устройств NVIDIA. При производительности в 472 GFLOPS, он позволяет запускать несколько нейронных сетей и одновременно обрабатывать данные с нескольких датчиков высокого разрешения, что решает вопрос применения его в системах видеорегистрации, домашних роботах и интеллектуальных шлюзах, оснащенных возможностями для анализа. Энергопотребление модуля составляет всего от 5 до 10 Ватт. Его конструкция основана на четырехъядерном 64-битном ARM процессоре и 128-ядерном интегрированном графическом процессоре на архитектуре Maxwell™NVIDIA с 4 ГБ оперативной памяти формата LPDDR4 (64-бит).
Форм-фактор - плата с разъемом SO-DIMM. Размер модуля Jetson Nano — 70мм х 45мм.
Для начальной работы и настройки предоставляется набор разработчика NVIDIA Jetson Nano Developer Kit, имеющий все необходимые для быстрого запуска устройства в работу интерфейсы:
- Ethernet: 10/100 / 1000BASE-T с автоматическим согласованием,
- Камера: 12-канальная (3x4 ИЛИ 4x2) MIPI CSI-2 DPHY 1.1 (1,5 Гбит / с),
- Дисплей: HDMI 2.0, DP (DisplayPort)
- USB: 4x USB 3.0, USB 2.0 (Micro USB)
- Другие: GPIO, I2C, I2S, SPI, UART
- Micro USB (5В 2А)
- Разъем питания (5 В, 4 А)
Все устройства линейки Jetson для AI поддерживают работу с NVIDIA Jetpack SDK (Software development kit – это комплект для разработки программного обеспечения, который помогает разработчикам создавать приложения для конкретных платформ), которое включает в себя BSP, библиотеки для Deep Learning, компьютерного зрения, вычислений на GPU, обработки мультимедиа и многое другое.
Jetson TX2
Модули Jetson TX2 имеют втрое большую производительность, чем Jetson Nano — до 1.3 TFLOPS (FP16) и вдвое большую, чем модули первого выпуска этой серии Jetson TX1. В линейку Jetson TX2 входят 3 модуля:
Работа модулей построена на базе графического процессора с архитектурой NVIDIA Pascal™ с 256 ядрами NVIDIA CUDA. Процессор — двухъядерный Denver 2 64-бит и двухъядерный ARM A57. Память — 4 Гб LPDDR4, 128-бит для Jetson TX2 4ГБ и 8 Гб LPDDR4, 128-бит для Jetson TX2 и Jetson TX2i. Флэш-память 16 Гб eMMC 5.1 и 32 Гб eMMC 5.1 соответственно.
Модули позволяют производить кодирование видео в 3 потока с разрешением 4K и частотой 30 Гц (HEVC), а декодирование видео — в 4 потока с разрешением 4K, частотой 30 Гц и поддержкой 12-бит.
Поддерживаемые интерфейсы:
- Wi-Fi (для TX2 4ГБ и TX2i требуется внешний чип)
- Gigabit Ethernet
- Камера 12 каналов MIPI CSI-2, D-PHY 1.2 (30 Гбит/с)
- Дисплей HDMI 2.0 / eDP 1.4 / 2 разъема DSI / 2 разъема DP 1.2
- UPHY Gen 2 | 1x4 + 1x1 ИЛИ 2x1 + 1x2, USB 3.0 + USB 2.0
- Подключение — разъем 400-pin с теплообменником (TTP)
Размер модуля: 87 мм x 50 мм.
Для быстрого старта компания NVIDIA предлагает комплект разработчика с базовой платой, оснащенной всеми необходимыми физическими интерфейсами - NVIDIA Jetson TX2 Developer Kit.
Данная серия предназначена для высокопроизводительных вычислительных устройств, а имея достаточно компактные размеры и невысокое энергопотребление (7,5-20 Вт) может с легкостью быть использована в дронах, автономных компактных роботах и других компактных устройствах.
Jetson Xavier NX
Jetson Xavier NX обеспечивает до 21 трлн операций в секунду (в операциях INT8) и является отличным решением для проведения высокопроизводительных вычислений и алгоритмов ИИ во встраиваемых и периферийных устройствах, таких как роботы, медицинские устройства, умные камеры, датчики высокого разрешения, системы автоматизированного оптического контроля, небольшие производства и другие встраиваемые IoT-системы с ИИ.
Такая производительность обеспечивается благодаря использованию графического процессора архитектуры NVIDIA Volta™ с 384 ядрами NVIDIA® CUDA® и 48 тензорными ядрами, 6-ти ядерным 64-бит процессором NVIDIA Carmel с архитектурой ARM®v8.2 с 6 Мб L2 и 4 Мб L3, двух ускорителей глубокого обучения NVIDIA (NVDLA) и ускорителя компьютерного зрения на процессоре компьютерного зрения 7-way VLIW. Модуль имеет пропускную способностью более 51 Гбит/с.
Для сопряжения с внешними устройствами, модуль имеет стандартный 260-контактный разъем SO-DIMM, который значительно облегчает разработку печатной платы для реализуемого проекта.
Компания NVIDIA предлагает, как и ко всем предыдущим сериям, Комплект разработчика NVIDIA® Jetson Xavier NX™ Developer Kit, включающего базовую плату с разъемом SO-DIMM для присоединения вычислительного модуля и имеющую на борту все необходимые разъемы-интерфейсы:
- PCIe: 1 разъем x1 (PCIe Gen3) + 1 x4 (PCIe Gen4), общая скорость 144 Гт/с
- Камера CSI: До 6 камер (24 по виртуальным каналам), 14 каналов (3x4 or 6x2) MIPI CSI-2, D-PHY 1.2 (до 30 Гбит/с)
- Интерфейс дисплея: 2 многорежимных DP 1.4 / eDP 1.4 / HDMI 2.0
- Gigabit Ethernet, M.2 Key E (поддержка WiFi/BT), M.2 Key M (NVMe)
- Прочие разъёмы: GPIO, I2C, I2S, SPI, UART
Начиная с этого модуля, компания NVIDIA предлагает функционал поддержки облачных решений, что позволяет разработчикам создавать и развертывать свои проекты на встраиваемых и периферийных устройствах.
Предоставляемый набор инструментов NVIDIA Transfer Toolkit и предварительно натренированные модели искусственного интеллекта из NVIDIA NGC ускоряют путь к обученным и оптимизированным сетям ИИ для высоконагруженных приложений. Контейнеры NGC для ИИ и НРС тестируются для запуска на Kubernetes в виртуализированных средах на ведущих облачных платформах (AWS, Google Cloud, Microsoft Azure, ORACLE Cloud Infrastructure, OVH, Tencent Cloud, Yandex Cloud), что позволяет компаниям гибко масштабировать разрабатываемые решения.
Имея во много раз большую производительность и более широкий набор интерфейсов: от высокоскоростных CSI и PCIe до низкоскоростных I2C и GPIO, размер модуля Xavier NX полностью совпадает с размером Jetson Nano — всего 70мм х 45мм.
Энергопотребление в зависимости от нагрузки колеблется в пределах от 10 до 15 Вт. Модуль поддерживает работу от автономного источника питания - аккумуляторных систем и выполняет до 14 трлн операций в секунду при энергопотреблении всего 10 Вт, что позволяет не увеличивать энергопотребление при подключении датчиков и периферийных устройств и использовать при этом все возможности программного стека NVIDIA.
Jetson AGX Xavier
Данный вычислительный модуль является на сегодня передовой моделью компании NVIDIA и устанавливает новый стандарт вычислительной мощности и энергоэффективности. Это первый компьютер, специально разработанный для робототехники. Имея более 9 миллиардов транзисторов, он обеспечивает производительность более 30 триллионов операций в секунду.
Jetson AGX Xavier выполнен в форм-факторе 100 мм x 87 мм, благодаря этому модуль идеально подходит для автономных устройств, таких как роботы для логистики и доставки, промышленные системы и крупные БПЛА (беспилотные летательные аппараты).
В линейку Jetson AGX Xavier входят 2 модуля:
- Jetson AGX Xavier 8 ГБ, энергоэффективный и относительно недорогостоящий, который обеспечивает полную совместимость программно-аппаратного обеспечения с Jetson AGX Xavier и до 20 TOPS в задачах ИИ при энергопотреблении до 20 Вт. Данный модуль имеет на борту 384-ядерный графический процессор Volta с 48 тензорными ядрами, 6-ядерный, 64-разрядный процессор Carmel ARM v8.2, 6 МБ L2 + 4 МБ L3 и Память 8 ГБ, 256-битной LPDDR4x | 1333 МГц - 85 ГБ/с.
- Jetson AGX Xavier, достигающий 32 TOPS в задачах ИИ при энергопотреблении всего от 10Вт до 30Вт. Он имеет 512-ядерный графический процессор Volta с 64 тензорными ядрами, 8-ядерный, 64-разрядный процессор Carmel ARM v8.2, 8 МБ L2 + 4 МБ L3 и память 16 ГБ, 256-битной LPDDR4x | 136.5Гб/с.
Оба решения оснащены DL ускорителем (2х NVDLA Engines), Vision ускорителем (7-канальный процессор VLIW Vision) и полным набором ИИ-инструментов NVIDIA, что позволяет разработчикам быстро обучать и разворачивать нейронные сети.
Для удобства разработки предоставляется Набор разработчика NVIDIA Jetson AGX Xavier с поддержкой NVIDIA JetPack и DeepStream SDK, а также программных библиотек CUDA, cuDNN и TensorRT.
Устройства из линейки NVIDIA Jetson нашли применение во многих крупных проектах.
Так, японская компания Komatsu — один из крупнейших мировых производителей машиностроительной техники — использует решения NVIDIA, чтобы внедрить искусственный интеллект на строительные площадки и повысить их безопасность и эффективность.
Было проведено исследование, что только в Японии на строительных площадках случается до 15,000 несчастных случаев в год, при этом 300 из них — со смертельным исходом. Для решения этой проблемы в 2015 году компания Komatsu выступила с инициативой “SMARTCONSTRUCTION”, объединяющей данные о рабочих и строительной технике на площадках для обеспечения более безопасных условий труда для людей. Они интегрируют технику NVIDIA с функциям обработки изображений (image processing), виртуализации (virtualization ) и ИИ, превращая стройплощадки в “места работы из будущего”. Система создает 3D-визуализацию стройплощадок, показывает локацию людей, техники и объектов в режиме реального времени.
Графические процессоры NVIDIA будут взаимодействовать с дронами и камерами на строительных площадках, выступая в качестве платформы ИИ для анализа и визуализации. Компания SkyCatch предоставит дроны для сбора и картирования трехмерных изображений. OPTiM, компания по разработке программного обеспечения для IoT-устройств, предоставит приложение для идентификации людей и оборудования, полученного с помощью камер наблюдения. Оба этих партнера Komatsu также являются участниками программы NVIDIA Inception для стартапов в области искусственного интеллекта.
В центре сотрудничества по данной инициативе — NVIDIA Jetson. Эта платформа работая в тандеме с облачной технологией NVIDIA, будет включать камеры, установленные на строительном оборудовании Komatsu, и обеспечивать круговой обзор, позволяющий легко идентифицировать людей и машины поблизости, чтобы предотвратить столкновения и другие аварии. Jetson также будет использоваться в стереокамерах, установленных в кабинах строительных машин, чтобы помочь оценить быстро меняющиеся условия в режиме реального времени и соответствующим образом проинструктировать водителя. Будущие приложения включают рендеринг с высоким разрешением и виртуальное моделирование для строительных и горнодобывающих объектов, а также автоматизированное управление оборудованием.
Другой пример - компания JD X, которая выбрала модули NVIDIA Jetson для своих решений с использованием ИИ в устройствах JDrone и JDrover в целях обеспечения логистики и доставки товаров для гиганта азиатского рынка e-commerce — JD.com.
Предполагается использовать дроны JDrones для доставки товаров, в сельском хозяйстве и для нужд службы поиска и спасения. Компания JD X планирует выпустить до 1 миллиона дронов для этих нужд в ближайшие 5 лет. Устройства Jetson от NVIDIA удовлетворяют всем требованиям, таким как высокая производительность, низкое энергопотребление, компактный размер и способность обрабатывать изображения.
Основной целью создания такой инфраструктуры по доставке является покрытие необходимости в доставке грузов в районах со слабой транспортной инфраструктурой. По предварительным расчетам дроны помогут компании сэкономить до 70% расходов на доставку товаров в эти области.
Другим важным применением дронов является использование их как транспорт для доставки пестицидов на поля и локальное их использование по мере выявленной необходимости, что ведет к более точному применению и позволяет предотвратить повышенный расход ядохимикатов при сплошном способе распыления.
JDrover планируется как наземный доставщик мелкогабаритных товаров (от еды до электроники) для клиентов компании JD.com, заказавшим доставку в онлайн-магазине. Он с легкостью будет прокладывать маршрут по заполненным пешеходами улицам, распознавать лица, дорожные знаки и сигналы.
Для решения заявленных задач решающую роль играет использование ИИ.
Еще одним кейсом применения ИИ является использование его в дронах для навигации без использования GPS.
Дрон, разработанный специалистами компании NVIDIA, перемещается используя только алгоритмы глубокого обучения и компьютерное зрение на базе микрокомпьютера со встроенным ИИ — NVIDIA Jetson TX1 и двух камер. Изначально он разрабатывался исходя из задачи следования по лесным тропам и спасения заблудившихся туристов или для обнаружения упавших на лесные тропы деревьев, но он оказался способен работать далеко за пределами леса - например, в каньонах, между небоскребами или внутри помещений, где GPS обычно неточен или совсем недоступен.
Дальнейшим шагом развития этого направления стала разработка софта для Jetson TX1 и Jetson TX2 для возможности создания роботов, которые смогут ориентироваться основываясь только на визуальной информации.
В заключение хотелось бы рассказать о NVIDIA METROPOLIS - передовой платформе, объединяющей в себе данные из миллиардов IoT-устройств, которая объединяет в себе компании, инновационные технологии и целую экосистему разработчиков, что позволяет разрабатывать, развертывать и масштабировать IoT-приложения на периферийных устройствах и в облаке. Это мощная платформа для автоматизации розничной торговли, оптимизированного управления запасами, организации дорожного движения в умных городах, оптического контроля на производстве и других применений.
Она позволяет решить такие вопросы, как:
- Обеспечение работы интеллектуальных систем дорожного движения, контроля доступа и общественного транспорта;
- Обеспечение правопорядка;
- Автоматизированную оплату, предотвращение товарных потерь, маршрутизацию товаров и транспортных средств;
- Управление запасами;
- Автоматизированный оптический контроль;
- Профилактическое обслуживание оборудования;
- Удаленный контроль активов, безопасность и соответствие требованиям безопасности;
- Измерение температуры, распознавание индивидуальных средств защиты, контроль за состоянием пациентов, аналитика процессов в операционной
- и многое другое.
Для повышения производительности и масштабируемости проектов на базе Nvidia Metropolis существуют библиотеки ускорения NVIDIA DeepStream, Transfer Learning Toolkit и CUDA-X. Благодаря SDK DeepStream можно повысить производительность видеоанализа в реальном времени. Набор инструментов Transfer Learning Toolkit позволит ускорить тренировку алгоритмов глубокого обучения с помощью предварительно обученных моделей и функций. А для решений, задействующих приложения компьютерного зрения служит SDK TensorRT, который включает оптимизатор вывода глубокого обучения и среду выполнения, обеспечивающую низкую задержку и высокую пропускную способность для приложений глубокого обучения (deep learning).
NVIDIA EGX создает единую и унифицированную платформу для самых популярных приложений и фреймворков ИИ для периферийных устройств и служит для обеспечения периферийных вычислений и упрощения удаленного развертывания систем на базе GPU, что позволяет запускать приложения ИИ для быстрого принятия эффективных решений. Платформа NVIDIA EGX работает на базе ПО Metropolis, которое размещено в NVIDIA NGC. Решение сочетает в себе ряд протестированных серверов и устройств и программный стек, обеспечивая вычисления на периферийных устройствах.
Подводя итоги можно сказать, что в данной статье мы рассмотрели, вернее перечислили, только основные инструменты и оборудование, обеспечивающие возможность работы автономных устройств на базе NVIDIA Jetson, с использованием современных технологий, в том числе и облачных. Подробное рассмотрение каждого элемента ведёт в целый мир знаний и огромного количества данных и практических применений, полученных всего за последние несколько лет. Это — увлекательное путешествие в мир создания и обучения искусственного интеллекта и его взаимодействия с человеком и человечеством в целом, которое, возможно, ждёт и вас, как активного участника процесса развития современной цивилизации.