Нейро́нный проце́ссор (англ. Neural Processing Unit, NPU или ИИ-ускоритель англ. AI accelerator) — это специализированный класс микропроцессоров и сопроцессоров (часто являющихся специализированной интегральной схемой), используемый для аппаратного ускорения работы алгоритмов искусственных нейронных сетей, компьютерного зрения, распознавания по голосу, машинного обучения и других методов искусственного интеллекта[1].
Описание
Нейронные процессоры относятся к вычислительной технике и используются для аппаратного ускорения эмуляции работы нейронных сетей и цифровой обработки сигналов в режиме реального времени. Как правило, нейропроцессор содержит регистры, блоки памяти магазинного типа, коммутатор и вычислительное устройство, содержащее матрицу умножения, дешифраторы, триггеры и мультиплексоры[2].
На современном этапе (по состоянию на 2017 год) к классу нейронных процессоров могут относиться разные по устройству и специализации типы чипов, например:
- Нейроморфные процессоры — построенные по кластерной асинхронной архитектуре, разработанной в Корнеллском университете (принципиально отличающейся от фон Неймановской и Гарвардской компьютерных архитектур, используемых последние 70 лет в IT-отрасли). В отличие от традиционных вычислительных архитектур, логика нейроморфных процессоров изначально узкоспециализирована для создания и разработки разных видов искусственных нейронных сетей. В устройстве используются обычные транзисторы, из которых строятся вычислительные ядра (каждое ядро, как правило, содержит планировщик заданий, собственную память типа SRAM и маршрутизатор для связи с другими ядрами), каждое из ядер эмулирует работу нескольких сотен нейронов и, таким образом, одна интегральная схема, содержащая несколько тысяч таких ядер, алгоритмически может воссоздать массив из нескольких сотен тысяч нейронов и на порядок больше синапсов. Как правило, такие процессоры применяются для алгоритмов глубокого машинного обучения[3].
- Тензорные процессоры — устройства, как правило, являющиеся сопроцессорами, управляемыми центральным процессором. Тензорные процессоры оперируют тензорами — объектами, при помощи которых удобно выполнять преобразование элементов одного векторного пространства в другое, и которые могут быть представлены как многомерные массивы чисел[4], обработка которых осуществляется с помощью таких программных библиотек, как, например TensorFlow и Caffe 2. В угоду производительности они, обычно, выполняют операции над числами малой разрядности (8 или 16 бит) и специализированы для быстрого выполнения таких операций, как матричное умножение и свёртка, используемых для эмуляции свёрточных нейронных сетей, которые используются для задач машинного обучения[5].
- Процессоры машинного зрения — во многом похожи на тензорные процессоры, но они узкоспециализированы для ускорения работы алгоритмов машинного зрения, в которых используются методы свёрточных нейронных сетей (CNN) и масштабно-инвариантная трансформация признаков (SIFT). В них делается большой акцент на распараллеливание потока данных между множеством исполнительных ядер, включая использование модели блокнотной памяти[англ.] — как в многоядерных цифровых сигнальных процессорах, и они так же, как тензорные процессоры, используются для вычислений c низкой точностью, принятой при обработке изображений[6].
История
Этот раздел статьи ещё не написан. |
Области применения
![Thumb](http://upload.wikimedia.org/wikipedia/commons/thumb/4/4b/NVIDIA_Drive_PX%2C_Computex_Taipei_20150601.jpg/640px-NVIDIA_Drive_PX%2C_Computex_Taipei_20150601.jpg)
- Беспилотное транспортное средство (беспилотник): автомобиль, корабль, поезд, трамвай, летательный аппарат — например, в этом направлении развивает свои платы Drive PX-series[англ.] компания Nvidia[7][8]. А навигационная система основанная на чипах Movidius Myriad 2[англ.] успешно управляет автономными беспилотными летательными аппаратами[9].
- Диагностика в здравоохранении.
- Машинный перевод.
- Обработка естественного языка.
- Поисковая система — NPU повышают энергоэффективность центров обработки данных, и дают возможность использовать все более сложные запросы.
- Промышленный робот — NPU позволяют расширить спектр задач, которые возможно автоматизировать, путём добавления приспособляемости к меняющимся ситуациям.
- Распознавание по голосу — например, в мобильных телефонах использование технологии Qualcomm Zeroth[англ.][10]
- Сельскохозяйственный робот — например, борьба с сорняками без применения химических средств[11].
Примеры
Существующие продукты
![Thumb](http://upload.wikimedia.org/wikipedia/commons/thumb/c/cf/Adapteva_Parallella_DK02_-_Epiphany_%2815455181926%29.jpg/320px-Adapteva_Parallella_DK02_-_Epiphany_%2815455181926%29.jpg)
- Процессоры машинного зрения:
- Intel Movidius Myriad 2[англ.], который является многоядерным ИИ-ускорителем, основанным на VLIW-архитектуре, с дополненными узлами, предназначенными для обработки видео[6].
- Mobileye EyeQ[англ.] — это специализированный процессор, ускоряющий обработку алгоритмов машинного зрения для использования в беспилотном автомобиле[12].
- Тензорные процессоры:
- Google TPU (англ. Tensor Processing Unit) — представлен как ускоритель для системы Google TensorFlow, которая широко применяется для свёрточных нейронных сетей. Сфокусирован на большом объёме арифметики 8-битной точности[5].
- Huawei Ascend 310 / Ascend 910 — первые два чипа оптимизированные под решения задач искусственного интеллекта из линейки Ascend компании Huawei[13].
- Intel Nervana NNP[англ.] (англ. Neural Network Processor) — это первый коммерчески доступный тензорный процессор, предназначенный для постройки сетей глубокого обучения[14], компания Facebook была партнёром в процессе его проектирования[15][16].
- Qualcomm Cloud AI 100 — ускоритель искусственного интеллекта, предназначенный для использования в составе облачных платформ, поддерживающий программные библиотеки PyTorch, Glow, TensorFlow, Keras и ONNX[17].
- Нейроморфные процессоры:
- IBM TrueNorth — нейроморфный процессор, построенный по принципу взаимодействия нейронов, а не традиционной арифметики. Частота импульсов представляет интенсивность сигнала. По состоянию на 2016 год среди исследователей ИИ нет консенсуса, является ли это правильным путём для продвижения[18], но некоторые результаты являются многообещающими, с продемонстрированной большой экономией энергии для задач машинного зрения[19].
- Adapteva Epiphany[англ.] — предназначен как сопроцессор, включает модель блокнотной памяти[англ.] сети на кристалле[англ.], подходит к модели программирования потоком информации, которая должна подходить для многих задач машинного обучения.
- ComBox x64 Movidius PCIe Blade board — плата расширения PCI Express с максимальной плотностью VPU Intel Movidius (MyriadX) для инференса сверхточных нейронных сетей в ЦОД
- Cambricon MLU100 — карта расширения PCI Express с ИИ-процессором мощностью 64 TFLOPS с половинной точностью или 128 TOPS для вычислений INT8[20].
- Cerebras Wafer Scale Engine (WSE, CS-1) — экспериментальный суперпроцессор компании Cerebras, содержит 1,2 трлн транзисторов, организованных в 400 000 ИИ-оптимизированных вычислительных ядер и 18 Гбайт локальной распределённой памяти SRAM, и всё это связано ячеистой сетью с общей производительностью 100 петабит в секунду. Чип Cerebras ― это фактически суперкомпьютер на чипе, где вычислительные ядра SLAC (Sparse Linear Algebra Cores) ― полностью программируемые и могут быть оптимизированы для работы с любыми нейронными сетями[21].
- KnuPath[англ.] — процессор компании KnuEdge[англ.], предназначен для работы в системах распознавания речи и прочих отраслях машинного обучения, он использует соединительную технологию LambdaFabric и позволяет объединять в единую систему до 512 тысяч процессоров[22].
GPU-продукты
![Thumb](http://upload.wikimedia.org/wikipedia/commons/thumb/3/32/NvidiaTesla.jpg/640px-NvidiaTesla.jpg)
- Nvidia Tesla — серия специализированных GPGPU-продуктов компании Nvidia[23]:
- Nvidia Volta[англ.] — графические процессоры (GPU) архитектуры Volta (2017 год) компании Nvidia (такие как Volta GV100), содержат до 640 специальных ядер для тензорных вычислений[1].
- Nvidia Turing[англ.] — графические процессоры архитектуры Turing (2018 год) компании Nvidia (такие как Nvidia TU104), содержат до 576 специальных ядер для тензорных вычислений[24].
- Nvidia DGX-1 — специализированный сервер, состоящий из 2 центральных процессоров и 8 GPU Nvidia Volta GV100[англ.] (5120 тензорных ядер), связанных через быструю шину NVLink[25]. Специализированная архитектура памяти[англ.] у этой системы является особенно подходящей для построения сетей глубокого обучения[26][27].
- AMD Radeon Instinct[англ.] — специализированная GPGPU-плата компании AMD, предлагаемая как ускоритель для задач глубокого обучения[28][29].
ИИ-ускорители в виде внутренних сопроцессоров (аппаратных ИИ-блоков)
![Thumb](http://upload.wikimedia.org/wikipedia/commons/thumb/6/6f/Apple_A11.jpg/640px-Apple_A11.jpg)
- Cambricon-1A — NPU-блок в ARM-чипах Huawei Kirin 970, разработанный компанией Cambricon Technologies[30].
- CEVA[англ.] NeuPro — семейство лицензируемых ИИ-процессоров для глубокого обучения компании CEVA, Inc.[англ.][31].
- Neural Engine — ИИ-ускоритель внутри ARM-чипов от Apple A11 до A18 SoC[32].
- PowerVR 2NX NNA (Neural Network Accelerator) — семейство лицензируемых IP-модулей для машинного обучения компании Imagination Technologies[33].
Научные исследования и разрабатываемые продукты
- Индийский технологический институт в Мадрасе разрабатывает ускоритель на импульсных нейронах для новых систем архитектуры RISC-V, направленных на обработку больших данных на серверных системах[34].
- Eyeriss[англ.] — разработка, направлена на свёрточные нейронные сети с применением блокнотной памяти и сетевой архитектуры в пределах кристалла.
- Fujitsu DLU[англ.] — многоблочный и многоядерный сопроцессор компании Fujitsu использующий вычисления с низкой точностью и предназначенный для глубокого машинного обучения[35].
- Intel Loihi[англ.] — нейроморфный процессор компании Intel, который сочетает процессы обучения, тренировки и принятия решений в одном чипе, позволяя системе быть автономной и «сообразительной» без подключения к облаку. Например, при обучении с помощью базы данных MNIST (Mixed National Institute of Standards and Technology) процессор Loihi оказывается в 1 млн раз лучше, чем другие типичные спайковые нейронные сети[36].
- Kalray[англ.] — показала MPPA[англ.][37] и сообщила о повышении эффективности свёрточных нейронных сетей в сравнении с GPU.
- SpiNNaker — массово-параллельная компьютерная архитектура, которая сочетает ядра традиционной ARM-архитектуры с усовершенствованной сетевой структурой, специализированной для моделирования крупной нейронной сети.
- Zeroth NPU[англ.] — разработка компании Qualcomm, направленная непосредственно на привнесение возможностей распознавания речи и изображений в мобильные устройства[38].
- TPU H — тензорный процессор, над созданием которого работает[39][40] российская компания «ХайТэк». В октябре 2020 года были опубликованы результаты[41][42] тестирования архитектуры ускорителя расчета нейронных сетей TPU H, проведенного международным консорциумом MLPerf (учрежден в 2018 году Baidu, Google, Harvard University, Stanford University, University of California, Berkeley).
Примечания
Ссылки
Wikiwand - on
Seamless Wikipedia browsing. On steroids.