Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial Internet of Things >> Датчик

Искусственный интеллект в автомобилях — внутри мозга

Автономные транспортные средства (AV) или даже автомобили с усовершенствованными системами помощи водителю (ADAS) полагаются на данные множества датчиков — нескольких камер, лидара, радара, а иногда даже гидролокатора. Работа с потоками данных, поступающих от этого массива датчиков, является огромной и в то же время критической задачей. Все эти данные должны быть преобразованы в информацию в режиме реального времени, чтобы использовать ее для безопасного вождения автомобиля, по крайней мере, так же, как если бы за рулем находился совершенный водитель-человек. «На дороге водители-люди должны внимательно следить за своим текущим окружением, взаимодействовать с другими водителями и принимать решения. Как и люди-водители, AV должны воспринимать, взаимодействовать и принимать решения. Кроме того, AV должны строить хорошие отношения со своими пассажирами». 1

Эти функции основаны на искусственном интеллекте (ИИ) для ассимиляции данных от разных датчиков и их объединения для мгновенного изображения автомобиля и его динамической среды — процесс, называемый слиянием датчиков. Оптимальный для использования в автомобилях ИИ использует глубокие нейронные сети (DNN). Созданные по образцу того, как информация обрабатывается человеческим мозгом, DNN учатся перемещаться по реальному миру вождения, учась на собственном опыте, а не получая указаний от программиста. DNN работает, принимая несколько входных данных, присваивая им разные веса и делая выводы. Для выполнения всего этого в «реальном времени» требуется чрезвычайно высокопроизводительная, но энергоэффективная вычислительная платформа. Это можно ускорить с помощью ускорителя обработки.

Использование ИИ

Чтобы узнать, что входит в высокопроизводительную платформу для автомобильного ИИ, я взял интервью у Гила Абрахама из CEVA, Inc. об их инструментах для ее реализации.

У бизнес-подразделения CEVA Vision and AI есть то, что Абрахам назвал тремя столпами:NeuPro-M, который представляет собой процессор AI; SensPro — высокопроизводительный цифровой сигнальный процессор (DSP) концентратора датчиков; и программное обеспечение CDNN-Invite. CDNN-Invite позволяет производителям вводить свои собственные ускорители DNN для совместной работы с процессором CEVA NeuPro-M AI, а также с DSP SensPro и пользоваться одной унифицированной системой, которой можно централизованно управлять с помощью одного и того же комплекта разработки программного обеспечения для памяти и потока ( SDK).

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

Например:

SensPro DSP может получать входные данные от них, а также от датчиков времени пролета (ToF), инерциальных измерительных блоков (IMU), эффективно обрабатывать алгоритмы одновременной локализации и картирования (SLAM) и, используя их все, может создавать «контекстную осведомленность». полную картину состояния автомобиля и его окружения. Вы также можете добавить специальный набор инструкций в аппаратное обеспечение, чтобы получить дополнительное ускорение другой конкретной обработки, если это необходимо.

Интеграция системы

NeuPro-M решает многие ключевые проблемы функций автономных транспортных средств, включая масштабируемую работу с высокой скоростью и малой задержкой, низкую рабочую мощность, высокий уровень безопасности и способность соответствовать функциональным требованиям стандарта ISO 26262 для связанных с безопасностью электрических / электронных систем. в производстве дорожных транспортных средств. Кроме того, его можно масштабировать, например, его можно использовать для отдельных датчиков, групп датчиков в зоне или даже встроить в блок управления двигателем автомобиля (ЭБУ).

Архитектура высокопроизводительной автомобильной ИИ-платформы

Процессор искусственного интеллекта CEVA NeuPro-M предназначен для принятия высокоуровневых решений о вождении. Эти решения основаны на входных данных DNN, которые предоставляют ситуационную информацию, такую ​​как:есть ли встречные автомобили; автомобиль остается в полосе движения; что такое абсолютное местоположение (SLAM)?

