Из Википедии, бесплатной энциклопедии
  (Перенаправлено из блока нейронной обработки )
Перейти к навигации Перейти к поиску

Ускоритель AI класс специализированного аппаратного ускорителя [1] или компьютерной системы [2] [3] предназначен для ускорения искусственного интеллекта приложений, особенно искусственных нейронных сетей , машинного зрения и машинного обучения . Типичные приложения включают алгоритмы для робототехники , Интернета вещей и других задач, требующих обработки большого количества данных или управляемых датчиками. [4] Они часто представляют собой многоядерные проекты и обычно ориентированы на арифметику с низкой точностью , новые архитектуры потоков данных.или вычислительные возможности в памяти . По состоянию 2018 года , типичный А. И. интегральная схема чипа содержит миллиарды из полевых МОП - транзисторов. [5] Для устройств этой категории существует ряд терминов, зависящих от производителя, и это новая технология без доминирующего дизайна .

История [ править ]

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

Ранние попытки [ править ]

Еще в 1993 году процессоры цифровых сигналов использовались в качестве ускорителей нейронных сетей, например, для ускорения программного обеспечения оптического распознавания символов . [6] В 1990-х годах также были попытки создать параллельные высокопроизводительные системы для рабочих станций, предназначенные для различных приложений, включая моделирование нейронных сетей. [7] [8] [9] Ускорители на базе FPGA также были впервые исследованы в 1990-х годах как для вывода [10], так и для обучения. [11] ANNA была нейросетевым ускорителем CMOS, разработанным Яном Лекун . [12]

Гетерогенные вычисления [ править ]

Гетерогенные вычисления относятся к объединению ряда специализированных процессоров в единую систему или даже на одну микросхему, каждый из которых оптимизирован для определенного типа задач. Архитектуры, такие как микропроцессор Cell [13], имеют функции, которые в значительной степени совпадают с функциями ускорителей AI, включая: поддержку упакованной арифметики с низкой точностью, архитектуру потока данных и приоритет «пропускной способности» над задержкой. Микропроцессор Cell впоследствии был применен для решения ряда задач [14] [15] [16], включая AI. [17] [18] [19]

В 2000-х годах процессоры также получили все более широкие блоки SIMD , обусловленные рабочими нагрузками в области видео и игр; а также поддержка упакованных типов данных низкой точности . [20] Из-за увеличения производительности процессоров они также используются для выполнения рабочих нагрузок AI. ЦП лучше подходят для DNN с DNN с малым или средним параллелизмом, для разреженных DNN и в сценариях с малым размером пакета.

Использование графического процессора [ править ]

Графические процессоры или графические процессоры - это специализированное оборудование для обработки изображений и вычисления локальных свойств изображения. Математическая основа нейронных сетей и манипуляций с изображениями схожи, до неловкости параллельные задачи с использованием матриц приводят к тому, что графические процессоры все чаще используются для задач машинного обучения. [21] [22] [23] По состоянию на 2016 год графические процессоры популярны для работы с ИИ, и они продолжают развиваться в направлении облегчения глубокого обучения, как для обучения [24], так и для логических выводов в таких устройствах, как беспилотные автомобили . [25] Разработчики графических процессоров, такие как Nvidia NVLink.разрабатывают дополнительные возможности подключения для рабочих нагрузок, связанных с потоками данных, от которых выигрывает ИИ. [26] Поскольку графические процессоры все чаще применяются для ускорения AI, производители GPU включили нейронную сеть конкретные аппаратные средства для дальнейшего ускорения этих задач. [27] [28] Тензорные ядра предназначены для ускорения обучения нейронных сетей. [28]

Использование ПЛИС [ править ]

Фреймворки глубокого обучения все еще развиваются, что затрудняет разработку пользовательского оборудования. Реконфигурируемые устройства, такие как программируемые вентильные матрицы (FPGA), упрощают разработку оборудования, фреймворков и программного обеспечения вместе друг с другом . [29] [10] [11] [30]

Microsoft использовала микросхемы FPGA для ускорения вывода . [31]

Появление специализированных ASIC для ускорителей искусственного интеллекта [ править ]

