Что такое нейронный процессор

Зачем нам нужны нейронные процессоры?

Нейросети сейчас называют новым электричеством. Мы их не замечаем, но пользуемся каждый день. Face ID в iPhone, умные ассистенты, сервисы перевода, и даже рекомендации в YouTube — всё это нейросети. Они развиваются настолько стремительно, что даже самые потрясающие открытия выглядят как обыденность.

Например, недавно в одном из самых престижных научных журналов Nature опубликовали исследование группы американских ученых. Они создали нейросеть, которая может считывать активность коры головного мозга и преобразовывать полученные сигналы в речь. С точностью 97 процентов. В будущем, это позволит глухонемым людям «заговорить».

И это только начало. Сейчас мы стоим на пороге новой технической революции сравнимой с открытием электричества. И сегодня мы объясним вам почему.

Как работают нейросети?

Центральный процессор — это очень сложный микрочип. Он умеет выполнять кучу разных инструкций и поэтому справляется с любыми задачами. Но для работы с нейросетями он не подходит. Почему так?

Сами по себе нейросетевые операции очень простые: они состоят всего из двух арифметических действий: умножения и сложения.

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

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Вот например так выглядят веса для рукописных цифр. Похоже как будто очень много фоток цифр наложили друг на друга.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

А вот так для нейросети выглядит кошка или собака. У искусственного интеллекта явно свои представления о мире.

Но вернёмся к арифметике. Перемножив эти веса на исходное изображение, мы получим какое-то значение. Если значение большое, нейросеть понимает:

— Ага! Совпало. Узнаю, это кошка.

А если цифра получилась маленькой значит в областях с высоким весом не было необходимых данных.

Вот как это работает. Видно как от слоя к слою сокращается количество нейронов. В начале их столько же сколько пикселей в изображении, а в конце всего десять — количество ответов. С каждым слоем изображение упрощается до верного ответа. Кстати, если запустить алгоритм в обратном порядке, можно что-нибудь сгенерировать.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор
Всё вроде бы просто, да не совсем. В нейросетях очень много нейронов и весов. Даже в простой однослойной нейросети, которая распознает цифры на картинках 28 x 28 пикселей для каждого из 10 нейронов используется 784 коэффициента, т.е. веса, итого 7840 значений. А в глубоких нейросетях таких коэффициентов миллионы.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

И вот проблема: классические процессоры не заточены под такие массовые операции. Они просто вечность будут перемножать и складывать и входящие данные с коэффициентами. Всё потому, что процессоры не предназначены для выполнения массовых параллельных операций.

Ну сколько ядер в современных процессорах? Если у вас восьмиядерный процессор дома, считайте вы счастливчик. На мощных серверных камнях бывает по 64 ядра, ну может немного больше. Но это вообще не меняет дела. Нам нужны хотя бы тысячи ядер.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Где же взять такой процессор? В офисе IBM? В секретных лабораториях Пентагона?

На самом деле такой процессор есть у многих из вас дома. Это ваша видеокарта.

Видеокарты как раз заточены на простые параллельные вычисления — отрисовку пикселей! Чтобы вывести на 4K-монитор изображение, нужно отрисовать 8 294 400 пикселей (3840×2160) и так 60 раз в секунду (или 120/144, в зависимости от возможностей монитора и пожеланий игрока, прим.ред.). Итого почти 500 миллионов пикселей в секунду!

Видеокарты отличаются по своей структуре от CPU. Почти всё место в видеочипе занимают вычислительные блоки, то есть маленькие простенькие ядра. В современных видюхах их тысячи. Например в GeForce RTX2080 Ti, ядер больше пяти тысяч.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Всё это позволяет нейросетям существенно быстрее крутиться GPU.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Триллионы операций в секунду звучит внушительно, но для действительно продвинутых нейронных вычислений — это как запустить FarCry на калькуляторе.

Недавно мы игрались с алгоритмом интерполяции кадров DAIN, основанном на машинном обучении. Алгоритм очень крутой, но с видеокартой Geforce 1080 уходило 2-3 минуты на обработку одного кадра. А нам нужно чтобы подобные алгоритмы работали в риалтайме, да и желательно на телефонах.

Именно поэтому существуют специализированные нейронные процессоры. Например, тензорный процессор от Google. Первый такой чип в Google сделали еще в 2015 году, а в 2018 вышла уже третья версия.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор
Производительность второй версии 180 TFLOPS, а третьей — целых 420 TFLOPS! 420 Триллионов операций в секунду. Как они этого добились?

Каждый такой процессор содержит 10-ки тысяч крохотных вычислительных ядер, заточенных под единственную задачу складывать и перемножать веса. Пока, что он выглядит огромным, но через 15 лет он существенно уменьшится в размерах. Но это еще фигня. Такие процессоры объединяться в кластеры по 1024 штуки, без каких либо просадок в производительности. GPU так не могут.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Такой кластер из тензорных процессоров третьей версии могут выдать 430 PFLOPS (пета флопс) производительности. Если что, это 430 миллионов миллиардов операций в секунду.

Где мы и что нас ждёт?

Но как мы уже говорили, это только начало. Текущие нейронные суперкомпьютеры — это как первые классические мейнфреймы занимавшие, целые этажи в зданиях.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

В 2000 году первый суперкомпьютер с производительностью 1 терафлопс занимал 150 квадратных метров и стоил 46 миллионов долларов.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Спустя 15 лет NVIDIA мощностью 2,3 терафлопса, которая помещается в руке стоит 59$.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Так что в следующие 15-20 лет суперкомпьютер Google тоже поместится в руке. Ну или где мы там будем носить процессоры?

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессорКадр из режиссерской версии фильма «Терминатор-2»

А мы пока ждём момента, довольствуемся нейромодулями в наших смартфонах — в тех же Qualcomm Snapdragon’ах, Kirin’ах от Huawei и в Apple Bionic — они уже тихо делают свою работу.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

И уже через несколько презентаций они начнут меряться не гигагерцами, ядрами и терафлопсами, а чем-то понятным для всех — например, распознанных котиках в секунду. Всё лучше, чем попугаи!

Источник

Зачем нужен искусственный интеллект в смартфонах и что он умеет

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Содержание

Содержание

Развитие систем искусственного интеллекта стало трендом в последние несколько лет. Особенно четко это прослеживается на примере смартфонов — ИИ используется для оптимизации множества задач. Давайте посмотрим, где именно он применяется и какие перспективы нас ждут в будущем.

Как работает и где используется ИИ

Чтобы понять, что такое искусственный интеллект в смартфоне, сперва нужно разобрать понятие нейросети. По сути, это упрощенная модель мозга человека. Наш мозг состоит из 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 позволить быстрее взаимодействовать с облачными серверами.

Источник

Зачем в мобильные процессоры вставляют нейронные сети

Зачем в мобильные процессоры вставляют нейронные сети

Виртуальные голосовые ассистенты стали прорывной технологией в мире программного обеспечения. В их основу легли искусственный интеллект, нейронные сети и различные алгоритмы глубокого обучения, позволяющие помощникам самостоятельно обучаться. Теперь искусственный интеллект пришел в процессоры и начинает развиваться на аппаратном уровне. Это выглядит намного более впечатляюще, чем вы можете себе представить.

Компания Apple представила в этом году свой новый флагманский процессор для мобильных устройств — Apple A11 Bionic со встроенной нейронной системой, предназначенной для отдельной работы с искусственным интеллектом.

Технологический гигант Huawei стал первым среди конкурентов после Apple, кто показал аналогичную разработку — Kirin 970 может похвастаться специальным процессором нейронной обработки. По слухам, Samsung тоже ведет работу над подобным чипом. Ожидается, что таким будет следующий флагман линейки Exynos и, возможно, он дебютирует в Galaxy S9.

Другие известные производители, включая Intel, NVIDIA и прочих также работают над процессорами, поддерживающими работу с искусственным интеллектом. Искусственный интеллект быстро набирает популярность и все больше проникает в привычные для нас технологии, выводя их функциональность на новый уровень и в то же время упрощая работу с ними.

Но, как это обычно бывает, производители смартфонов используют различные маркетинговые уловки, чтобы выставить себя в лучшем свете. Сегодня мы разберемся, существует ли искусственный интеллект в мобильных чипах на самом деле и как это работает в действительности.

ИИ как мозг мобильного процессора

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

Процессоры с искусственным интеллектом делают программные задачи типа машинного обучения более эффективными, не более того.

Существует важное различие между искусственным интеллектом и машинным обучением, о котором стоит рассказать.

Искусственный интеллект (AI) — это очень широкая концепция, используемая для описания машин, которые могут «думать как люди» или иметь какую-то форму искусственного мозга с возможностями, очень похожими на наши собственные.

Машинное обучение, в свою очередь, является лишь частью компьютерной программы, разработанной с целью обработки данных и принятия решения на основе результатов. На основе этих же результатов машинное обучение может даже прогнозировать будущие исходы, но до возможностей настоящего искусственного интеллекта ему очень далеко.

В помощь машинному обучению также приходят нейронные сети. Это компьютерные системы, предназначенные помогать программам на основе машинного обучения сортировать данные и позволяющие компьютерам классифицировать их подобными людям способами. Речь о таких процессах, как определение местоположения по картинке или определение марки и цвета автомобиля. Нейронные сети и машинное обучение умны, но они определенно не разумны.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор
Что касается искусственного интеллекта, то в данном случае маркетинговые отделы производителей завышают ожидания. ИИ — это не мозг процессора, а только один из его компонентов. Он повышает производительность и эффективность задач, которые сегодня связаны с умными помощниками. В основном работа ИИ в чипе отвечает за качественное распознавание голоса и изображений, но есть и другие варианты использования.

Нейронные сети — новые типы вычислений (NPU)

Возможно, самый большой вопрос, на который предстоит ответить: почему компании внезапно внедрили искусственный интеллект в АО? В чем заключается работа ИИ в процессоре? Почему именно сейчас?

Наверняка вы заметили, что в этом году популярность нейронных сетей, машинного обучения и гетерогенных вычислений значительно возросла. О них говорят везде и всюду, как о будущем мира технологий.

Все это связано с развитием вариантов использования NPU для пользователей смартфонов. Для них эти технологии помогают расширять уже известные возможности. Обработка аудио, изображений и голоса, прогнозирование человеческой деятельности, обработка языков, ускорение результатов поиска, расширенное шифрование данных — и это еще неполный список того, в чем сегодня задействованы системы ИИ.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Это новый уровень вычислений, требующий больше мощности. Большинство современных 64-битных процессоров не особенно хорошо справляется с искусственным интеллектом. 8- и 16-битная математика с плавающей запятой, сопоставление шаблонов, поиск базы данных, манипуляции с битовыми полями и высокопараллельная обработка — вот лишь некоторые примеры, которые работают быстрее на специализированном оборудовании, чем на ЦПУ общего назначения.

Чтобы учесть рост вычислений и новых вариантов использования, имеет смысл разработать процессор нового типа, который лучше подходит для таких задач. Именно поэтому ИИ теперь внедряется в мобильные чипы для смартфонов. Он даст разработчикам базовый уровень для программного обеспечения нового поколения.

Эффективность — это ключ

Новые чипы с искусственным интеллектом не просто обеспечивают большую вычислительную мощность. Они также создаются для повышения эффективности в трех основных областях: размер кристалла, уровень вычислений и энергоэффективность.

Сегодняшние системы на чипе топового класса комплектуются десятками компонентов, начиная от драйверов для дисплея и заканчивая встроенным модемом связи. Все это должно вписаться в один маленький кристалл без ограничений по мощности, не обходясь при этом в кругленькую сумму (читайте о законе Мура для получения дополнительной информации). Разработчики процессоров должны придерживаться этих правил при внедрении новых возможностей типа обработки нейронными сетями и собственной системы искусственного интеллекта.