Процессор искусственного интеллекта NeuPro-M принимает решения о том, какие действия следует предпринять, учитывая полученную информацию. ИИ требует огромного количества вычислений для принятия решений, и они должны выполняться практически в режиме реального времени. Поэтому требуется мощный процессор. Для автомобильных приложений также необходимо минимизировать энергопотребление — по мере увеличения количества вычислений и уменьшения времени их выполнения увеличивается потребляемая мощность. Меру производительности процессора можно выразить одним числом:тера операций в секунду на ватт (TOPS/ватт) — чем выше число, тем выше производительность. Энергоэффективность NeuPro-M составляет 24 TOPS на ватт, что значительно выше, чем у большинства других автомобильных процессоров искусственного интеллекта.

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

Оптимизация производительности

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

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

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

Параллельная обработка

Процессор NeuPro-M (NPM) состоит из трех частей (см. рис. 2):главный контроллер; общая подсистема NPM; и двигатель NPM. Процессор может включать от одного до восьми модулей, которые можно выбрать в соответствии с потребностями конкретного приложения. Работу процессора можно масштабировать, выбирая количество движков. «Вот как вы получаете все больше и больше лошадиных сил», — сказал Абрахам.

Общая подсистема NPM находится в постоянном взаимодействии с механизмом NPM. Этот канал контролируется, чтобы убедиться, что он не станет узким местом — чтобы данные продолжали поступать в систему. ИИ для логического вывода работает с двумя наборами данных:сами данные, возможно, изображение; и вес, который применяется к данным, чтобы сделать вывод. Общая подсистема поддерживает канал открытым, применяя сжатие как к данным, так и к весам.

Параллельная обработка может быть реализована как с использованием нескольких движков, так и с использованием сопроцессоров внутри движков, каждый из которых содержит пять сопроцессоров и общую внутреннюю память.

Пример — управление транспортным средством с четырехдвигательным NPM

Рисунок 3 иллюстрирует простое автомобильное приложение параллельной обработки. В левой части рисунка показано изображение дороги, снятое фронтальной камерой. Процессор внутри транспортного средства блокирует встречную полосу для упрощения вычислений, необходимых для удержания транспортного средства в центре на своей стороне дороги, и сохраняет изображение в памяти. Сохраненное изображение вводится из памяти транспортного средства в общую подсистему NPM, которая в этом примере обслуживает четыре двигателя. Затем программное обеспечение решает, каков вариант использования — что необходимо — и как разделить изображение, чтобы добиться максимальной производительности с минимальной мощностью (высокое использование) для желаемой функции. В этом случае NPM делит изображение на четыре части с некоторым перекрытием, и каждая часть отправляется на другой движок. Затем вывод ИИ выполняется на каждом из четырех сегментов дороги. Затем четыре сегмента снова объединяются в память подсистемы, из которой они выводятся на уровень восприятия в другом месте SoC для выполнения желаемых задач.

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

Оптимизация с помощью программного обеспечения

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

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

По словам Абрахама, используя как программные манипуляции, так и аппаратную оптимизацию, вы можете добиться значительного ускорения — до 16 раз с помощью NeuPro-M.

Подводя итоги

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

  1. Фанг Чен, доктор наук, Отчет об исследовании SAE Edge — Нерешенные вопросы автономии транспортных средств, искусственного интеллекта и взаимодействия человека и машины.

Эта статья была написана Эдом Брауном, редактором Sensor Technology. Для получения дополнительной информации свяжитесь с Эдом по этому адресу электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра. или посетите здесь .


Датчик

  1. Искусственный интеллект - вымысел или вымысел?
  2. Зачем Интернету вещей нужен искусственный интеллект
  3. Искусственный интеллект играет важную роль в IoT
  4. Искусственный интеллект против машинного обучения против глубокого обучения | Разница
  5. ИИ:найдите правильное применение искусственному интеллекту
  6. Видео:Влияние искусственного интеллекта (ИИ) на производство и обработку
  7. Роботы с искусственным интеллектом
  8. ИИ-помощник:будущее туристической индустрии с развитием искусственного интеллекта
  9. Влияние датчиков на производство
  10. Искусственный интеллект, лучшая защита в кибербезопасности