Платформа Google TensorFlow позволяет своим пользователям обучать ИИ, предоставляя инструменты и ресурсы для машинного обучения. Долгое время инженеры ИИ использовали традиционные процессоры и графические процессоры для обучения ИИ. Хотя эти процессоры могут обрабатывать различные процессы машинного обучения, они по-прежнему являются аппаратным обеспечением общего назначения, используемым для различных повседневных задач.
Чтобы ускорить обучение ИИ, Google разработал специализированную интегральную схему (ASIC), известную как Tensor Processing Unit (TPU). Но что такое Tensor Processing Unit и как они ускоряют программирование ИИ?
Что такое тензорные процессоры (TPU)?
Tensor Processing Units — это разработка Google. ASIC для машинного обучения. TPU специально используются для глубокого обучения для решения сложных матричных и векторных операций. TPU оптимизированы для решения матричных и векторных операций на сверхвысоких скоростях, но должны быть соединены с CPU для выдачи и выполнения инструкций. TPU можно использовать только с
Платформа TensorFlow или TensorFlow Lite, будь то облачные вычисления или облегченная версия на локальном оборудовании.Приложения для ТПУ
Google использует TPU с 2015 года. Они также подтвердили использование этих новых процессоров для обработки текста Google Street View, Google Фото и результатов поиска Google (Rank Brain). а также создать ИИ, известный как AlphaGo, который обыграл лучших игроков в го, и систему AlphaZero, которая выиграла у ведущих программ в шахматах, го и Сёги.
TPU можно использовать в различных приложениях глубокого обучения, таких как обнаружение мошенничества, компьютерное зрение, естественный язык. обработка, самоуправляемые автомобили, голосовой ИИ, сельское хозяйство, виртуальные помощники, торговля акциями, электронная коммерция и различные социальные сети. предсказания.
Когда использовать TPU
Поскольку TPU — это узкоспециализированное оборудование для глубокого обучения, оно теряет множество других функций, которые вы обычно ожидаете от процессора общего назначения, такого как ЦП. Имея это в виду, существуют определенные сценарии, в которых использование TPU даст наилучший результат при обучении ИИ.
Лучшее время для использования TPU — это операции, в которых модели сильно зависят от матричных вычислений, например системы рекомендаций для поисковых систем. TPU также дают отличные результаты для моделей, в которых ИИ анализирует огромное количество точек данных, на выполнение которых уходит несколько недель или месяцев. Инженеры ИИ используют TPU для экземпляров без пользовательских моделей TensorFlow и должны начинать с нуля.
Когда не следует использовать TPU
Как указывалось ранее, оптимизация TPU приводит к тому, что эти типы процессоров работают только с определенными рабочими нагрузками. Таким образом, бывают случаи, когда использование традиционных ЦП и ГП дает более быстрые результаты. К этим случаям относятся:
- Быстрое прототипирование с максимальной гибкостью
- Модели ограничены доступными точками данных
- Простые модели, которые можно быстро обучить
- Модели слишком обременительны для изменения
- Модели, основанные на пользовательских операциях TensorFlow, написанных на C++.
Версии и характеристики ТПУ
С тех пор, как Google анонсировала свои TPU, общественность постоянно получала информацию о последних версиях TPU и их спецификациях. Ниже приведен список всех версий TPU со спецификациями:
ТПУv1 | ТПУv2 | ТПУv3 | ТПУv4 | Эджv1 | |
---|---|---|---|---|---|
Дата введения | 2016 | 2017 | 2018 | 2021 | 2018 |
Узел процесса (нм) | 28 | 16 | 16 | 7 | |
Размер матрицы (мм²) | 331 | <625 | <700 | <400 | |
Встроенная память | 28 | 32 | 32 | 144 | |
Тактовая частота (МГц) | 700 | 700 | 940 | 1050 | |
Наименьшая конфигурация памяти (ГБ) | 8 DDR3 | 16 ГБМ | 32 ГБМ | 32 ГБМ | |
Расчетная мощность (Вт) | 75 | 280 | 450 | 175 | 2 |
TOPS (тера операций в секунду) | 23 | 45 | 90 | ? | 4 |
ТОП/Вт | 0.3 | 0.16 | 0.2 | ? | 2 |
Как видите, тактовые частоты TPU не кажутся такими уж впечатляющими, особенно когда современные настольные компьютеры могут иметь тактовые частоты в 3-5 раз выше. Но если вы посмотрите на две нижние строки таблицы, то увидите, что TPU могут обрабатывать от 23 до 90 тераопераций в секунду, потребляя всего 0,16–0,3 Вт мощности. По оценкам, TPU в 15-30 раз быстрее, чем современные CPU и GPU при использовании интерфейса нейронной сети.
С каждой выпущенной версией новые TPU демонстрируют значительные улучшения и возможности. Вот несколько основных моментов для каждой версии.
- ТПУv1: Первый публично анонсированный TPU. Разработан как 8-битный механизм умножения матриц и ограничен решением только целых чисел.
- ТПУv2: Поскольку инженеры заметили, что TPUv1 был ограничен в пропускной способности. Эта версия теперь имеет удвоенную пропускную способность памяти с 16 ГБ ОЗУ. Эта версия теперь может решать с плавающей запятой, что делает ее полезной для обучения и логических выводов.
- ТПУv3: Выпущенный в 2018 году, TPUv3 имеет в два раза больше процессоров и в четыре раза больше микросхем, чем TPUv2. Обновления позволяют этой версии в восемь раз повысить производительность по сравнению с предыдущими версиями.
- ТПУv4: это последняя версия TPU, анонсированная 18 мая 2021 года. Генеральный директор Google объявил, что эта версия будет иметь производительность более чем в два раза выше, чем у TPU v3.
- Край ТПУ: эта версия TPU предназначена для небольших операций, оптимизированных для использования меньшего количества энергии, чем другие версии TPU в целом. Хотя Edge TPU потребляет всего два ватта мощности, он может выполнять до четырех терра-операций в секунду. Edge TPU можно найти только на небольших портативных устройствах, таких как смартфон Google Pixel 4.
Как вы получаете доступ к TPU? Кто может их использовать?
TPU — это проприетарные процессоры, разработанные Google для использования с платформой TensorFlow. Доступ третьих лиц к этим процессорам разрешен с 2018 года. Сегодня к TPU (за исключением Edge TPU) можно получить доступ только через Google. вычислительные услуги через облако. В то время как оборудование Edge TPU можно купить через смартфон Google Pixel 4 и его набор для прототипирования, известный как Coral.
Coral — это USB-ускоритель, который использует USB 3.0 Type C для передачи данных и питания. Он обеспечивает ваше устройство вычислениями Edge TPU, способными выполнять 4 TOPS на каждые 2 Вт мощности. Этот комплект может работать на компьютерах с Windows 10, macOS и Debian Linux (он также может работать с Raspberry Pi).
Другие специализированные ускорители ИИ
В связи с тем, что в последнее десятилетие в моде искусственный интеллект, Big Tech постоянно ищет способы сделать машинное обучение максимально быстрым и эффективным. Хотя TPU от Google, возможно, являются самыми популярными ASIC, разработанными для глубокого обучения, другие технологические компании, такие как Intel, Microsoft, Alibaba и Qualcomm, также разработали свои собственные ускорители искусственного интеллекта. К ним относятся Microsoft Brainwave, Intel Neural Compute Stick и IPU (Intelligence Processing Unit) от Graphicore.
Но, несмотря на то, что разрабатывается все больше оборудования для ИИ, к сожалению, большинство из них еще не доступны на рынке, а многие никогда не появятся. На момент написания статьи, если вы действительно хотите купить оборудование для ускорителя ИИ, наиболее популярными вариантами являются покупка набора для прототипирования Coral, Intel NCS, Graphicore Bow Pod или Asus IoT AI Accelerator. Если вам просто нужен доступ к специализированному оборудованию ИИ, вы можете использовать службы облачных вычислений Google или другие альтернативы, такие как Microsoft Brainwave.