Нейронный процессор в смартфоне что это
Но нейронки сейчас могут творить абсолютно невероятную дичь! И могут нехило прокачать возможности наших смартфонов.
Сегодня мы покажем для чего в будущем будет использоваться нейронный модуль внутри вашего смартфона и какие крутые фишки можно делать уже сейчас!
Obstructional Removal
Начнем с камеры! Сейчас в приложении камеры на любом телефоне, есть масса бесполезных и “интеллектуальных” фич, типа определение сцены. Вот собачка, а вот цветочек говорит нам искусственный интеллект. И что? Мы это и так знаем!
Но вот чего не хватает, так это вот этой штуки: нейросеть удаляет с фотографий мешающие отражения и различные преграды, типа сетчатых заборов. Незаменимая вещь для любителей пофотографировать стройки и зоопарки.
Работает это очень интересно. Рассмотрим пример с отражением.
Во-первых, для того чтобы всё получилось нужно несколько кадров. Зачем? Чтобы вычислить оптический поток пикселей, т.е. движение в кадре. Дальше нейронка понимает, ага вот эти пиксели движутся что-то совсем не туда. Значит это отражение.
А дальше начинается настоящая магия. На основе данных о движении, нейронка восстанавливает два изображения: фон и отражение. Дальше вычитает отражение из фона и готово!
Думаете, такие фичи в смартфонах появятся еще не скоро. Обрадую вас, например в HUAWEI P40 Pro уже показали подобную функцию. Назвали это всё очень по-азиатски - Golden Snap.
Она умеет удалять отражения и даже лишних людей из кадра! По-моему неплохо, ждём теперь реализацию от Гугла а потом и всё подтянутся!
Real Time Person Removal
Кстати, уже есть нейронка которая убирает людей из видео! В реалтайме! Вот тебе и кибер версия социального дистанцирования.
Алгоритм, таскающий картинки
Но мы то с вами что в кадре может мешать не только забор или человек. В кадре может быть лишним вообще всё! В этом случае поможет вот эта волшебная нейросеть.
Как это чудо работает? В нейронную загружается две вещи, изображение и разбивка на объекты в виде масок. То есть немного руками всё равно придётся поработать, но зато потом начинается настоящая услада.
Сначала нейронка определяет порядок объектов. Потом додумавает форму перегороженных объектов. А щзатем достраивает их!
Дальше остается только наслаждаться: можно передвигать объекты по кадру, менять их порядок, удалить всё что хочешь, и даже добавлять на снимок что-то новое.
Ну что тут скажешь, ждем когда алгоритм научат самостоятельно определять границы объектов и можно заворачивать в мобильное приложение. Революция фотожаб не за горами.
Кекфейс
И напоследок, из того что можно пощупать прямо сейчас! Есть масса нейросетей, оживляющих фотки. Но чтобы поиграться с ними нужно копаться на GitHub или в лучшем случае веб-интерфейсе, короче неудобно.
Но вот недавно появился бот в Телеграм @EORA_kekface_bot, который из любой фотки делает прикольные анимированные гифки. Зачем нужны анимоджи? Если можно свой набор стикеров на все случаи жизни.
Как думаете кто из крупных компаний первый догадается что-то такое сделать? Я ставлю на Samsung, не всё же им за Apple повторять.
Итоги
Естественно, то о чём мы рассказали - это капля в море. В плене нейронок, что-то интересное происходит каждый день.
Например недавно Google показал чат-бот, который умеет осознанно общаться на любые темы! И его не отличить от человека.
А еще, добрые люди омолодили, Мону Лизу и, “наше всё” Александра Сергеевича Пушкина.
Зачем в мобильные процессоры вставляют нейронные сети
Виртуальные голосовые ассистенты стали прорывной технологией в мире программного обеспечения. В их основу легли искусственный интеллект, нейронные сети и различные алгоритмы глубокого обучения, позволяющие помощникам самостоятельно обучаться. Теперь искусственный интеллект пришел в процессоры и начинает развиваться на аппаратном уровне. Это выглядит намного более впечатляюще, чем вы можете себе представить.
Компания Apple представила в этом году свой новый флагманский процессор для мобильных устройств — Apple A11 Bionic со встроенной нейронной системой, предназначенной для отдельной работы с искусственным интеллектом.
Технологический гигант Huawei стал первым среди конкурентов после Apple, кто показал аналогичную разработку — Kirin 970 может похвастаться специальным процессором нейронной обработки. По слухам, Samsung тоже ведет работу над подобным чипом. Ожидается, что таким будет следующий флагман линейки Exynos и, возможно, он дебютирует в Galaxy S9.
Другие известные производители, включая Intel, NVIDIA и прочих также работают над процессорами, поддерживающими работу с искусственным интеллектом. Искусственный интеллект быстро набирает популярность и все больше проникает в привычные для нас технологии, выводя их функциональность на новый уровень и в то же время упрощая работу с ними.
Но, как это обычно бывает, производители смартфонов используют различные маркетинговые уловки, чтобы выставить себя в лучшем свете. Сегодня мы разберемся, существует ли искусственный интеллект в мобильных чипах на самом деле и как это работает в действительности.
ИИ как мозг мобильного процессора
Компании хотят, чтобы люди верили, что они разработали умный чип — умеющий самостоятельно думать или тот, который может имитировать человеческий мозг.
Как бы они не хотели, сегодняшние даже самые передовые проекты в этой области не так близки к тому, как об этом заявляют. В реальности все намного скучнее, чем можно подумать. По сути, все текущие процессоры со встроенным искусственным интеллектом просто делают программные задачи более эффективными за счет машинного обучения.
Процессоры с искусственным интеллектом делают программные задачи типа машинного обучения более эффективными, не более того.
Существует важное различие между искусственным интеллектом и машинным обучением, о котором стоит рассказать.
Машинное обучение, в свою очередь, является лишь частью компьютерной программы, разработанной с целью обработки данных и принятия решения на основе результатов. На основе этих же результатов машинное обучение может даже прогнозировать будущие исходы, но до возможностей настоящего искусственного интеллекта ему очень далеко.
В помощь машинному обучению также приходят нейронные сети. Это компьютерные системы, предназначенные помогать программам на основе машинного обучения сортировать данные и позволяющие компьютерам классифицировать их подобными людям способами. Речь о таких процессах, как определение местоположения по картинке или определение марки и цвета автомобиля. Нейронные сети и машинное обучение умны, но они определенно не разумны.
Что касается искусственного интеллекта, то в данном случае маркетинговые отделы производителей завышают ожидания. ИИ — это не мозг процессора, а только один из его компонентов. Он повышает производительность и эффективность задач, которые сегодня связаны с умными помощниками. В основном работа ИИ в чипе отвечает за качественное распознавание голоса и изображений, но есть и другие варианты использования.
Нейронные сети — новые типы вычислений (NPU)
Возможно, самый большой вопрос, на который предстоит ответить: почему компании внезапно внедрили искусственный интеллект в АО? В чем заключается работа ИИ в процессоре? Почему именно сейчас?
Наверняка вы заметили, что в этом году популярность нейронных сетей, машинного обучения и гетерогенных вычислений значительно возросла. О них говорят везде и всюду, как о будущем мира технологий.
Все это связано с развитием вариантов использования NPU для пользователей смартфонов. Для них эти технологии помогают расширять уже известные возможности. Обработка аудио, изображений и голоса, прогнозирование человеческой деятельности, обработка языков, ускорение результатов поиска, расширенное шифрование данных — и это еще неполный список того, в чем сегодня задействованы системы ИИ.
Чтобы учесть рост вычислений и новых вариантов использования, имеет смысл разработать процессор нового типа, который лучше подходит для таких задач. Именно поэтому ИИ теперь внедряется в мобильные чипы для смартфонов. Он даст разработчикам базовый уровень для программного обеспечения нового поколения.
Эффективность — это ключ
Новые чипы с искусственным интеллектом не просто обеспечивают большую вычислительную мощность. Они также создаются для повышения эффективности в трех основных областях: размер кристалла, уровень вычислений и энергоэффективность.
Сегодняшние системы на чипе топового класса комплектуются десятками компонентов, начиная от драйверов для дисплея и заканчивая встроенным модемом связи. Все это должно вписаться в один маленький кристалл без ограничений по мощности, не обходясь при этом в кругленькую сумму (читайте о законе Мура для получения дополнительной информации). Разработчики процессоров должны придерживаться этих правил при внедрении новых возможностей типа обработки нейронными сетями и собственной системы искусственного интеллекта.
Выделенный процессор искусственного интеллекта (NPU) в системе на чипе смартфона разработан для вычислительной энергоэффективности и определенного подмножества математических задач.
Вместо создания новых, более мощных ядер лучше разработать отдельный выделенный компонент, который может эффективно обрабатывать определенный набор задач.
Мы видели подобное уже много раз за всю историю развития процессоров (вспомните дополнительные модули с плавающей точкой в первых чипах и, например, процессор обработки сигналов Hexagon DSP во флагманских моделях Qualcomm). Сейчас DSP не так популярны из-за быстрой смены вычислительной мощности, однако повышение энергоэффективности и машинное обучение восстанавливают этот спрос.
Что в итоге?
Не стоит сомневаться по поводу заявленных возможностей искусственного интеллекта и нейронных сетей в процессорах нового поколения. Они действительно сделают наши смартфоны умнее, но о настоящем искусственном интеллекте внутри мобильного устройства речи не идет.
Развитие систем искусственного интеллекта стало трендом в последние несколько лет. Особенно четко это прослеживается на примере смартфонов — ИИ используется для оптимизации множества задач. Давайте посмотрим, где именно он применяется и какие перспективы нас ждут в будущем.
Как работает и где используется ИИ
Чтобы понять, что такое искусственный интеллект в смартфоне, сперва нужно разобрать понятие нейросети. По сути, это упрощенная модель мозга человека. Наш мозг состоит из 90 миллиардов нейронов, то есть клеток, которые обрабатывают и передают электрический сигнал. Они связываются между собой с помощью так называемых синапсов. Только в случае нейросети, нейронами служат специальные ячейки, которым можно присваивать числовые значения.
Например, ячейке a было присвоено значение 0,4. Она передает его соседним «нейронам» — d, e, f. Стрелочки (синапсы) заданным образом изменяют это значение. Связь «a—d» увеличивает значение вдвое, поэтому по итогу получается 0,8. Какие бы сигналы не проходили через этот синапс, они всегда будут умножаться на два.
В реальном мозге происходит точно также — электрический сигнал, следуя от одного нейрона к другому, всегда будет преобразовываться одинаково. Именно поэтому нам бывает сложно побороть устойчивую привычку или адаптироваться к нестандартной ситуации. Например, читая эту статью, вы уже начинаете скучать: сигнал постепенно угасает, зато другие импульсы (посмотреть смешное видео с котиками) наоборот усиливаются. Если вы все-таки заинтересовались, каким образом обучаются нейросети, рекомендуем почитать специализированный материал. А мы перейдем к практической реализации.
Для распознавания объектов сейчас применяют так называемые сверточные нейросети. Именно с помощью них смартфон понимает, что изображено на картинке. Приложение камеры в реальном времени идентифицирует предмет или сцену (животное, человек, пейзаж) и выставляет оптимальные настройки — оптимизирует цветность, яркость и контрастность, экспозицию.
По такому же принципу работает разблокировка по лицу в большинстве смартфонов. Фронтальная камера делает снимок, а алгоритмы сравнивают его с заданным изображением по ключевым точкам. Нейросеть всегда выдает вероятность, а не точный результат: если она большая, то телефон разблокируется. Алгоритмы машинного обучения помогают, если вы надели очки или отрастили бороду. Не узнав вас, система предложит ввести пароль вручную, а затем ИИ вносит корректировки в модель, адаптируясь к изменениям внешности.
В смартфонах дорогого сегмента применяется другой способ. Например, в iPhone 12 специальная камера True Depth проецирует несколько десятков тысяч точек на лицо и строит трехмерную модель. При попытке разблокировки, система сравнивает модель лица с исходной. Этот метод более надежен — мошеннику не удастся обмануть систему, поднеся к камере фотографию лица.
По этому же принципу работает распознавание речи. Отличие лишь в том, что Google Assistant и Siri от Apple отправляют запросы на облачные серверы, где они обрабатываются гораздо быстрее, чем на вашем телефоне.
Нейросети голосовых помощников обучают при помощи огромных массивов информации: начиная от классической литературы и заканчивая живыми текстами из интернета.
Технологии обучения используют и машинные переводчики. Например, Google Translate при помощи рекуррентных двунаправленных нейронных сетей умеет переводить предложения целиком, используя контекст. Раньше это происходило пословно, поэтому в сложных смысловых конструкциях качество перевода страдало.
Также доступен мгновенный перевод при помощи камеры, но для этого нужен интернет, поскольку данные также обрабатываются на удаленном сервере.
Алгоритмы ИИ в современных смартфонах применяются для множества задач. Помимо тех, что мы упомянули, они используются, например, для отслеживания движения объектов в реальном времени (распознавание жестов и эмоций, помощь при фокусировке видео), настройки звука с учетом окружающей среды, улучшения фильтров дополненной реальности в приложениях с поддержкой AR, в системах навигации (чтобы проложить маршрут без пробок) и многих других случаях.
Железная составляющая
Искусственный интеллект также применяется для оптимизации работы самого смартфона. В процессоре обычно используется 6–8 ядер, два из которых — высокопроизводительные, а остальные — энергоэффективные и работают на более низкой частоте.
Нейросеть анализирует привычки пользователя, чтобы обеспечить оптимальное соотношение между расходом батареи и производительностью. Смартфон определяет, какие приложения используются чаще и в какие промежутки времени, затем они автоматически подгружаются в оперативную память.
При прослушивании музыки или чтении веб-страниц не требуется много ресурсов, поэтому задействуется лишь пара-тройка низкочастотных ядер. А для игр и ресурсоемких программ периодически включаются производительные ядра.
Чтобы ускорить обработку вычислений для искусственного интеллекта, производители смартфонов стали выделять под эти задачи отдельный вычислительный блок. Первым процессором с NPU (нейронным модулем) стал Kirin 970 от Huawei, выпущенный в конце 2017 года. Этот чип распараллеливает огромное количество мелких операций, которые выполняются одновременно. Центральный процессор для этого не годится — у него всего 8 ядер. Графический ускоритель содержит тысячи ядер, но потребляет слишком много энергии.
Затем подтянулись и другие гиганты индустрии. Apple применила в iPhone X процессор A11 Bionic, встроив в него Neural Engine, который способен выполнять до 600 миллиардов операций в секунду.
Компания Qualcomm реализовала аппаратную поддержку алгоритмов машинного обучения в процессорах, начиная со Snapdragon 660.
Google встроила в свои смартфоны особый чип Pixel Visual Core, который ускоряет обработку фотографий.
Благодаря ему, снимки HDR+ в фирменном приложении камеры обрабатываются в 5 раз быстрее, чем при использовании обычного ЦП. Телефон делает до 16 фото с разной экспозицией за короткий промежуток времени, а потом объединяет их, используя нейросеть.
На текущий момент самым быстрым процессором в мире является Snapdragon 888. На его презентации большое внимание уделили возможностям нового нейронного ускорителя Hexagon 780. Qualcomm заявляет, что его производительность настолько высока, что ИИ «в режиме реального времени может стереть конкретного человека из видео или вставить кого-то другого».
Перспективы будущего
Прогресс движется к тому, что на смартфонах скоро можно будет запускать даже глубокое машинное обучение (так называемое Deep Learning). Говоря проще, увеличится количество слоев нейронов — сети смогут выполнять более сложные задачи.
Например, фронтальная камера будет постоянно анализировать лицо владельца, чтобы понять его физическое состояние. Повысится точность распознавания речи, при этом NPU будет лучше понимать конкретные намерения пользователя. Распространение сетей 5G позволить быстрее взаимодействовать с облачными серверами.
Компьютеры классические и нейронные идут близко, но всё-таки порознь. И мы, согласитесь, к такому разделению не просто привыкли, а и считаем естественным — ибо в первую очередь у них разные области применения. Классическая архитектура берёт на себя рутину механического перемалывания цифр, тогда как искусственные нейросети занимаются распознаванием образов в сравнительно редких пока особых случаях. Смычка, вероятно, когда-нибудь произойдёт, но когда и где она случится — кто способен предсказать?
Вот почему так интересно было наткнуться в новостях на упоминание именно такого примера. И не где-нибудь в лабораториях, а в чипе, который производится миллионными тиражами — конкретно, в микропроцессоре Samsung для смартфонов Galaxy S7 и Note 7. Сенсации там никакой нет, Samsung скорее всего даже не первая, кто на подобное решился, но это не делает менее волнующим ответ на вопрос: для чего обычному процессору нейроны?
Микропроцессор, о котором идёт речь, это восьмиядерная система-на-чипе (SoC) Exynos 8890. Там три стандартных ядра ARM Cortex-A53, одно графическое, а оставшиеся четыре как раз и представляют особый интерес: они тоже ARM-производные (ARM v8), но Samsung многое и сильно в них поменяла, потратив на это три года и фактически создав собственную микроархитектуру, названную Exynos M1. Это мобильная энергоэкономичная суперскалярная многоконвейерная архитектура, но не этим она уникальна. Уникальной среди собратьев её делает блок предсказания ветвлений, основанный на искусственной нейросети.
Вплоть до нулевых годов тут применялись два подхода. Первый и самый грубый: статические методы предсказания. Попросту, делается какое-то предположение относительно срабатывания того или иного условного перехода — причём, что важно, предположение это не зависит от предыдущих результатов прогона данного куска или вообще программы. Недалеко ушли от них и методы динамические или, как правильней было бы их назвать, статистические. Тут уже предположение делается на основе предыдущих результатов исполнения: грубо говоря, чем чаще переход срабатывал в прошлом, тем чаще предсказатель ветвлений будет предполагать его срабатывание в будущем. Несмотря на примитивность, оба метода работают на удивление хорошо, давая около 90% правильных предсказаний. Но настал день, когда и этого стало недостаточно. К счастью, решение уже было предложено учёными. Да, применить искусственную нейросеть!
Тут, правда, мы ступаем на землю если не неисследованную, то малоизвестную. Проблема, во-первых, в том, что сама тема ещё сравнительна юна: первые теоретические работы по нейронным предикторам ветвления относятся к началу нулевых. А во-вторых, производители не горят желанием раскрывать секреты лично своих конструкций — и даже Samsung, удивившая всех признанием (а рассказала она об этом на пресс-конференции, и даже дала кое-какие иллюстративные материалы), не исключение, потому что рассказала только в общих чертах.
Сама идея простая. Вместо грубого статистического предсказания, поставить многослойную нейросеть (хорошо подходит, в частности, классический перцептрон, который эффективно реализуется на полупроводниках), которая станет учиться и предсказывать ветвление кода. Выигрышей предполагается два. Прежде всего, уже первые теоретические изыскания показали, что нейронный предиктор может быть как минимум столь же эффективным, как и статистический. И потом, ресурсы, им занимаемые (память и время), растут с увеличением выполненного кода не экспоненциально, как у простых предсказателей, а только линейно. И их, конечно, стали применять.
Вот только примеров я, увы, дать не смогу. Даже в свежайшем и подробнейшем описании микроархитектур различных процессоров, детали нейронных блоков отсутствуют. Известно лишь, что их теперь применяет Samsung, что AMD поставила такой блок в Zen, что Intel подозревается в использовании нейронов в своих чипах. Но и только. Всё остальное — секрет! Из опыта (опять-таки больше теоретического) ясно, что большой проблемой должна стать или уже стала сравнительная медлительность нейроструктур по сравнению с грубо-механическими предсказателями — и ведётся поиск обходных путей; к счастью, по искусственным нейросетям вообще накоплен большой практический материал.
Из всего этого следует, что если теперь кто-то раскошелится на последние смартфоны Samsung, то сможет с полным правом заявлять, что в кармане у него лежит нейрокомпьютер, ну или по крайней мере компьютер, построенный с применением заимствованных у Природы структур. Но это скорее забавы ради. Интересней попробовать предположить, куда приведёт нас выбранная дорожка. Не возвещает ли появление нейроблока внутри классических микропроцессоров потерю классической архитектурой очередного значительного куска рынка? Ведь отняли же графические сопроцессоры область параллельных вычислений!
Автор - Евгений Золотов.
ISP (Image Signal Processor), который уже давно не просто отдельное ядрышко для обработки фотографий с каждым годом все сложнее и сложнее, в принципе большая часть алгоритмов именно предсказания и работы с большими массивами изменяющихся данных куда энергоффективнее рассчитывается с помощью нейросетей. Если раньше проблемы не основной функциональности решали добавлением дополнительных отделительных блоков процессоров или сопроцессоров, заточенных на решение конкретного типа задач, например воспроизведения музыки или отдельного сопроцессора управления датчиками (привет Apple M7), то сейчас эти и основные чипы все больше "умнеют", обзаводясь зачатками несамобучаемых нейросетей, заточенных под конкретную направленность. Как вы понимаете, чаще всего, чем быстрее процессор решает задачу, тем меньше он тратит на нее энергии, так, в первую очередь это именно ради энергоэффективности.
Постепенно мы придет к тому, что подавляющее большинство операций в смартфоне будет именно подобного характера, как свое время транзисторный бюджет начала отжирать графика от традиционного цпу, так в дальнейшем блоки нейропроцессора будут вытеснять основные числодробилки (ЦПУ+ГПУ). Просто - напросто потому, что сам принцип работы смартфона изменится, зачаток этого мы видим в Moto X и ok google (кстати, сам Гугл активно использует нейросети и даже нейрокомпьютеры в своих дата центрах), когда смартфон старается не просто предугадать действия пользователя, но и помочь ему их сделать максимально быстро и удобно.
Затем, стоя в пробке смартфон предложит со скидкой припарковать машину в тц у которого из-за дождя мало посетителей, парковка пустует и проехать на метро. Может быть даже предложит посетить тамошнюю лапшичную, где опять таки предложит скидку на горячий чай. Вот вы думаете, нафиг мне реклама, да за свои же деньги, ребят, вы же на своих смартфонах ежедневно видите кучу рекламы и ничего. А тут оно еще будет максимально удобным и со временем ненавязчивым, на самом деле предугадывая ваши желания и при этом на связи со всем городом, да и миром. Это сейчас вы поискав фотографии с пляжа получите в контекстной рекламе предложения туроператоров, в будущем просто узнав ваш график и на основании вашего состояния и психологического портрета смартфон будет ненавязчиво предлагать съездить отдохнуть, причем максимально удобные именно для вас (вашего кошелька на тот момент) и в то самое время, когда вы согласитесь.
Про то,что именно нейросети обсчитывают, кто на фотографии или видео, даже говорить нечего. Пожалуй с этого стоит начать, но я закончу, по сути нейросети не заменяют полностью классические процессоры, но серьезно дополняют их именно в том, в чем те слабы - в работе с внешней средой, а уж для чего это используют их настоящие хозяева - предугадать несложно.
Начиная с iPhone X, ко всем своим чипам серии A Apple добавляет приставку Bionic. Природная натура этого слова подкрепляется особенным модулем внутри процессора, который называется Neural Engine.
Он состоит из вычислительных блоков, которые помогают iPhone решать задачи, связанные с контекстом.
Перед Neural Engine не стоит задача решить уравнение или отобразить изображение. Это гораздо более тонкая технология, без которой наши смартфоны оставались бы скучными и не умели узнавать нас в лицо.
Ниже расскажу, почему Apple хвалится развитием этого элемента в своих чипах с такой же частотой, как с CPU и GPU. Объясню, зачем именно нужен Neural Engine в том числе в MacBook. А ещё проследим, как нейроядра внутри iPhone стали третьей необходимой силой после вычисления и графики.
Как устроены чипы. CPU и GPU на ПК отдельно, у мобильных вместе
В большинстве ПК, особенно домашних, установлены два главных чипа: CPU и GPU. Они физически находятся в разных частях системного блока и в большинстве случаев созданы разными производителями.
CPU расшифровывается как Central Processing Unit и переводится «центральное вычислительное устройство».
Отвечает за сложные и параллельные вычисления инструкций. Без него компьютер не заработает.
GPU расшифровывается как Graphic Processing Unit и переводится «графическое вычислительное устройство».
Формирует и выводит на монитор визуальную информацию, красиво отображает вычисления процессора и его ОС (операционной системы).
Иногда GPU встраивают прямо в CPU, такой элемент слабее и чаще всего служит временной заменой, чтобы вы видели происходящие внутри компьютера размышления, пока ищете замену дискретной видеокарте. Такие поставляются отдельными модулями.
В компактных устройствах железо работает не только на выдачу мощного результата, но и на сохранение энергии. Важно, чтобы устройство не перегрелось из-за избытка тепла от большой вычислительной нагрузки.
Тут встроенная в CPU графика уже главная, дополнительные процессоры, как правило, либо обрезаны в мощности, либо полноценно работают только при подключении к сети. В смартфонах и планшетах дискретного модуля GPU в принципе не бывает.
Единственный управляющий чип становится чем-то больше обычного CPU. Он превращается в комплексную систему.
И Apple уже добилась в этом лидирующей позиции, поэтому стала интегрировать в процессоры новый тип вычислительных транзисторов.
Есть CPU, есть GPU, а есть Neural Engine
История началась с процессоров для iPhone, в которые постепенно интегрировались новые элементы. Например, Neural Engine. Он ускоряет умные фишки камеры, помогает лучше анализировать голос для Siri и быстрее распознавать людей на ваших фотографиях.
Чуть позже тем же подходом Apple сделала комплексный чип M1 для своих Mac. Внутри него этих ядер ещё больше, и они ежедневно помогают решать те же задачи, что и в iPhone.
В потребительских устройствах для этих целей отдельный чип не ставили, но за ним постепенно закрепляется похожее название.
NPU расшифровывается как Neural Processing Unit и пока никак общепринято не переводится на русский.
Термин постепенно входит в употребление, но каждый производитель называет его по-своему. Будем опираться на формировку Apple, которая звучит как Neural Engine или «Нейронный процессор».
Он ускоряет распознавание речи, выявление фигур людей и конкретных личностей, точное определение пород кошек или видов цветов, отслеживание объектов в реальном времени и быстро решает операции, заточенные на интеллектуальное распознавание одного среди множества .
Должно соблюдаться условие: система, которую будут запускать на таком типе процессора, должна быть сначала натренирована на других примерах.
Первый Neural Engine использовали исключительно для Face ID
Apple полностью контролирует производство своих процессоров начиная с iPhone 4 и чипа внутри него A4, которые вышли в 2010 году.
Компания среди первых начала внедрять новые технологии в чипы на мобильных устройствах. Например, переход на 64-битную разрядную систему, интеграцию сопроцессора движения и фотографии, использование минимальных техпроцессов (7 нм, 5 нм).
Ключевым стал 2017 год, когда вышел iPhone X. На его презентации впервые пошла речь о небольшом нейросетевом модуле внутри чипа A11, который Apple впервые и до сих пор называет с приставкой Bionic.
Тогда этому маленькому блоку внутри чипа уделили каплю внимания, чтобы рассказать, как он юрко отличает настоящее лицо от искусственной копии в виде театральной маски. Мы узнали о Neural Engine только то, что он способен обучаться по внешнему виду пользователя, и на этом всё.
С каждым новым поколением NPU значительно развивали и обучали новым возможностям.
В 2021 году он помогает искать определённых людей и создавать воспоминания в приложении Фото, анализировать 40 мимических лиц в реальном времени и создавать Киноэффект в iPhone 13.
Эволюция оказалась впечатляющей.
Как развивался Neural Engine в iPhone
Каждая презентация Apple не обходится без упоминания сопроцессора и без указания, насколько выросла его производительность.
Ниже будет полный список iPhone начиная с 2017 года, с описанием возможностей, которые добавляла компания вместе с улучшением Neural Engine и его ядер.
iPhone X
В чипе A11 внутри iPhone X технология появилась первые.
Два ядра, которые служили исключительно для того, чтобы корректно распознавать лица.
Производительность: 600 миллиардов операций в секунду.
iPhone XS и iPhone XR
В A12 внутри iPhone XS и iPhone XR поставили 8 нейроядер, к которым добавили машинное обучение в других приложениях кроме Face ID и «умную вычислительную систему».
Эта система распознаёт тип задачи, поступающей в процессор, и решает, на каких блоках её обрабатывать: в Neural Engine, CPU или GPU.
Машинное обучение улучшило:
• Предложения слов в клавиатуре
• Подборку фотографий в Воспоминаниях
• Вывод полезных мест в Картах
• Адаптацию экрана True Tone
• Поиск снимков в Фото.
А ещё Neural Engine второго поколения позволил выполнять машинное обучение в реальном времени .
Это было нужно для портретного режима с одной камерой на iPhone XR и для AR-эффектов камеры. Например, чтобы накладывать сценический свет или отслеживать движение 50-ти мышц лица во время звонка по Face Time.
Именно благодаря обучению «на ходу» режим портрета из iOS 15 в Face Time доступен на смартфонах с процессором A12 Bionic и новее.
Производительность: 5 триллионов операций в секунду.
iPhone 11 и iPhone 11 Pro
В A13 внутри iPhone 11 установлен Neural Engine снова из 8 ядер.
Тогда блоку повысили мощность на 20% и снизили потребление на 15% за счёт выборочной подачи энергии на разные области A13.
Вместе с машинным обучением NPU улучшил распознавание речи и стал быстрее справляться с трекингом лицевой мимики в реальном времени.
В этот раз в CPU добавили блоки для ускорения машинного обучения, которые стали в 8 раз быстрее проводить матричные вычисления. Вероятно, именно они дали ускорение нейроядрам.
Производительность: 6 триллионов операций в секунду.
iPhone 12 и iPhone 12 Pro
В A14 из iPhone 12 Neural Engine стал в два раза больше и состоял из 16 ядер.
NPU стал на 80% быстрее того, который был установлен в A13.
Эти улучшения помогли внедрить Deep Fusion во все камеры iPhone, включая фронтальную и сверхширокоугольную. Последняя, несмотря на то, что физически была идентична прошлому поколению, стала снимать более чёткие фотографии.
Этот же NPU установлен во все чипы серии M1 от Apple для Mac.
Производительность: 11 триллионов операций в секунду.
iPhone 13 и iPhone 13 Pro
В A15 из iPhone 13 Neural Engine остался с теми же 16 ядрами. Но они стали заметно мощнее. Даже в новых M1 Pro и M1 Max такого нет.
На этой презентации Apple напомнила, что установленные в Neural Engine элементы для машинного обучения работают эффективно за счёт блоков их ускорения в разделе CPU.
На данный момент это самый мощный NPU среди продуктов Apple. Главной его возможностью стала запись видео с глубоким размытием. Режим в приложении Камера в любом из iPhone 13 называется Киноэффект.
Ещё он помогает Siri распознавать диктовку и корректировать навигатор внутри Apple Maps, делать трекинг предметов в реальном времени, распознавать виды растений и ускорять перевод текста с фотографии в письменный.
Производительность: 15,8 триллионов операций в секунду.
В чём ещё помогает Neural Engine в смартфонах
Многие считают Siri отстающей в развитии по сравнению с другими ассистентами, но на самом деле за этой технологией стоят сложные процессы.
Раньше, когда вы задавали вопрос «Скажи курс доллара к рублю», смартфон записывал данные и отправлял их на сервер с сопроводительными данными вроде обладателя голоса, местоположения, времени суток, чтобы было проще сформулировать ответ. Позже ответ обрабатывался и отправлялся обратно.
Сейчас нейросетевой чип в смартфоне берёт обработку натуральной голосовой модели на себя. Он в реальном времени превращает речь в запрос сам, и в некоторых ситуациях берёт на себя его полную обработку. Он сам понимает, что пользователь хочет узнать и сам же формирует сценарий, по которому будет отвечать.
Например, если вы попросите смартфон сделать сложные расчёты, он справится с ними намного быстрее, чем раньше, потому что сделает это без отправки на сервера. А расчёт начнёт до того, как вы закончите говорить.
Своими рассчётами Neural Engine приближает смартфон к граничным вычислениям . Это метод сложных распределительных вычислений, когда источник информации и вычислительные мощности для их сетевой обработки находятся как можно ближе друг к другу, чтобы ускорить выдачу результата.
Зачем Neural Engine в Mac
Огромный кусок главных функций M1 занимает Neural Engine в правом верхнем углу
Apple постепенно переводит компьютеры Mac на свои процессоры. Год назад, в ноябре 2020-го представили чип M1, в октябре 2021-го к ним добавились M1 Pro и M1 Max.
Несмотря на разницу в производительности CPU и GPU, в каждом из них установлен один и тот же NPU из 16 ядер с мощностью 11 триллионов операций в секунду. То есть он дублирует таковой из A14 внутри iPhone 12.
Быстрое выделение людей в Photoshop с помощью машинного обучения
Выделенные нейроядра в Mac ускоряют процессы в работе профессионалов, завязанные на машинном обучении.
Фотографы могут применить их в Pixelmator Pro, который увеличивает разрешение изображения с помощью процессов машинного обучения, которые активирует Neural Engine.
Видеографы могут использовать функцию умного отслеживания объектов в Final Cut Pro X, чтобы быстрее обрезать видео.
Для разработчиков, учёных и инженеров в их специализированных расчётах и преобразованиях данных, постановки виртуальных экспериментов он тоже будет полезен.
Например, на базе машинного обучения работает платформа TensorFlow. Она помогает внедрять в приложения такие технологии, как распознавание жестов, понимание контекста в естественных вопросах, перенос стиля одного изображения на другое. Чем быстрее будет железо, сделанное для него, тем лучше заработают эти функции.
Часть iPhone, которая делает его iPhone
Apple не устаёт повторять, что её сильная сторона кроется в трепетной связке ПО и железа.
Компания внедряет в свои смартфоны всё больше функций, которые полагаются на заточенные под них ядра. Среди них процессор обработки фото, управления дисплеем, портами и Neural Engine.
«Нейронный движок» помогает смартфону на лету понимать речь, подбирать трогательные Фото в виджете на рабочем столе и выдавать релевантные Воспоминания, отслеживать объекты в кадре Smart HDR, режима портрета и Киноэффекта.
Neural Engine формирует быструю и корректную выдачу данных в Spotlight, распознаёт текст из Камеры, может различать разные виде растений и породы собак.
И в целом он превращает смартфон в устройство, которое с каждым поколением всё лучше распознаёт контекст запроса без подключения к интернету.
Это одна из самых сильных вычислительных сторон iPhone помимо CPU и GPU. И она развивается сумасшедшими темпами из года в год.
Сложно предсказать, на что нейроядра будут способны через 10 лет. Но пока они выполняют свою работу бесшовно и незаметно для пользователя, Apple всё ещё может называть эту технологию магией.
(33 голосов, общий рейтинг: 4.88 из 5)Читайте также: