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