Выделенный процессор искусственного интеллекта (NPU) в системе на чипе смартфона разработан для вычислительной энергоэффективности и определенного подмножества математических задач.

Вместо создания новых, более мощных ядер лучше разработать отдельный выделенный компонент, который может эффективно обрабатывать определенный набор задач.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Мы видели подобное уже много раз за всю историю развития процессоров (вспомните дополнительные модули с плавающей точкой в первых чипах и, например, процессор обработки сигналов Hexagon DSP во флагманских моделях Qualcomm). Сейчас DSP не так популярны из-за быстрой смены вычислительной мощности, однако повышение энергоэффективности и машинное обучение восстанавливают этот спрос.

Что в итоге?

Не стоит сомневаться по поводу заявленных возможностей искусственного интеллекта и нейронных сетей в процессорах нового поколения. Они действительно сделают наши смартфоны умнее, но о настоящем искусственном интеллекте внутри мобильного устройства речи не идет.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Например, Huawei уже рекламирует свой следующий флагман Mate 10 не как смартфон, а как «интеллектуальную машину». Без злых шуток в сторону Apple с ее A11 Bionic не обошлось, но что значит это словосочетание? На деле Mate 10 окажется таким же iPhone 8 — флагманским смартфоном с процессором, умеющим работать с искусственным интеллектом. Huawei переигрывает.

А что думают читатели Pixel Story о процессорах на базе ИИ? Выведут ли они производительность и эффективность современных смартфонов на новый уровень? Пишите в комментариях!

Источник

Нейроморфные вычисления и их успехи

Вот уже лет сто, а то и больше, человечество мечтает, размышляет, пишет, поёт, снимает фильмы о машинах, которые могут думать, рассуждать и, подобно нам, обладают разумом. Произведения литературного и кинематографического искусства — начиная с романа «Едгин», опубликованного в 1872 году Сэмюэлем Батлером, со статьи Эдгара Аллана По «Игрок в шахматы Мельцеля», с фильма «Метрополис» 1927 года — продемонстрировали миру идею, в соответствии с которой машины могут думать и рассуждать как люди. Причём, в этой идее нет ни магии, ни ещё чего-то фантастического. Те, кого захватывала эта идея, вдохновлялись автоматонами из глубокой древности и работами философов — таких, как Аристотель, Раймунд Луллий, Томас Гоббс и многих, многих других.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Идеи философов о человеческом разуме привели к вере в то, что рациональное мышление можно описать, пользуясь алгебраическими или логическими механизмами. Позже, с появлением электронных приборов, компьютеров и закона Мура, человечество попало в состояние постоянного ожидания того, что вот ещё немного — и появится машина, разум которой сравним с человеческим. Некоторые объявляли разумные машины спасителями человечества, а некоторые видели в этих машинах источник великого бедствия, так как полагали, что появление на Земле второй разумной сущности приведёт к уничтожению первой, то есть — людей.

Свет компьютеризированных систем искусственного интеллекта ярко вспыхивал в истории человечества уже несколько раз. Это было в 1950-х, в 1980-х и в 2010-х годах. К сожалению, за обоими предыдущими ИИ-бумами следовала «ИИ-зима». Искусственный интеллект не оправдывал возложенных на него ожиданий и выходил из моды. В том, что наступали эти «зимы», часто винили недостаток вычислительной мощности, неправильное понимание устройства человеческого мозга, или рекламную шумиху и необоснованные домыслы, которыми была окутана тема ИИ. В разгар сегодняшнего «ИИ-лета» большинство исследователей, работающих в сфере искусственного интеллекта, основное внимание уделяют использованию постоянно увеличивающейся доступной им вычислительной мощности для увеличения глубины создаваемых ими нейронных сетей. «Нейронные сети», несмотря на своё многообещающее название, хотя и созданы под влиянием знаний о нейронах головного мозга человека, похожи на сети настоящих нейронов лишь на поверхностном уровне.

Некоторые исследователи полагают, что уровня общего умственного развития, соответствующего человеческому, можно достичь, просто добавляя всё больше и больше слоёв к упрощённым моделям головного мозга, вроде свёрточных нейронных сетей, и скармливая им всё больше и больше данных. Это направление развития ИИ подпитывают те невероятные вещи, на которые способны такие сети, возможности которых постоянно понемногу возрастают. Но нейронные сети, которые, в буквальном смысле слова, творят чудеса, всё же, являются узкоспециализированными системами, умеющими добиваться превосходных успехов лишь в решении какой-то одной задачи. ИИ, который божественно играет в игры Atari, не способен, если человек не оснастит его этими возможностями, писать музыку или размышлять о погодных закономерностях. Более того — качество входных данных очень сильно влияет на качество работы нейронных сетей. Их возможности по формированию логических заключений ограничены. В некоторых сферах применения нейронных сетей это приводит к неудовлетворительным результатам. Есть мнение, что, например, рекуррентные нейронные сети никогда не смогут достичь того уровня общего умственного развития и гибкости, которые характерны для людей.

Но, в то же время, некоторые исследователи пытаются построить что-то, больше похожее на человеческий мозг. Они для этого, как вы, наверное, уже догадались, стремятся к созданию как можно более точных моделей мозга. Учитывая то, что мы живём в эпоху золотого века компьютерных архитектур, похоже, что сейчас — самое время создать что-то новое в сфере аппаратного обеспечения компьютеров. Подобное «железо» уже, на самом деле, создают. Это — нейроморфное аппаратное обеспечение.

Что такое нейроморфные вычисления?

«Нейроморфный» — это модный термин, который используется в применении к любым программам или устройствам, которые пытаются сымитировать деятельность мозга. Хотя человечество ещё очень многого не знает о мозге, за несколько последних лет в этой сфере достигнуты кое-какие замечательные успехи. Одной из широко принятых теорий, касающихся мозга, является гипотеза, в соответствии с которой неокортекс (в широком смысле — место, где принимаются решения и обрабатывается информация) состоит из миллионов кортикальных колонок или модулей. Отдельные системы мозга, такие, как гиппокамп, имеют узнаваемую структуру, которая отличает их от других частей мозга.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

То же самое справедливо и для неокортекса, который сильно отличается в плане структуры, например, от заднего мозга. В неокортексе имеются области, отвечающие, как известно, за выполнение различных функций — таких, как зрение и слух, но мозговое вещество, из которого сформирован неокортекс, в плане структуры, выглядит весьма однородным. Если перейти на более абстрактную точку зрения, то получится, что части неокортекса, ответственные за зрение, очень похожи на те, что отвечают за слух. Но, в то же время, системы заднего мозга сильно отличаются одна от другой, их структура зависит от их функций. Этот подход к пониманию устройства мозга привёл к появлению гипотезы Вернона Маунткасла, в соответствии с которой имеется некий центральный алгоритм, или некая центральная структура, благодаря которым неокортекс решает свои задачи. Кортикальная колонка — это своего рода логическая единица коры головного мозга. Она обычно состоит из 6 слоёв, причём, в пределах колонки, вертикальных связей между этими слоями гораздо больше, чем горизонтальных связей между отдельными колонками. Это значит, что подобную логическую единицу можно несколько раз скопировать и сформировать благодаря этому искусственный неокортекс. У этой идеи есть хорошие перспективы в свете технологий создания сверхбольших интегральных схем. Наши производственные процессы весьма эффективны в деле создания миллионов копий неких структур на маленькой площади.

