Искусственный интеллект — сегодня это словосочетание мы слышим отовсюду. Он якобы есть в смартфонах, точно есть в некоторых автомобилях, наверное, имеется в крутой бытовой технике и уж наверняка прячется где-то глубоко внутри робота-пылесоса или вашего нового миксера.
На самом деле, конечно, всё немного иначе. Как водится, нужно начать с истории. Первые попытки поразмыслить над вопросом умных машин датируются ещё XIX веком. Конечно, тогда это не имело ничего общего с современными понятиями искусственного интеллекта и, скорее, подразумевало привычных нам роботов. Более современное понятие ИИ появилось в середине прошлого века. Собственно, тогда же свой труд под названием «Может ли машина мыслить?» написал Алан Тьюринг — автор того самого теста Тьюринга, о котором вспомнил лишь один из опрошенных сотрудников нашей команды, когда Саша решил опросить всех, кто попался под руку.
Если кратко, тест считается пройденным, если общающийся с машиной человек не способен определить, человек это или искусственный интеллект. К слову, в 2014 году впервые в истории суперкомпьютер формально прошёл тест Тьюринга, убедив 33% судей в том, что перед ними человек. Программа, к слову, была создана в Санкт-Петербурге. Однако позже появилось множество материалов, которые ставили под сомнение этот результат, да и сам тест Тьюринга не лишён недостатков. В общем, с этим вопросом закончили.
С середины XX века и практически до его конца большинство обычных людей ассоциировало искусственный интеллект с тем, что максимально точно отражает суть обоих слов термина. То есть с роботами или иными системами, которые имеют настоящий интеллект, но созданы искусственно. Такое понимание было навязано научно-фантастической литературой, а также кинематографом. Однако развитие компьютерных технологий кардинально изменило смысл, вкладываемый в термин «искусственный интеллект».
Сейчас его пихают куда ни попадя. В начале статьи я, конечно, пошутил, но лишь отчасти. Производители и разработчики действительно стали «награждать» искусственным интеллектом чуть ли не каждое второе новое устройство, только вот проблема в том, что в большинстве случаев мы никак не можем проверить, имеется ли вообще ИИ в том или ином продукте или же нас откровенно обманывают.
Почему так происходит? Отчасти потому, что большинство систем искусственного интеллекта находится на облачных сервисах, а потребительские устройства лишь удалённо используют это ПО. Также проблемой является сама суть современных технологий, называемых ИИ — они крайне узкоспециализированы. К примеру, весь «интеллект» домашней камеры наблюдения заключается в способности определять объекты, попавшие в объектив этой камеры. Есть приложения, «интеллект» которых ограничен лишь отслеживанием вполне определённых особенностей использования человеком того или иного устройства. И так далее.
Одним из явных исключений являются голосовые помощники. В частности, Amazon Alexa и Google Assistant. Cortana и Bixby пока отстают по своим когнитивным способностям, а Siri попросту стара и ограничена из-за позиции самой Apple. Отличным примером голосового ИИ нового поколения был Viv. Разработчики этого помощника в своё время показали действительно впечатляющие способности ПО. Однако потом их купила Samsung, и все эти наработки куда-то пропали. По крайней мере, Bixby если что-то из них и получил, то очень мало. Так вот, голосовые помощники являются хорошим примером, потому что они работают в одной из самых важных для человека сфер — они разговаривают. И пытаются делать это, как человек, понимая контекст и свободно сформулированные запросы. Да, они тоже работают благодаря облачным сервисам, но тут это не мешает.
Вторым хорошим примером исключения являются технологии ИИ, не требующие подключения к облаку. Для работы таких систем необходим специальный процессор, который будет работать с системами искусственного интеллекта, так как обычные CPU или GPU (одиночные) для этого подходят не лучшим образом.
Первой компанией, которая представила однокристальную систему со специальным выделенным блоком для работы ИИ, была Huawei. В прошлом году она анонсировала SoC Kirin 970 с блоком NPU (Neural Processing Unit). Об этом блоке известно не очень много. Он состоит из 150 млн транзисторов (около 3% от общего числа транзисторов Kirin 970), а его производительность составляет 1,92 TFLOPS (FP16), но это именно в специфических задачах глубокого обучения, машинного обучения и прочего, что попадает под понятие «искусственный интеллект».
Зачем нужен этот блок? Как уже говорилось, для того, чтобы программное обеспечение, имеющие в основе принципы ИИ, работало непосредственно на смартфоне, а не лезло постоянно в облако. Это удобно, это быстро и это важно для отрасли. Отмечу, что кроме Huawei платформы с подобным блоком есть лишь у Apple (A11 Bionic) и с недавних пор у MediaTek (Helio P60). Также есть слухи, что блок NPU получит среднебюджетный чип Kirin 670. Если так, то Huawei будет первой компанией, кто предложит соответствующие особенности ещё и в аппаратах среднего класса.
Итак, с теорией разобрались. А что с практикой? С практикой всё достаточно просто. В первую очередь ИИ в Huawei Mate 10/10 Pro и P20/P20 Pro используется для работы с камерой. Тут используется одна из самых распространённых технологий в этой сфере — распознавание объектов. То есть ПО, используя систему искусственного интеллекта, пытается определить, что за объект попал в объектив камеры до того, как пользователь сделает снимок. После этого, в соответствии с типом определённого объекта, приложение выставит соответствующие настройки яркости, экспозиции, баланса белого и насыщенности. Очень хорошо работа системы заметна при съёмке зелени (травы, деревьев и так далее). Конечно, обычному пользователю совершенно всё равно, за счёт чего происходит это определение, но мир вперёд двигают не они.
Также ИИ работает при съёмке в портретном режиме, помогая более точно отделять передний фон от заднего, а ещё задействован при работе гибридного зума у P20 Pro и при съёмке ночью. Нет, наличие искусственного интеллекта не является волшебной палочкой, которая автоматически превращает посредственную камеру в отличную. Последние флагманы Huawei снимают отлично, потому что компания годами к этому шла. Но ИИ вносит свою, пусть пока и не самую заметную лепту.
Причём не камерой единой. Если верить Huawei, технология ИИ работает и в некоторых других случаях. К примеру, она ответственна за увеличение быстродействия смартфона в целом за счёт того, что ПО постоянно анализирует действия пользователя и на основе этих данных оптимизирует систему.
Также ИИ повышает автономность смартфона, отслеживая фоновые процессы, привычки пользователя и оптимизируя ОС соответствующим образом. Кроме того, искусственный интеллект задействован в переводчике Huawei, в функции улучшения изображений, попадающихся пользователю на глаза (в браузере или соцсетях), а также при голосовых вызовах, где ИИ помогает подавлять шумы и очищать голос. Далеко не всё из этого можно заметить, даже если знаешь, что там есть ИИ, но это как в случае с сусликом, которого не видно, но он есть. И в данном случае это полезный суслик.
Нужно отметить, что речи о постоянно обучающемся ПО на смартфоне пока не идёт. Вы не сможете улучшить работу какой-то функции на вашем конкретном устройстве за счёт постоянного её использования. Это не тот случай. Пока блок NPU (и другие подобные) нужен скорее для ускорения выполнения алгоритмов нейронных сетей. Проще говоря, для ускорения искусственного интеллекта, хотя звучит это не особо :) Весь же процесс обучения происходит ещё на этапе разработки приложения.
Как всегда, могут найтись те, кто будет кричать, что это всего лишь маркетинг, и на самом деле никакого отдельного блока нет, а если и есть, то ничего он там не ускоряет, всё это обычное ПО с обычными алгоритмами. Действительно, проверить работу блока NPU напрямую вне приложений Huawei достаточно сложно, но возможно.
К примеру, есть такой тест, как Master Lu, который проверяет именно работу аппаратного решения с тремя моделями нейронных сетей. Он работает лишь с платформами Huawei и Qualcomm, но нам и этого достаточно. Итак, результаты ниже.
Как видим, блок NPU в SoC Kirin 970 превосходит сигнальный процессор Hexagon 682 DSP в Snapdragon 835 в 1,6-4 раза, а CPU в Snapdragon 835 и Kirin 960 в этих же тестах отстают на порядок и больше. К слову, это указывает на то, что сигнальные процессоры Hexagon в платформах Qualcomm вполне себе могут использоваться и для работы с ИИ. Интересно будет взглянуть, как покажет себя Hexagon 685 в Snapdragon 845.
Сравнить с Apple A11 Bionic возможности, к сожалению, нет, так как нет мультиплатформенного ПО для этих целей. Но есть результаты самой Huawei.
Как видим, в целом блок NPU действительно работает, и работает весьма быстро относительно альтернативных вариантов.
Также нельзя не вспомнить видео, где смартфон Huawei Mate 10 Pro управлял автомобилем Porsche Panamera и даже смог определить препятствие и объехать его. Причём, если верить данным Huawei, на процесс обучения ИИ новой задаче ушло всего пять недель. Конечно, это весьма условный тест, но он показывает, что обучить аппарат чему-то совершенно новому вполне возможно, была бы нужда.
Есть ещё очень важный момент, который, скорее, важен не конкретно сейчас, а в целом для развития отрасли. Дело в том, что блок NPU в платформе Huawei открыт для сторонних разработчиков. Проще говоря, любой разработчик может создать какое-либо приложение, использующее аппаратное «ускорение» искусственного интеллекта. Да, это сложно и зачастую весьма трудозатратно, поэтому вряд ли мы в ближайшее время увидим кучу таких программ. Тем более, что блок NPU в случае Huawei пока есть только в нескольких самых дорогих смартфонах. Но, поверьте, пройдёт всего пару лет, и такие блоки будут уже обыденностью, а это значит, что разработчикам будет смысл создавать соответствующее ПО. Вы и не заметите, как приложения с ИИ будут вашими постоянными спутниками.
Пока не очень понятно, что с такими технологиями у Qualcomm, всё-таки её платформы являются самыми распространёнными. Но Huawei уже сейчас занимает третье место среди крупнейших производителей смартфонов, а в ближайшие год-два явно выберется и на второе. Так что тот факт, что именно она сейчас активно взялась продвигать технологии ИИ в смартфонах, является крайне положительным. Осталось дождаться более доступных платформ и смартфонов с блоками NPU, а также первых ласточек среди стороннего ПО.
Писал как тестовое на МР?
эм.. не уверен, что понял, о чём вы)
да это так, допущение
так а о чём допущение то? что такое МР?)
ИИ на удаленных устройствах это совсем не его использование на устройстве- это интелекьуальная обработка запроса, но сам запрос как был тупым и имел какую нибудь форму и параметры- они неизменимы
да и вообще понятие искуственного интелекта- это не сложные алгоритмы определения заднего плана при сьемке в портреном режиме, и не нужно путать такое ПО с искуственным интелектом- на то он и есть ним, что он умеет обучаться
для этого нужны либо специфичная архитектура ядра, как у хьюавей и о боже- медиатек, либо большие мощности
вот хорошо, допустим этот блок кирин npu занимается оптимизацией системных процессов- он же не будет иметь такого эффекта как анализ процессов человеком-разработчиком и написанием соответственного ПО, которое будет за положенным точным алгоритмом оптимизировать процессы
потому что ИИ сейчас оставляет желать лучшего, неидеален и не имеет нужной мощности, что может бы и поменяло ситуацию даже с теперешними алгоритмами
вот например голосовые помощники- для них используются адские машины, которые совершенно неэфективны, но результативные