«Непонятно, чего ждать от этих сетей»
Физик рассказал о создании принципиально новых компьютеров из цепей мемристоров
Мемристоры Hewlett Packard, атомно-силовое изображение
R. Stanley Williams, Hewlett Packard Laboratories
Недавно ученые описали устройство компьютера, принцип работы которого отличается от всех существующих вычислительных машин. Как и в человеческом мозге, за хранение информации и ее обработку в нем отвечает один и тот же структурный элемент — «электронный синапс». Юрий Першин, профессор Университета Южной Каролины и один из авторов работы, рассказал «Ленте.ру» о том, почему до сих пор не создан искусственный интеллект, можно ли компьютерную память заставить считать и когда нам ждать сверхскоростных и сверхкомпактных «флешек».
«Лента.ру»: Скажите, пожалуйста, что такое мемристор и что такое мемэлементы вообще? Когда такой термин появился?
Юрий Першин: В электронике существуют три основных хорошо известных элемента: сопротивление, конденсатор и катушка. До последнего времени все они рассматривались как элементы с постоянным откликом на внешние воздействия. Другими словами, сопротивление, емкость и индуктивность этих устройств являются постоянными величинами.
В 1971 году американский ученый Леон Чуа ввел понятие мемристора, сопротивления с памятью, название которого было образовано добавлением слова memory к традиционному resistor. Мемристор — это такой резистор, который запоминает воздействия, приложенные к нему в прошлом, и поэтому позволяет хранить в себе информацию. Формально говоря, это обобщение сопротивления на случай отклика с памятью. Несколько лет назад мы обобщили это понятие, [включив в него] случай конденсаторов и катушек, введя понятия конденсаторов с памятью и катушек с памятью. Все три такие теоретические устройства образуют класс memelements, о котором идет речь.
Насколько я понимаю, в 1971 году была разработана только теория мемристоров, а сами устройства появились гораздо позже?
Да, это так, но здесь есть свои тонкости. Действительно, в 2008 году специалисты из компании Hewlett Packard исследовали ячейку памяти, которая очень напоминает мемристор, описанный Леоном Чуа, и как раз обнаружили связь между теорией Чуа и поведением этой ячейки памяти. Такие элементы с памятью ведут себя достаточно близко к той теории, которая была введена Чуа, но, строго говоря, являются не идеальными мемристорами, а так называемыми мемристорными системами (memristive systems). По большому счету, их поведение довольно близко к тому поведению, которое было предсказано Чуа, но есть и отличия.
Ваша работа посвящена созданию теории вычисления при помощи системы мемэлементов. До сих пор такой теории, как я понял, не было. Как она соотносится с уже существующими работами над нейронными сетями?
Ученые давно занимаются задачами, связанными с искусственным интеллектом, и одним из подходов к его созданию являются нейронные сети (neural networks). Мемристоры могут быть использованы в нейронных сетях в качестве электронных синапсов. Сейчас этому применению мемристоров уделяется большое внимание.
Вычислительные сети мемристоров, которыми мы занимаемся в настоящее время, имеют несколько другую архитектуру. Если в нейронных сетях имеются электронные нейроны и электронные синапсы, то в сетях мемристоров есть, условно говоря, только синапсы без нейронов. В каком-то смысле это несколько упрощенный подход, но он, тем не менее, позволяет решить некоторый класс задач, которые не могут быть решены другими методами с такой же эффективностью. В нашей новой работе мы как раз пытаемся понять круг таких задач. Преимуществом наших сетей мемристоров по сравнению с нейронными сетями является их относительная простота и, соответственно, лучшее понимание происходящих в них процессов.
Кроме того, рассмотрев все известные подходы к вычислениям в памяти, мы разобрались, что общего во всех этих подходах, и определили критерии, накладываемые на системы и на отдельные элементы этих систем, для того чтобы эти системы могли быть использованы для вычислений.
Основная идея вычислений в памяти заключается в следующем. Допустим, что у нас имеется некая большая электронная цепь (система), состоящая из электронных «нейронов», «синапсов» или просто мемэлементов, которые каким-то образом соединены между собой. Когда к этой системе прикладывается внешнее напряжение, статическое или динамическое, свойства мемэлементов цепи начинают меняться, влияя друг на друга. Такую эволюцию можно рассматривать как процесс вычисления. И в конечном итоге получается какой-то результат такого вычисления.
В обычных же компьютерах, которые построены на так называемой архитектуре фон Неймана (а это вся электроника, с которой мы обычно имеем дело), вычисления происходят не так. Обычный компьютер работает как конвейер — шаг за шагом перебрасывая данные из процессора в память и обратно. Мы же хотим получить устройство, в котором вычисления происходят параллельным образом и, за счет этого, гораздо эффективнее.
Откуда может возникать дополнительная эффективность? В чем преимущество системы мемристоров перед традиционной архитектурой компьютеров?
Одним из узких мест архитектуры фон Неймана является тот факт, что обработка и хранение информации физически разделены. То есть хранится информация в памяти, а обрабатывает ее процессор. В процессе работы такого компьютера необходимо перегонять большие объемы информации между процессором и памятью. Мы же хотим объединить обработку и хранение информации в одном месте, чтобы избежать такой излишней переброски данных.
Какие вычисления можно проводить при помощи такого устройства? Для каких задач оно наиболее приспособлено? Очень сложно представить, как такая система сможет, скажем, умножить два на два. Или это возможно?
У нас недавно вышла статья, в которой мы показали, что система мемристоров способна решать определенные задачи из теории графов. С помощью такой системы можно, например, найти решение задачи лабиринта — найти в нем кратчайший путь. Точнее говоря, система находит все пути, которые соединяют вход и выход, и в некоторых случаях позволяет отсортировать эти пути по длине. Подобные задачи о кратчайшем пути можно решить как для двумерного, так и для трехмерного лабиринта.
Кроме того, мы применили цепи из мемристоров для решения задачи коммивояжера и показали, что система позволяет найти приближенное решение этой задачи.
То есть все эти вычисления связаны с теорией графов?
На данном этапе — да. С другой стороны, известно, что с помощью мемристоров можно довольно легко реализовать логические операции, то есть реализовать эти элементарные «И», «ИЛИ» «НЕ», которые являются частью любого процессора. Физически такие микросхемы еще не создавались, хотя экспериментально, на уровне нескольких мемристоров, было показано, что они должны работать.
Нам как раз было бы интересно совместить память с логическими операциями, мы работаем над этой задачей. Уже сейчас в обычных компьютерах можно было бы часть операций проводить прямо в памяти, без переброски данных в процессор, представляете?
Кажется, что в памяти было бы хорошо реализовывать задачи, которые легко параллелизуются.
Да, задачи, может быть, связанные с графикой, обработкой изображений или видео. В настоящее время уже понятно, что мемристоры можно использовать для выполнения логических операций, с их помощью можно создавать различные нейронные сети. Непонятно, однако, чего ожидать от этих сетей и как их использовать.
А задачу перебора в криптографии можно решать при помощи мемристоров?
Пока я не знаю, честно говоря. То есть над этим, как мне кажется, никто пока еще и не думал. Преимущество мемристоров в том, что их можно создать очень много, соединить в цепь и использовать для параллельных вычислений. Однако как это должно работать — большой вопрос. Мы как раз занимаемся тем, чтобы найти те задачи, которые можно решать при помощи различных реализаций таких систем.
Комментариев нет:
Отправить комментарий