Хотя графические процессоры и FPGA работают намного лучше [ количественно ], чем процессоры для задач, связанных с ИИ, коэффициент эффективности до 10 [32] [33] может быть получен за счет более конкретной конструкции с помощью специализированной интегральной схемы (ASIC). . [ необходима цитата ] Эти ускорители используют такие стратегии, как оптимизированное использование памяти [ необходима цитата ] и использование арифметики с более низкой точностью для ускорения вычислений и увеличения пропускной способности вычислений. [34] [35] Некоторые принятые форматы с плавающей запятой низкой точностииспользуемое ускорение AI - половинная точность и формат с плавающей запятой bfloat16 . [36] [37] [38] [39] [40] [41] [42] Такие компании, как Facebook, Amazon и Google, разрабатывают свои собственные ASIC для искусственного интеллекта. [43] [44]

Архитектуры вычислений в памяти [ править ]

В июне 2017 года исследователи IBM анонсировали архитектуру в отличие от архитектуры фон Неймана, основанную на вычислениях в памяти и массивах памяти с фазовым переходом, применяемых для обнаружения временной корреляции , с намерением обобщить подход к гетерогенным вычислениям и системам с массовым параллелизмом . [45] В октябре 2018 года исследователи IBM анонсировали архитектуру, основанную на обработке в памяти и смоделированную на основе синаптической сети человеческого мозга для ускорения глубоких нейронных сетей . [46] Система основана намассивы памяти с фазовым переходом . [47]

Вычисления в памяти с аналоговой резистивной памятью [ править ]

В 2019 году исследователи из Миланского политехнического университета нашли способ решать системы линейных уравнений за несколько десятков наносекунд с помощью одной операции. Их алгоритм основан на вычислениях в памяти с аналоговыми резистивными запоминающими устройствами, которые работают с высокой эффективностью по времени и энергии, путем выполнения умножения матрицы на вектор за один шаг в соответствии с законом Ома и законом Кирхгофа. Исследователи показали, что схема обратной связи с перекрестной резистивной памятью может решать алгебраические задачи, такие как системы линейных уравнений, собственные векторы матриц и дифференциальные уравнения, всего за один шаг. Такой подход значительно сокращает время вычислений по сравнению с традиционными алгоритмами. [48]

Атомно тонкие полупроводники [ править ]

В 2020 году Marega et al. опубликовал эксперименты с материалом активного канала большой площади для разработки устройств логики в памяти и схем на основе полевых транзисторов с плавающим затвором (FGFET). [49] Такие атомарно тонкие полупроводники считаются многообещающими для энергоэффективных приложений машинного обучения , где одна и та же базовая структура устройства используется как для логических операций, так и для хранения данных. Авторы использовали двумерные материалы, такие как полупроводниковый дисульфид молибдена . [49]

Номенклатура [ править ]

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

В прошлом, когда появились потребительские графические ускорители , индустрия в конечном итоге приняла самоназначенный термин Nvidia , «GPU» [50], как собирательное существительное для «графических ускорителей», которое принимало множество форм, прежде чем остановилось на общем конвейере, реализующем Модель представлена Direct3D .

Возможные приложения [ править ]

  • Автономные транспортные средства : Nvidia нацелила свои платы серии Drive PX на это пространство. [51]
  • Военные роботы
  • Сельскохозяйственные роботы , например, для борьбы с сорняками без пестицидов. [52]
  • Голосовое управление , например, в мобильных телефонах, является целью Qualcomm Zeroth . [53]
  • Машинный перевод
  • Беспилотные летательные аппараты , например, системы навигации, например Movidius Myriad 2 , успешно управляют автономными дронами. [54]
  • Промышленные роботы , расширяющие круг задач, которые можно автоматизировать, добавляя возможности адаптации к изменяющимся ситуациям.
  • Здравоохранение , чтобы помочь с диагнозом
  • Поисковые системы , повышение эффективности использования энергии в центрах обработки данных и возможности использовать более современные запросы .
  • Обработка естественного языка

См. Также [ править ]

  • Когнитивный компьютер
  • Нейроморфные вычисления
  • Физическая нейронная сеть
  • Оптическая нейронная сеть
  • Ускоритель глубокого обучения

Ссылки [ править ]

  1. ^ «Intel представляет Movidius Compute Stick USB AI Accelerator» . 21 июля, 2017. Архивировано из оригинала на 11 августа 2017 года . Проверено 11 августа 2017 года .
  2. ^ «Inspurs представляет GX4 AI Accelerator» . 21 июня 2017 года.
  3. ^ Виггерс, Кайл (6 ноября 2019 г.) [2019], Neural Magic собирает 15 миллионов долларов для повышения скорости вывода ИИ на стандартных процессорах , заархивировано из оригинала 6 марта 2020 г. , получено 14 марта 2020 г.
  4. ^ "Google Разработка процессоров ИИ" .Google использует собственные ускорители искусственного интеллекта.
  5. ^ «13 секстиллионов и подсчет: длинный и извилистый путь к самому часто производимому человеческому артефакту в истории» . Музей истории компьютеров . 2 апреля 2018 . Проверено 28 июля 2019 года .
  6. ^ «Демонстрация сверточной нейронной сети 1993 года с ускорителем DSP32» .
  7. ^ "Дизайн коннекционистского сетевого суперкомпьютера" .
  8. ^ «Конец компьютеров общего назначения (не)» .В этой презентации рассматриваются прошлые попытки ускорителей нейронных сетей, отмечается сходство с современной конфигурацией процессоров SLI GPGPU и утверждается, что векторные ускорители общего назначения - это путь вперед (в отношении проекта RISC-V hwacha. Утверждает, что NN просто плотные и разреженные матрицы, один из нескольких повторяющихся алгоритмов)
  9. ^ Ramacher, U .; Raab, W .; Hachmann, JAU; Beichter, J .; Bruls, N .; Wesseling, M .; Sicheneder, E .; Glass, J .; Wurz, A .; Маннер, Р. (1995). Материалы 9-го Международного симпозиума по параллельной обработке . С. 774–781. CiteSeerX 10.1.1.27.6410 . DOI : 10.1109 / IPPS.1995.395862 . ISBN  978-0-8186-7074-9. S2CID  16364797 .
  10. ^ а б «Реализация нейронной сети с эффективным использованием пространства» .
  11. ^ a b Gschwind, M .; Salapura, V .; Майшбергер, О. (1996). «Общий строительный блок для нейронных сетей Хопфилда с обучением на кристалле». 1996 Международный симпозиум IEEE по схемам и системам. Цепи и системы, соединяющие мир. ISCAS 96 . С. 49–52. DOI : 10.1109 / ISCAS.1996.598474 . ISBN 0-7803-3073-0. S2CID  17630664 .
  12. ^ «Применение микросхемы нейронной сети ANNA для высокоскоростного распознавания символов» (PDF) .
  13. ^ Gschwind, Майкл; Хофсти, Х. Питер; Флакс, Брайан; Хопкинс, Мартин; Ватанабэ, Юкио; Ямазаки, Такеши (2006). «Синергетическая обработка в многоядерной архитектуре Cell». IEEE Micro . 26 (2): 10–24. DOI : 10.1109 / MM.2006.41 . S2CID 17834015 . 
  14. ^ De Fabritiis, G. (2007). «Производительность процессора Cell для моделирования биомолекул». Компьютерная физика . 176 (11–12): 660–664. arXiv : физика / 0611201 . DOI : 10.1016 / j.cpc.2007.02.107 . S2CID 13871063 . 
  15. ^ "Обработка видео и поиск по архитектуре ячейки". CiteSeerX 10.1.1.138.5133 .  Cite journal requires |journal= (help)
  16. ^ Бентин, Карстен; Уолд, Инго; Шербаум, Майкл; Фридрих, Хайко (2006). Симпозиум IEEE 2006 г. по интерактивной трассировке лучей . С. 15–23. CiteSeerX 10.1.1.67.8982 . DOI : 10.1109 / RT.2006.280210 . ISBN  978-1-4244-0693-7. S2CID  1198101 .
  17. ^ «Разработка искусственной нейронной сети на гетерогенной многоядерной архитектуре для прогнозирования успешной потери веса у людей с ожирением» (PDF) .
  18. ^ Квон, Бомджун; Чой, Тайхо; Чанг, Хиджин; Ким, Джеонхо (2008). 2008 5-я конференция по потребительским коммуникациям и сетям IEEE . С. 1030–1034. DOI : 10.1109 / ccnc08.2007.235 . ISBN 978-1-4244-1457-4. S2CID  14429828 .
  19. ^ Дуан, Втирка; Стрей, Альфред (2008). Euro-Par 2008 - Параллельная обработка . Конспект лекций по информатике. 5168 . С. 665–675. DOI : 10.1007 / 978-3-540-85451-7_71 . ISBN 978-3-540-85450-0.
  20. ^ «Повышение производительности видео с AVX» . 8 февраля 2012 г.
  21. ^ "Microsoft Research / пиксельные шейдеры / MNIST" .
  22. ^ «Как GPU стал использоваться для общих вычислений» .
  23. ^ "Классификация изображений с глубокими сверточными нейронными сетями" (PDF) .
  24. ^ «NVIDIA способствует развитию глубокого обучения» . 17 мая 2016 года.
  25. ^ "nvidia представляет суперкомпьютер для самостоятельного вождения автомобилей" . 6 января 2016 г.
  26. ^ «как nvlink позволит ускорить и упростить вычисления с несколькими графическими процессорами» . 14 ноября 2014 г.
  27. ^ « Обзор оптимизированной реализации моделей глубокого обучения на платформе NVIDIA Jetson », 2019
  28. ^ a b Харрис, Марк (11 мая 2017 г.). «Раскрытые возможности CUDA 9: Volta, кооперативные группы и многое другое» . Проверено 12 августа 2017 года .
  29. ^ Сефат, Md Syadus; Аслан, Семих; Келлингтон, Джеффри В. Касем, Апан (август 2019 г.). «Ускорение точек доступа в глубоких нейронных сетях на базе FPGA на основе CAPI» . 21-я Международная конференция по высокопроизводительным вычислениям и коммуникациям IEEE 2019 г .; 17-я Международная конференция IEEE по умному городу; 5-я Международная конференция IEEE по наукам о данных и системам (HPCC / SmartCity / DSS) : 248–256. DOI : 10.1109 / СКЦ / SmartCity / DSS.2019.00048 . ISBN 978-1-7281-2058-4. S2CID  203656070 .
  30. ^ «Ускорители глубокого обучения на основе FPGA берут на себя ASIC» . Следующая платформа . 23 августа 2016 . Проверено 7 сентября 2016 года .
  31. ^ "Проект Brainwave" . Microsoft Research . Проверено 16 июня 2020 года .
  32. ^ "Google ускоряет машинное обучение с помощью своего модуля обработки тензорных данных" . 19 мая 2016 года . Проверено 13 сентября 2016 года .
  33. ^ «Чип может принести глубокое обучение на мобильные устройства» . www.sciencedaily.com . 3 февраля 2016 . Проверено 13 сентября 2016 года .
  34. ^ «Глубокое обучение с ограниченной числовой точностью» (PDF) .
  35. ^ Растегари, Мохаммад; Ордонез, Висенте; Редмон, Джозеф; Фархади, Али (2016). «XNOR-Net: Классификация ImageNet с использованием двоичных сверточных нейронных сетей». arXiv : 1603.05279 [ cs.CV ].
  36. ^ Khari Джонсон (23 мая 2018). «Intel представляет Nervana Neural Net L-1000 для ускоренного обучения ИИ» . VentureBeat . Проверено 23 мая 2018 года . ... Intel будет расширять поддержку bfloat16 на все наши линейки продуктов искусственного интеллекта, включая процессоры Intel Xeon и Intel FPGA.
  37. Майкл Фельдман (23 мая 2018 г.). «Intel излагает новую дорожную карту для портфеля ИИ» . ТОП500 суперкомпьютерных сайтов . Проверено 23 мая 2018 года . Intel планирует поддерживать этот формат во всех своих продуктах AI, включая линейки Xeon и FPGA.
  38. ^ Lucian Армаш (23 мая 2018). «Intel запустит Spring Crest, свой первый процессор нейронной сети, в 2019 году» . Оборудование Тома . Проверено 23 мая 2018 года . Intel заявила, что NNP-L1000 также будет поддерживать bfloat16, числовой формат, который используется всеми игроками индустрии машинного обучения для нейронных сетей. Компания также будет поддерживать bfloat16 в своих FPGA, Xeon и других продуктах машинного обучения. Выпуск Nervana NNP-L1000 запланирован на 2019 год.
  39. ^ "Доступные операции TensorFlow | Cloud TPU | Google Cloud" . Google Cloud . Проверено 23 мая 2018 года . На этой странице перечислены API-интерфейсы TensorFlow Python и операторы графиков, доступные в Cloud TPU.
  40. ^ Эльмар Хаусманн (26 апреля 2018). «Сравнение Google TPUv2 с Nvidia V100 в ResNet-50» . Блог RiseML . Архивировано из оригинального 26 апреля 2018 года . Проверено 23 мая 2018 года . Для Cloud TPU Google рекомендовал использовать реализацию bfloat16 из официального репозитория TPU с TensorFlow 1.7.0. Реализации как TPU, так и GPU используют вычисления со смешанной точностью в соответствующей архитектуре и хранят большинство тензоров с половинной точностью.
  41. ^ Tensorflow Авторы (февраль 28, 2018). «ResNet-50 с использованием BFloat16 на ТПУ» . Google . Проверено 23 мая 2018 года .[ постоянная мертвая ссылка ]
  42. Джошуа В. Диллон; Ян Лэнгмор; Дастин Тран; Юджин Бревдо; Шринивас Васудеван; Дэйв Мур; Брайан Паттон; Алекс Алеми; Мэтт Хоффман; Риф А. Саурус (28 ноября 2017 г.). Распределения TensorFlow (отчет). arXiv : 1711.10604 . Bibcode : 2017arXiv171110604D . Проверено 23 мая 2018 г. Все операции в дистрибутивах TensorFlow численно стабильны для половинной, одинарной и двойной точности с плавающей запятой (как типы TensorFlow: tf.bfloat16 (усеченная с плавающей запятой), tf.float16, tf.float32, tf.float64). Конструкторы классов имеют флаг validate_args для числовых утверждений
  43. ^ «Facebook опубликовал новую вакансию для разработчиков микросхем» .
  44. ^ «Подпишитесь, чтобы читать | Financial Times» . www.ft.com . Cite использует общий заголовок ( справка )
  45. Абу Себастьян; Томаш Тума; Николаос Папандреу; Мануэль Ле Галло; Лукас Кулл; Томас Парнелл; Евангелос Элефтериу (2017). «Обнаружение временной корреляции с использованием вычислительной памяти с фазовым переходом» . Nature Communications . 8 (1): 1115. arXiv : 1706.00511 . DOI : 10.1038 / s41467-017-01481-9 . PMC 5653661 . PMID 29062022 .  
  46. ^ «Новая архитектура, вдохновленная мозгом, может улучшить обработку данных компьютерами и продвинуть ИИ» . Американский институт физики . 3 октября 2018 . Проверено 5 октября 2018 года .
  47. Карлос Риос; Натан Янгблад; Zengguang Cheng; Мануэль Ле Галло; Вольфрам Х.П. Пернис; К. Дэвид Райт; Абу Себастьян; Хариш Бхаскаран (2018). «Вычисления в памяти на фотонной платформе». arXiv : 1801.06228 [ cs.ET ].
  48. ^ Чжун Сунь; Джакомо Педретти; Элиа Амбрози; Алессандро Брикалли; Вэй Ван; Даниэле Йелмини (2019). «Решение матричных уравнений за один шаг с резистивными матрицами в точках пересечения» . Труды Национальной академии наук . 116 (10): 4123–4128. DOI : 10.1073 / pnas.1815682116 . PMC 6410822 . PMID 30782810 .  
  49. ^ a b Марега, Гильерме Мильято; Чжао, Яньфэй; Авсар, Ахмет; Ван, Чжэньюй; Трипати, Мукеш; Раденович, Александра; Кис, Анрас (2020). «Логика в памяти на атомарно тонком полупроводнике» . Природа . 587 (2): 72–77. DOI : 10.1038 / s41586-020-2861-0 . PMC 7116757 . PMID 33149289 .  
  50. ^ «NVIDIA запускает первый в мире графический процессор GeForce 256» .
  51. ^ «Технология и решения для беспилотных автомобилей от NVIDIA Automotive» . NVIDIA .
  52. ^ «Дизайн системы машинного зрения для борьбы с сорняками» (PDF) . Архивировано из оригинального (PDF) 23 июня 2010 года . Проверено 17 июня, 2016 .
  53. ^ «Исследование qualcomm приносит машинное обучение серверного класса на все устройства обработки данных» . Октябрь 2015 г.
  54. ^ "Movidius приводит в действие самый умный дрон в мире" . 16 марта 2016 г.

Внешние ссылки [ править ]

  • http://www.nextplatform.com/2016/04/05/nvidia-puts-accelerator-metal-pascal/
  • Проект Эйерисс
  • http://www.alphaics.ai/