Создана первая нейронная сеть на мемристорах

Массив из 17 мемристоров, синтезированных в HP labs в 2008 году
Фотография: Wikimedia Commons
Инженеры из Калифорнийского университета в Санта-Барбаре впервые создали искусственную нейронную сеть целиком на основе мемристоров — резисторов «с эффектом памяти». В перспективе аналогичные устройства, но большего масштаба, могут в ряде приложений заменить традиционные транзисторные чипы. Работа опубликована в Nature.
Мемристоры — это микроэлектронные элементы, которые могут изменять свое сопротивление в зависимости от величины тока, который проходил через них до этого. Таким образом, они обладают «памятью», поэтому им прочат будущее в качестве запоминающих устройств или микрочипов.
Одной из областей микроэлектроники, где требуется функция памяти, является разработка чипов, имитирующих работу головного мозга. Такие устройства востребованы в машинном обучении и анализе больших и/или сложных массивов данных.
Одну из основных задач машинного обучения можно сформулировать следующим образом: пусть есть входящие данные x, которые соответствуют решению y, например, картинка (x), на которой изображена одна буква (y). Цель — создать программу f(x), так, чтобы она по заданной картинке «узнавала» букву. Такая программа является необходимым блоком в софте для автоматического распознавания текстов.
Само обучение — это настройка внутренних параметров программы так, чтобы для любого заданного x ее «ответ» f(x) был как можно ближе к «правильному» y. Например, хорошо «обученная» программа должна с большой вероятностью распознавать буквы из разных шрифтовых наборов.
Существует несколько методов обучения программ, один из них — обучение «с учителем» (supervised learning). В этом случае программе предлагается распознавать x, для которых есть известный правильный ответ y. В том случае, если программа ошиблась, ей об этом сообщают, и цикл начинается снова. Чем больше периодов обучения прошла программа, тем точнее она будет распознавать x, для которых неизвестен правильный ответ y.
В задачу ассоциативных нейронов входит сбор первичной информации, которую они передают нейрону, принимающему окончательное решение. Происходит это на основании того, каким из ассоциативных нейронов он больше «доверяет». В математической формулировке это значит, что каждый ассоциативный нейрон имеет свой вес, а окончательное решение просто определяется максимальным суммарным весом.
В итоге получается, что для функционирования нейронной сети необходимо, чтобы каждый нейрон имел память, в которой будут хранится веса, которые формировались на этапе обучения.
Чаще всего нейронные сети реализуются программно. Тем не менее, в последнее время предпринимается множество попыток создания микрочипов, устроенных по принципу нейронных сетей. Такая архитектура позволит резко увеличить производительность компьютеров в задачах, близких машинному обучению.
До сих пор такие чипы создавались так, что каждый нейрон представлял собой несколько микротранзисторов, то есть в конечном счете устройство все равно сводилось к традиционным электронным компонентам.
В новой работе ученым удалось сделать искусственную сеть, в которой каждый нейрон состоял только из одного элемента — мемристора. Весу нейрона соответствовало его сопротивления, а сигналом было напряжение: −0.1 вольт соответствовал нулю (или черному цвету), +0.1 вольт — единице (белому цвету).
Сеть состояла из 144 мемристоров Al2O3/TiO2 (в решетке 12×12). В качестве теста авторы обучили ее классифицировать черно-белые изображения 3×3 пикселя по трем классам. После 23 циклов обучения сеть научилась справляться с задачей классификации без ошибок.
Авторы новой работы заключают, что их сеть не является самостоятельным или окончательным продуктом, но она однозначно подтверждает возможности новой архитектуры. В том случае, если удастся создать микрочип с большим числом мемристоров, они смогут заменить чипы традиционной архитектуры в задачах из областей машинного обучения и искусственного интеллекта.