Хотя рекуррентные нейронные сети (RNN, Recurrent Neural Network) относятся к полносвязным сетям, настоящий мозг придирчиво относится к вопросу о том, что с чем должно быть соединено. Распространённой наглядной моделью нейронных сетей является пирамида, состоящая из отдельных слоёв. Нижний слой извлекает признаки из входных данных, а каждый последующий слой извлекает из того, что подаётся на его вход, всё более абстрактные признаки. Анализ лучше всего исследованных систем мозга показывает, что в этих системах существует широкое разнообразие иерархических структур, в которых имеются обратные связи. В пределах этих иерархических структур существуют обратные и прямые связи, соединяющие, не обязательно по порядку, различные уровни этих структур. Такой вот «пропуск уровней» можно считать нормой, но не жёстким правилом, а это свидетельствует о том, что именно структура связей может быть ключом к тем свойствам, которые демонстрирует мозг человека.

Это привело нас к следующей общепринятой точке зрения: большинство нейронных сетей используют метод «интегрировать-и-сработать» с утечками. В RNN каждый узел испускает сигнал на каждом временном шаге работы сети, а настоящие нейроны испускают сигналы лишь тогда, когда мембранный потенциал нейрона достигает порогового значения (в реальности, правда, всё несколько сложнее). Есть искусственные нейронные сети, в которых учтена эта особенность, и которые более точно, с биологической точки зрения, имитируют работу мозга. Это — так называемые импульсные нейронные сети (Spiking Neural Networks, SNN). Модель, соответствующая методу «интегрировать-и-сработать» с утечками не так точна, с биологической точки зрения, как другие модели — вроде модели Хиндмарша — Роуз или модели Ходжкина — Хаксли. В рамках этих моделей учитываются функции нейротрансмиттеров и синаптических щелей. Но реализация таких моделей требует значительной вычислительной мощности. То, что нейроны испускают сигналы не всегда, означает, что числа должны быть представлены в виде последовательностей потенциалов действия нейронов, а конкретные значения должны быть соответствующим образом закодированы.

Как далеко продвинулись нейроморфные вычисления?

Несколько групп исследователей занимаются непосредственным моделированием нейронов. Например — это делается в рамках проекта OpenWorm: создана модель нервной системы круглого червя Caenorhabditis elegans, состоящая из 302 нейронов. Сейчас цель многих подобных проектов заключается в увеличении количества моделируемых нейронов, в повышении точности моделей, в оптимизации производительности программ. Например, в рамках проекта SpiNNaker создан суперкомпьютер начального уровня, позволяющий, в реальном времени, моделировать работу огромного количества нейронов. А именно, каждое процессорное ядро суперкомпьютера может обслуживать 1000 нейронов. В конце 2018 года проектом достигнут рубеж в 1 миллион ядер, а в 2019 году было объявлено о гранте на постройку подобной машины второго поколения (SpiNNcloud).

Многие компании, правительственные организации и университеты занимаются поиском необычных материалов и технологий для создания искусственных нейронов. В этой связи можно вспомнить о мемристорах, о спин-трансферных осцилляторах, о магнитных переключателях на основе джозефсоновских переходов. Хотя в моделях эти технологии и выглядят весьма многообещающими, огромная пропасть лежит между парой десятков смоделированных нейронов (или нейронов, размещённых на небольшой экспериментальной плате) и тысячами, если не миллионами нейронов, которые необходимы для достижения машиной реальных человеческих возможностей.

Другие исследователи (они работают, например, в IBM, Intel, BrainChip, в некоторых университетах) пытаются создать аппаратные реализации SNN, опираясь на существующие технологии, в частности — на технологию CMOS. Одна из таких платформ разработана Intel и представлена нейроморфным процессором Loihi, на основе которого можно создавать достаточно крупные системы.

Что такое нейронный процессор. Смотреть фото Что такое нейронный процессор. Смотреть картинку Что такое нейронный процессор. Картинка про Что такое нейронный процессор. Фото Что такое нейронный процессор

Нейроморфная система, использующая 64 чипа Loihi для моделирования 8 миллионов нейронов

