Содержание
Зачем нам нейроморфные процессоры? | Блог Касперского
Недавно «Лаборатория Касперского» объявила об инвестициях в компанию «Мотив НТ», разрабатывающую собственный нейроморфный процессор «Алтай». Давайте разберемся, что же такое нейропроцессоры, чем они отличаются от обычных и почему это очень перспективное направление развития компьютерной техники.
Компьютерный мозг
В любом современном компьютере, планшете, смартфоне, цифровом плеере есть процессор — универсальное устройство, созданное для выполнения программ. Принципы работы традиционного процессора были заложены еще в сороковых годах прошлого века и не особо менялись: CPU считывает команды и выполняет их по очереди. Любая программа на уровне, который понятен процессору, разбита на самые простые задачи. Она состоит из команд вроде «считать из памяти», «записать в память», «сложить два числа», «умножить», «разделить» и так далее. Нюансов работы процессоров много, но для нашей сегодняшней темы важно, что процессоры долгое время могли выполнять только одну операцию за цикл работы. Этих циклов могло быть очень много — сначала сотни тысяч, потом миллионы, а теперь и миллиарды в секунду. Тем не менее до недавнего времени (до середины первого десятилетия XXI века) в типичном домашнем компьютере или ноутбуке было не более одного процессора.
Многозадачность, или возможность выполнять одновременно несколько программ на одном процессоре, достигалась за счет распределения ресурcов: несколько циклов или тактов отдаем одной программе, потом передаем ресурсы другой, потом третьей и так далее. Когда в продажу поступили доступные по цене многоядерные процессоры, появилась и возможность более эффективно распределять ресурсы. Не только запускать разные программы на разных ядрах, но и выполнять одну программу на нескольких ядрах одновременно. Поначалу это было нелегкой задачей, многие программы еще некоторое время не были оптимизированы для многоядерных или многопроцессорных систем.
Современные процессоры, которые доступны обычному пользователю в магазине, могут иметь 16 или даже 32 вычислительных ядра. Это внушительная цифра, но далеко не максимальная даже в обычной технике для потребителя. Так, в видеокарте Nvidia GeForce 3080Ti установлено 10 240 вычислительных ядер! Почему такая разница? Дело в том, что традиционные процессоры гораздо сложнее вычислительных ядер в видеокарте. Обычные процессоры выполняют ограниченный набор простых функций, но специализированные вычислительные модули в видеокарте еще примитивнее, они способны только на совсем уж элементарные операции. Зато они делают это быстро и особенно выгодны там, где нужно выполнять миллиарды таких операций в секунду. Как в играх, где, например, для расчета освещенности сцены нужно сделать очень много относительно простых вычислений для каждой точки в изображении.
Несмотря на такую специфику, вычислительные устройства обычных центральных процессоров или видеокарт мало чем фундаментально отличаются друг от друга. Нейроморфные процессоры (ура, вот они!) отличаются от них радикально. Они не пытаются реализовать набор элементов для выполнения арифметических операций, последовательно или параллельно. В них исследователи делают попытку воспроизвести структуру человеческого мозга!
В вычислительной технике самым мелким «кирпичиком» считается транзистор: таких микроскопических элементов в типичном процессоре компьютера или смартфона имеется несколько миллиардов. В человеческом мозге таким базовым элементом является нейрон, или нервная клетка. Между собой нейроны связаны при помощи синапсов. Несколько десятков миллиардов нейронов составляют мозг человека — очень сложную самообучающуюся систему. Дисциплина, известная как нейроморфный инжиниринг, уже несколько десятилетий ставит перед собой задачу воспроизвести, хотя бы частично, структуру человеческого мозга в виде электронных схем. Процессор «Алтай» наряду с другими разработками — это «железная» реализация ткани мозга с его нейронами и синапсами.
Нейропроцессоры и нейросети
Давайте не будем спешить с выводами. Хотя исследователям (в России и за рубежом) и удается воспроизвести некоторые элементы структуры мозга при помощи полупроводников, это не означает, что в обозримом будущем мы сможем сделать цифровую копию человека. Слишком сложна задача, хотя когда-нибудь, возможно, удастся решить и ее. Но современные нейропроцессоры, полупроводниковые копии структур нашего мозга, имеют вполне практическое применение. Они нужны для реализации систем машинного обучения и нейросетей, на базе которых такие системы работают.
Нейросеть, или нейронная сеть, или, еще точнее, Искусственная нейронная сеть (в противопоставление натуральной в нашей голове) представляет собой множество ячеек, которые способны обрабатывать и запоминать информацию. Классическая модель нейросети — перцептрон — была разработана еще в шестидесятых годах прошлого века. Это множество ячеек можно сравнить с матрицей фотокамеры, но еще и способной обучаться, интерпретировать получаемое изображение, находить в нем закономерности. Особые связи между ячейками и разные типы ячеек обрабатывают информацию так, чтобы, например, различать демонстрируемые перед фотокамерой карточки с буквами. Но это все достижения шестидесятилетней давности — за последнее десятилетие крайне популярным стало применение систем машинного обучения и нейросетей в абсолютно повседневных задачах.
Уже давно решена проблема распознавания букв. Камеры на автотрассах распознают номер автомобиля под любым углом, в любое время суток, даже если он заляпан грязью. Типичная задача для нейросети — взять фотоснимок (например, фото стадиона сверху) и посчитать количество людей. У этих задач есть нечто общее: вводные всегда немного нестандартны. Обычная старомодная программа, скорее всего, сможет распознать автомобильный номер, сфотографированный анфас, а вот с фотографией под углом не справится. Нейросети мы выдаем для обучения огромное количество фотографий автомобильных номеров (или чего-то другого), и она учится отличать один объект от другого в любых условиях (букву А от буквы К). И делает это иногда настолько хорошо, что, например, в медицинской сфере может ставить диагноз лучше (или раньше), чем обычный доктор.
Но вернемся к нейросетям. Вычисления, требуемые для реализации одного из алгоритмов нейронной сети, достаточно простые, но таких операций требуется очень много. Это самая подходящая работа не для традиционного процессора, но для видеокарты с тысячами и десятками тысяч вычислительных модулей. Можно сделать еще более специализированный процессор, выполняющий набор вычислений, необходимый только для работы конкретного алгоритма обучения. Он будет чуть дешевле и немного эффективнее. Проблема в том, что нейросеть (в смысле — множество узлов-клеток, воспринимающих и обрабатывающих информацию, связанных множеством связей друг с другом) все эти устройства строят программно. Нейропроцессор реализует схему нейросети на аппаратном уровне.
Результат такой аппаратной реализации выражен в большей эффективности. Нейропроцессор Loihi компании Intel состоит из 131 072 искусственных нейронов, которые соединены между собой на порядок большим количеством синапсов (более 130 миллионов). Важным преимуществом такой схемы является низкое энергопотребление при отсутствии работы, в то время как на обычных графических процессорах энергопотребление остается достаточно высоким даже в простое. Это, плюс теоретически более высокая производительность в задачах обучения нейронной сети, обеспечивает гораздо меньшее энергопотребление. Так, первое поколение процессора «Алтай» потребляет в 1000 раз меньше электроэнергии, чем аналогичная реализация на графическом ускорителе.
Нейросети и безопасность
130 тысяч нейронов — это гораздо меньше, чем десятки миллиардов в человеческом мозге. Исследования, позволяющие приблизить нас к более полному пониманию того, как работает мозг человека, создать куда более эффективные самообучаемые системы, только начались. Важно, что нейропроцессоры востребованы уже сейчас, так как теоретически позволяют более эффективно решать уже имеющиеся задачи. Вплоть до встроенного в ваш смартфон распознавателя образов, который может определить вид грибов, найденных вами в лесу. Уже сейчас специализированные процессоры для обработки видео и подобных задач массово встраиваются в смартфоны и ноутбуки. Нейропроцессоры развивают идею машинного обучения еще дальше, представляя более эффективное решение.
Почему данное направление интересно «Лаборатории Касперского»? Во-первых, мы уже активно применяем нейросети и в целом технологии машинного обучения в своих продуктах. Это, например, технологии обработки большого количества информации о работе корпоративной сети — мониторинга данных, которыми узлы обмениваются между собой и внешним миром. Технология машинного обучения позволяет определить аномалии в потоке трафика, найти необычную активность, которая может быть результатом вторжения или злонамеренных действий инсайдера. Во-вторых, «Лаборатория Касперского» также разрабатывает собственную операционную систему KasperskyOS, задача которой — гарантированно безопасное выполнение задач, возложенных на устройство под ее управлением. Интеграция «аппаратных» нейросетей в устройства под управлением KasperskyOS в будущем также имеет большие перспективы.
В самом конце всего этого прогресса стоит задача появления настоящего Искусственного Интеллекта — машины, которая не только может решать за нас отдельные задачи, но и, скажем, ставить перед собой новые. Это принесет множество проблем этического плана, да и чисто по-человечески будет нелегко осознавать, что появился «компьютер», который умнее человека. Впрочем, до этого и правда далеко. Лет пять назад все были уверены, что системы автоматического управления автомобилем уже почти готовы, надо только «допилить» пару деталей. Такие системы тоже во многом завязаны на машинное обучение, и в 2022 году в этом направлении по-прежнему столько же возможностей, сколько и проблем. Даже эту узкую задачу, с которой справляется человек, пока нелегко полностью доверить роботу. Именно поэтому важны новые разработки в этой сфере — как на уровне программ и идей, так и на уровне железа. Все это вместе, может, и не приведет к появлению «умных роботов», как фантастических книгах. Но точно сделает нашу жизнь немного удобнее и безопаснее.
Советы
Фальшивые финансовые регуляторы
В электронных письмах мошенники притворяются представителями государственных органов, чтобы выманить у пользователей их личные данные и деньги.
Продавцы воздуха в онлайн-магазинах
Рассказываем, как мошенники обманывают пользователей известного маркетплейса с помощью поддельной страницы оплаты товара.
Подпишитесь на нашу еженедельную рассылку
- Email*
- *
- Я согласен(а) предоставить мой адрес электронной почты АО “Лаборатория Касперского“, чтобы получать уведомления о новых публикациях на сайте. Я могу отозвать свое согласие в любое время, нажав на кнопку “отписаться” в конце любого из писем, отправленных мне по вышеуказанным причинам.
3DNews Технологии и рынок IT. Новости Искусственный интеллект, машинное обучен… Нейроморфные процессоры Intel оказались … Самое интересное в обзорах 04.12.2020 [19:39], Геннадий Детинич Intel два года выстраивает сообщество Intel Neuromorphic Research Community (INRC), которое изучает сферу применения нейроморфных процессоров компании. Сегодня впервые за всё время исследований компания с цифрами в руках доказывает превосходство нейроморфных процессоров в области машинного обучения над графическими и центральными процессорами. Системы на NPU Intel Loihi учатся быстрее и эффективнее, что открывает перед ними массу перспектив. В настоящий момент не существует универсальных тестов, которые могли бы помочь объективно сравнить эффективность машинного обучения на классических вычислительных платформах и на нейроморфных платформах. Поэтому пока Intel и партнёры предлагают сравнивать эффективность систем исходя из скорости и эффективности в реальных сценариях обучения той или иной платформы. Так, компания Accenture обнаружила, что при распознавании голосовых команд чип Intel Loihi делает это с такой же точностью, что и «стандартный GPU», но реагирует на речь на 200 мс быстрее и выполняет распознавание с 1000-кратно более высокой эффективностью. Похожая ситуация с распознаванием жестов. С помощью камеры Intel Loihi выучивает жесты всего за несколько демонстраций, что можно использовать для управления «умным» домом или терминалами в общественных местах. Исследователи из розничной торговли оценили превосходство Loihi для поиска товаров на основе изображений. Они обнаружили, что нейроморфный процессор Loihi генерирует векторы признаков изображения с более чем трёхкратной энергоэффективностью, чем традиционные центральные и графические процессоры. Ранее в этом году Intel уже показывала способность Loihi искать векторы признаков в базах данных с миллионами изображений в 24 раза быстрее и с 30 раз меньшим энергопотреблением, чем в случае x86-совместимых процессоров. При решении задач оптимизации и поиска выяснилось, что NPU Loihi может решать задачи более чем в 1000 раз эффективнее и в 100 раз быстрее по сравнению с традиционными процессорами. Это особенно важно для наделения умениями периферийной автоматики. Например, давая возможность дронам принимать сложные навигационные решения в режиме реального времени. При реализации платформы Loihi в масштабах ЦОД эти умения можно применить для оптимизации логистики или, например, для управления движением поездов. Специалист по робототехнике, компания Rutgers, определила, что её решения на Loihi без потери производительности требуют в 75 раз меньшего энергопотребления, чем реализации на обычных мобильных GPU. В свою очередь, команда исследователей из ETH Zurich выяснила, что задачу слежения за горизонтом платформой дрона процессор Loihi выполняет в 1000 раз лучше с позиций комбинированных показателей эффективности и скорости, чем обычные вычислительные платформы. Очевидно, это не первые и не последние рапорты о достижениях платформы Intel Loihi. Тем более что компания готовит следующее поколение нейроморфных процессоров уже с учётом полученного опыта. Нейроморфные процессоры обещают умнеть на глазах, а алгоритмы их работы будут всё совершеннее и совершеннее. Источник: Если вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER. Материалы по теме Постоянный URL: https://3dnews. ru/1027071/neyromorfnie-protsessori-intel-okazalis-soobrazitelnee-chem-obichnie-graficheskie-i-tsentralnie-protsessori Рубрики: Теги: ← В |
Intel выпускает свой нейроморфный процессор следующего поколения — и что еще?
Майк Дэвис, директор лаборатории нейроморфных вычислений Intel, рассказывает об усилиях компании в этой области. А с запуском нового нейроморфного чипа на этой неделе он рассказал Арсу об обновлениях.
Несмотря на свое название, нейронные сети лишь отдаленно связаны с теми вещами, которые вы найдете в мозгу. Хотя их организация и то, как они передают данные через уровни обработки, могут иметь некоторое общее сходство с сетями реальных нейронов, данные и выполняемые над ними вычисления будут выглядеть очень знакомыми для стандартного процессора.
Но нейронные сети — не единственный способ, которым люди пытались извлечь уроки из нервной системы. Есть отдельная дисциплина, называемая нейроморфными вычислениями, которая основана на аппроксимации поведения отдельных нейронов в оборудовании. В нейроморфном оборудовании вычисления выполняются множеством небольших единиц, которые общаются друг с другом посредством всплесков активности, называемых спайками, и корректируют свое поведение на основе спайков, которые они получают от других.
В четверг Intel выпустила новейшую версию своего нейроморфного оборудования под названием Loihi. Новая версия включает в себя то, что вы ожидаете от Intel: улучшенный процессор и некоторые базовые вычислительные усовершенствования. Но он также поставляется с некоторыми фундаментальными аппаратными изменениями, которые позволят ему запускать совершенно новые классы алгоритмов. И хотя Loihi пока остается продуктом, ориентированным на исследования, Intel также выпускает компилятор, который, как она надеется, будет способствовать более широкому распространению.
Чтобы разобраться в Loihi и в том, что нового в этой версии, давайте вернемся назад и начнем с изучения нейробиологии, а затем начнем с нее.
От нейронов к вычислениям
Основой нервной системы является тип клеток, называемый нейроном. Все нейроны имеют несколько общих функциональных особенностей. На одном конце клетки находятся структуры, называемые дендритами, которые можно считать приемниками. Именно здесь нейрон получает входные данные от других клеток. Нервные клетки также имеют аксон, который действует как передатчик, соединяясь с другими клетками для передачи сигналов.
Рекламное объявление
Сигналы принимают форму так называемых «спайков», представляющих собой кратковременные изменения напряжения на клеточной мембране нейрона. Спайки проходят вниз по аксонам, пока не достигают соединений с другими клетками (называемых синапсами), после чего они преобразуются в химический сигнал, который передается к ближайшему дендриту. Этот химический сигнал открывает каналы, которые позволяют ионам поступать в клетку, запуская новый выброс в принимающей клетке.
Принимающая клетка интегрирует разнообразную информацию — сколько спайков она видела, сигнализируют ли какие-либо нейроны о том, что ей следует вести себя тихо, насколько активной она была в прошлом и т. д. — и использует ее для определения своего собственного состояния активности. Как только порог будет превышен, он вызовет всплеск в собственных аксонах и, возможно, вызовет активность в других клетках.
Как правило, это приводит к спорадическим всплескам активности со случайным интервалом, когда нейрон получает мало входных данных. Однако, как только он начнет получать сигналы, он переключится в активное состояние и быстро выпустит кучу всплесков.
Увеличить / Нейрон с видимыми дендритами (остроконечные выступы вверху) и частью аксона (длинное расширение внизу справа).
NIH
Как этот процесс кодирует информацию и обрабатывает ее? Это интересный и важный вопрос, на который мы только начинаем отвечать.
Один из способов, которым мы пытались ответить на этот вопрос, был с помощью так называемой теоретической нейробиологии (или вычислительной нейробиологии). Это включало попытки построить математические модели, отражающие поведение нервной системы и нейронов, в надежде, что это позволит нам определить некоторые основополагающие принципы. Нейронные сети, ориентированные на принципы организации нервной системы, были одним из достижений этой области. Спайковые нейронные сети, которые пытаются построить на основе поведения отдельных нейронов, — это еще один пример.
Нейронные сети с шипами могут быть реализованы в программном обеспечении на традиционных процессорах. Но также возможно реализовать их аппаратно, как это делает Intel с Loihi. В результате процессор очень сильно отличается от всего, с чем вы, вероятно, знакомы.
Рекламное объявление
Шипы в кремнии
Чип Loihi предыдущего поколения содержит 128 отдельных ядер, соединенных коммуникационной сетью. Каждое из этих ядер имеет большое количество отдельных «нейронов» или исполнительных блоков. Каждый из этих нейронов может получать входные данные в виде спайков от любого другого нейрона — соседа в том же ядре, единицы в другом ядре на том же чипе или вообще от другого чипа. Нейрон интегрирует спайки, которые он получает с течением времени, и, основываясь на запрограммированном поведении, использует это, чтобы определить, когда посылать свои спайки тем нейронам, с которыми он связан.
Вся сигнализация пиков происходит асинхронно. Через заданные промежутки времени встроенные ядра x86 на одном чипе вызывают синхронизацию. В этот момент нейрон пересчитывает веса своих различных соединений — по сути, сколько внимания нужно уделять всем отдельным нейронам, посылающим ему сигналы.
Если говорить о реальном нейроне, то часть исполнительного устройства на чипе действует как дендрит, обрабатывая входящие сигналы из коммуникационной сети частично на основе веса, полученного из прошлого поведения. Затем использовалась математическая формула, чтобы определить, когда активность преодолела критический порог, и вызвать собственные всплески, когда это произойдет. Затем «аксон» исполнительной единицы ищет, с какими другими исполнительными единицами она взаимодействует, и посылает каждой из них шип.
В более ранней версии Loihi шип просто нес один бит информации. Нейрон регистрируется только тогда, когда он его получает.
В отличие от обычного процессора, внешней оперативной памяти нет. Вместо этого у каждого нейрона есть небольшой кэш памяти, предназначенный для его использования. Это включает веса, которые он присваивает входам от разных нейронов, кеш недавней активности и список всех других нейронов, которым отправляются спайки.
Еще одно большое различие между нейроморфными чипами и традиционными процессорами заключается в энергоэффективности, где нейроморфные чипы выходят далеко вперед. IBM, которая представила свой чип TrueNorth в 2014 году, смогла получить от него полезную работу, даже несмотря на то, что его тактовая частота составляла неторопливые килогерцы, и он использовал менее 0,0001 процента мощности, которая потребовалась бы для эмуляции пульсирующей нейронной сети. на традиционных процессорах. Майк Дэвис, директор лаборатории нейроморфных вычислений Intel, сказал, что Loihi может в 2000 раз превзойти традиционные процессоры в некоторых конкретных рабочих нагрузках. «Мы обычно находим в 100 раз меньше энергии для SLAM и других роботизированных рабочих нагрузок», — добавил он.
Перейти к обсуждению…
Зачем нам нейроморфные процессоры?
Недавно «Лаборатория Касперского» объявила об инвестировании в Motive NT, которая занимается разработкой собственного нейропроцессора «Алтай». Давайте посмотрим, что такое нейропроцессоры, чем они отличаются от обычных процессоров и почему эта область выглядит очень перспективной с точки зрения развития компьютерных технологий.
Мозг компьютера
Любой современный компьютер, планшет, смартфон, сетевое устройство или цифровой проигрыватель имеет центральный процессор (ЦП) — универсальное электронно-схемное устройство для выполнения компьютерного кода. Принципы работы традиционного процессора были заложены еще в 19 веке. 40-х годов, но, что может быть удивительно, с тех пор почти не изменились: процессоры читают команды и выполняют их последовательно. На уровне процессора любая программа разбивается на простейшие задачи. Это такие команды, как «читать из памяти», «записывать в память», «складывать два числа», «умножать», «разделять» и т. д. Есть много нюансов, касающихся работы процессора, но для сегодняшнего обсуждения важно помнить, что долгое время процессоры могли выполнять только одну операцию за цикл. Таких циклов действительно может быть очень много: сначала сотни тысяч, потом миллионы, а сегодня миллиарды в секунду. Тем не менее, до недавнего времени (середина 2000-х) типичный домашний компьютер или ноутбук имел только один процессор.
Многозадачность, или возможность одновременного выполнения нескольких программ на одном ЦП, достигалась за счет распределения ресурсов: одной программе дается несколько тактов, затем ресурсы выделяются другой, затем третьей и так далее. Когда на рынке появились доступные многоядерные процессоры, ресурсы можно было распределять более эффективно. Тогда можно было не только запускать разные программы на разных ядрах, но и выполнять одну программу на нескольких ядрах одновременно. Поначалу это была непростая задача: многие программы и игры какое-то время не оптимизировались под многоядерные или многопроцессорные системы.
Современные процессоры, доступные для домашних пользователей, могут иметь 16 или даже 32 ядра. Это внушительная цифра, но далеко не максимально возможная — даже для обычной потребительской техники. Например, видеокарта Nvidia GeForce 3080Ti имеет 10 240 ядер! Так почему же огромная разница? Потому что традиционные процессоры намного сложнее, чем процессорные ядра видеокарт. Обычные центральные процессоры выполняют ограниченный набор простых функций, но специализированные графические процессоры (GPU) в видеокартах еще более примитивны, способны выполнять только самые элементарные операции, но делают это очень быстро, что очень удобно, когда нужно выполнить миллиарды операций. таких операций в секунду. Как в компьютерных играх, например, где, скажем, для расчета освещения сцены нужно провести множество относительно простых вычислений для каждой точки изображения.
Несмотря на этот нюанс, процессорные ядра, которые входят в обычные ЦП и видеокарты, принципиально не отличаются друг от друга. Однако нейроморфные процессоры радикально отличаются как от CPU, так и от GPU. Они не пытаются реализовать набор элементов для выполнения арифметических операций — последовательно или параллельно. Вместо этого они стремятся воспроизвести структуру человеческого мозга!
В вычислительной технике самым маленьким строительным блоком считается скромный транзистор: в типичном процессоре любого компьютера или смартфона есть несколько миллиардов таких микроскопических элементов. В человеческом мозгу эквивалентным основным элементом является нейрон или нервная клетка. Нейроны связаны друг с другом синапсами. Несколько десятков миллиардов нейронов составляют человеческий мозг, представляющий собой очень сложную самообучающуюся систему. На протяжении десятилетий дисциплина, известная как нейроморфная инженерия, была сосредоточена на воспроизведении, хотя бы частично, структуры человеческого мозга в виде электронных схем. Процессор Altai, разработанный с использованием этого подхода, представляет собой аппаратную реализацию мозговой ткани — со всеми ее нейронами и синапсами.
Нейропроцессоры и нейронные сети
Но не будем забегать вперед. Хотя исследователям удалось воспроизвести определенные элементы структуры мозга с помощью полупроводников, это не означает, что мы скоро увидим цифровые копии людей. Такая задача слишком сложна, хотя и представляет собой святой Грааль подобных исследований. Между тем, нейропроцессоры — полупроводниковые копии структуры нашего мозга — имеют довольно практическое применение. Они необходимы для реализации систем машинного обучения и лежащих в их основе нейронных сетей.
Нейронная сеть или, точнее, искусственная нейронная сеть (в отличие от естественной внутри нашей головы) состоит из набора клеток, способных обрабатывать и хранить информацию. Классическая модель нейронной сети, персептрон, была разработана еще в 1960-х годах. Этот набор клеток можно сравнить с матрицей фотоаппарата, но он также способен обучаться, интерпретировать полученное изображение и находить в нем закономерности. Специальные связи между клетками и разными типами клеток обрабатывают информацию, чтобы различать, например, карточки с алфавитом, которые держат перед объективом. Но это было 60 лет назад. С тех пор, особенно за последнее десятилетие, машинное обучение и нейронные сети стали обычным явлением во многих повседневных задачах.
Проблема распознавания букв алфавита давно решена; автомобилисты слишком хорошо знают, что камеры контроля скорости могут распознавать номерной знак их автомобиля — под любым углом, днем или ночью, даже если они покрыты грязью. Типичная задача нейросети — сделать фото (например, стадиона сверху) и подсчитать количество людей. У этих задач есть кое-что общее: входные данные всегда немного отличаются. Обычная старомодная программа, скорее всего, сможет распознать номерной знак, сфотографированный прямо, но не под углом. В этом случае для обучения нейронной сети мы загружаем множество фотографий номерных знаков (или чего-то еще), и она учится различать буквы и цифры, из которых она состоит (или другие особенности, которые есть на входе). А иногда он становится настолько опытным, что, скажем, в области медицины может поставить диагноз лучше — или раньше — чем врач.
Но вернемся к реализации нейросетей. Вычисления, необходимые для реализации алгоритма нейронной сети, довольно просты, но таких операций много. Для этой работы лучше всего подходит не традиционный ЦП, а видеокарта с тысячами или десятками тысяч вычислительных модулей. Также можно сделать еще более специализированный ЦП, выполняющий набор вычислений, необходимых только для определенного алгоритма обучения. Это будет немного дешевле и немного эффективнее. Но все эти устройства по-прежнему строят нейронную сеть (совокупность узлов ячеек, воспринимающих и обрабатывающих информацию, соединенных между собой множеством связей) на программном уровне, тогда как нейропроцессор реализует схему нейронной сети на аппаратном уровне.
Эта аппаратная реализация значительно эффективнее. Нейропроцессор Intel Loihi состоит из 131 072 искусственных нейронов, которые связаны между собой гораздо большим количеством синапсов (более 130 миллионов). Важным преимуществом этой схемы является низкое энергопотребление в режиме простоя, в то время как обычные графические процессоры энергоемки даже в нерабочем состоянии. Это, а также теоретически более высокая производительность в задачах обучения нейронных сетей, обеспечивает гораздо более низкое энергопотребление. Например, первое поколение процессора Altai потребляет в тысячу раз меньше энергии, чем аналогичная реализация GPU.
Нейронные сети и безопасность
130 000 нейронов намного меньше, чем десятки миллиардов в человеческом мозгу. Исследования, которые приблизят нас к более полному пониманию того, как работает мозг, и создадут гораздо более эффективные самообучающиеся системы, только начались. Важно отметить, что нейропроцессоры уже востребованы, так как теоретически они позволяют более эффективно решать существующие задачи. Распознаватель образов, встроенный в ваш смартфон, который может различать, скажем, разные виды ягод, которые вы собираете, — лишь один из примеров. Уже сейчас специализированные процессоры для обработки видео и подобных задач массово встраиваются в наши смартфоны и ноутбуки. Нейропроцессоры продвигают идею машинного обучения на несколько шагов вперед, обеспечивая более эффективное решение.
Чем эта сфера интересна для «Лаборатории Касперского»? Во-первых, в наших продуктах уже активно используются нейронные сети и технологии машинного обучения в целом. К ним относятся, например, технологии обработки огромных объемов информации о работе корпоративной сети: например, мониторинг данных, которыми узлы обмениваются друг с другом или с внешним миром. Технологии машинного обучения позволяют выявлять аномалии в этом потоке трафика и находить необычную активность, которая может быть результатом вторжения или злонамеренных действий инсайдера. Во-вторых, «Лаборатория Касперского» разрабатывает собственную операционную систему — KasperskyOS, — которая гарантирует безопасное выполнение задач, возложенных на подконтрольные ему устройства. Интеграция аппаратных нейронных сетей в устройства на базе KasperskyOS выглядит очень многообещающе в будущем.
В самом конце всего этого прогресса будет появление настоящего ИИ — машины, которая не только решает за нас задачи, но и ставит (и решает) свои. Это будет сопряжено с этическими проблемами, и людям, безусловно, будет трудно понять, что подчиненная машина стала умнее своего создателя. Впрочем, до всего этого далеко. Около пяти лет назад все были уверены, что самоуправляемые автомобили буквально не за горами и их просто нужно доработать. Такие системы также тесно связаны с машинным обучением, и в 2022 году возможности в этой области по-прежнему уравновешиваются проблемами. Даже узкая задача вождения автомобиля, с которой люди справились достаточно хорошо, пока не может быть полностью доверена роботу. Вот почему новые разработки в этой области имеют большое значение — как на уровне программного обеспечения и идей, так и на уровне оборудования. Все это в совокупности, возможно, пока не приведет к появлению умных роботов, как в научно-фантастических книгах и фильмах, но точно сделает нашу жизнь чуточку проще и безопаснее.