В первой половине 2020 года специалистами Intel была опубликована работа, в которой шла речь об использовании 768 чипов Loihi для реализации алгоритма поиска ближайшего соседа. Машина, имитирующая работу 100 миллионов нейронов, показала многообещающие результаты, продемонстрировав задержки, выглядящие лучше, чем в системах с большими, заранее рассчитанными индексами, и давая возможность добавлять в набор данных новые записи за время O(1).

Есть ещё крупномасштабный проект Human Brain Project, цель которого — лучше понять биологические нейронные сети. В нём имеется система, называемая BrainScaleS-1, при создании которой применяются цельнопластинные интегральные схемы, использующая для имитации нейронов аналоговые и смешанные сигналы. BrainScaleS-1 состоит из 12 пластин, каждая из которых моделирует 200000 нейронов. Подобная система следующего поколения, BrainScaleS-2, сейчас находится в разработке. Ожидается, что она будет готова в 2023 году.

Проект Blue Brain Project нацелен на создание как можно более точной копии мозга мыши. Хотя речь идёт и не о человеческом мозге, опубликованные в рамках этого проекта исследования и модели бесценны в деле продвижения человечества к созданию нейроморфных искусственных нейронных сетей, способных найти реальное применение.

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

Нужны ли человечеству нейроморфные аппаратные устройства?

Что если человечеству не нужно нейроморфное аппаратное обеспечение? Например, алгоритм обратного обучения с подкреплением (Inverted Reinforcement Learning, IRL) позволяет машинам создавать функцию вознаграждения, не заостряя внимание исследователей на нейронных сетях. Просто наблюдая за чьими-либо действиями можно выяснить цель этих действий и воссоздать их через найденную функцию вознаграждения, которая обеспечивает воспроизведение наиболее эффективных действий эксперта (сущности, за которой осуществляется наблюдение). Проводятся дальнейшие исследования, касающиеся работы с экспертами, поведение которых не является оптимальным, с целью выяснения того, что они делали, и того, что они стремились сделать.

Многие продолжат продвигаться в сфере нейроморфных вычислений, применяя уже существующие сети, сравнительно простые, с использованием улучшенных функций вознаграждения. Например, в свежей статье о копировании частей мозга стрекозы с использованием простой трёхслойной нейронной сети, показано, что систематизированный подход, основанный на хороших знаниях моделируемого объекта, способен дать отличные результаты. Хотя рассмотренные в статье нейронные сети не показывают столь же замечательных результатов, что и стрекозы, живущие в своей среде, трудно сказать, не является ли это следствием того, что стрекозы, в сравнении с другими насекомыми, обладают гораздо лучшими «лётными возможностями».

Каждый год мы видим всё новые и новые успехи техник глубокого обучения. Кажется, что выйдут ещё одна-две публикации, и эта сфера из интересной превратится в потрясающую воображение, а потом — в нечто такое, что и в голове не укладывается. Люди не умеют предсказывать будущее. Может — так всё и будет. А может — и нет. Возможно, если человечество продолжит двигаться в том же направлении — оно найдёт что-то новое, лучше поддающееся обобщению, которое можно будет реализовать средствами существующих нейронных сетей глубокого обучения.

Что делать тем, кому интересны нейроморфные вычисления?

Если вы хотите заняться нейроморфными вычислениями — учитывайте то, что многие проекты, упомянутые в этой статье, являются опенсорсными. Используемые в них наборы данных и модели можно найти на GitHub и на других подобных площадках. Среди таких проектов можно отметить, например, потрясающие NEURON и NEST. Многие энтузиасты нейроморфных вычислений рассказывают о своих экспериментах на OpenSourceBrain. А ещё, например, можно создать собственное нейроморфное «железо» — вроде NeuroBytes (если вас интересует именно тема «железа» — взгляните на этот обзор 2017 года).

В результате можно сказать, что, хотя нейроморфным вычислениям предстоит пройти ещё долгий путь, их будущее выглядит многообещающим.

Занимались ли вы нейроморфными вычислениями?

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *