В начале 90-х Элизабет Берман [Elizabeth Behrman], профессор физики в Уичитском университете начала работать над слиянием квантовой физики с искусственным интеллектом – в частности, в области тогда ещё непопулярной технологии нейросетей.
Большинство людей считало, что она пытается смешивать масло с водой. «Мне чертовски трудно было публиковаться, — вспоминает она. – Журналы по нейросетям говорили „Что это за квантовая механика?“, а журналы по физике говорили „Что это за нейросетевая ерунда?“.
Сегодня смесь двух этих понятий кажется самой естественной вещью на свете. Нейросети и другие системы машинного обучения стали самой внезапной технологией XXI века. Человеческие занятия удаются им лучше, чем у людей, и они превосходят нас не только в задачах, в которых большинство из нас и так не блистали – например, в шахматах или глубоком анализе данных, но и в тех задачах, для решения которых эволюционировал мозг – например, распознавание лиц, перевод языков и определение права проезда на четырёхстороннем перекрёстке. Подобные системы стали возможными благодаря огромной компьютерной мощности, поэтому неудивительно, что технокомпании начали поиски компьютеров не просто побольше, а принадлежащих к совершенно новому классу.
Но понятие «квантовый» никогда не означает именно то, что от него ожидают. Хотя вы могли бы решить, что КМО-система должна быть мощной, она страдает от синдрома «запертости». Она работает с квантовыми состояниями, а не с человекочитаемыми данными, и перевод между двумя этими мирами может нивелировать все её явные преимущества. Это как iPhone X, обладающий всеми своими впечатляющими характеристиками, оказывается не быстрее старого телефона, поскольку местная сеть работает отвратительно. В некоторых особых случаях физики могут преодолеть это узкое место ввода-вывода, но появятся ли такие случаи при решении практических задач с МО, пока непонятно. «У нас пока нет чётких ответов, — говорит Скот Ааронсон, специалист по информатике из Техасского университета в Остине, всегда пытающийся реально смотреть на вещи в области квантовых вычислений. – Люди довольно осторожно относятся к вопросу о том, дадут ли эти алгоритмы какое-то преимущество в скорости».
Квантовые нейроны
Основная задача нейросети, будь она классической или квантовой – распознавать закономерности. Она создана по образу человеческого мозга и представляет собой решётку из базовых вычислительных единиц – «нейронов». Каждый из них может быть не сложнее переключателя вкл/выкл. Нейрон отслеживает выход множества других нейронов, будто бы голосующих по определённому вопросы, и переключается в положение «вкл» если достаточно много нейронов проголосовали «за». Обычно нейроны упорядочиваются в слои. Первый слой принимает ввод (к примеру, пиксели изображения), средние слои создают различные комбинации ввода (представляя такие структуры, как грани и геометрические фигуры), а последний слой выдаёт вывод (высокоуровневое описание того, что содержится на картинке).
Что важно, вся эта схема не проработана заранее, а адаптируется в процессе обучения методом проб и ошибок. Например, мы можем скармливать сети изображения, подписанные «котёнок» или «щенок». Каждой картинке она присваивает метку, проверяет, правильно ли у неё получилось, и если нет – подправляет нейронные связи. Сначала она работает почти случайно, но затем улучшает результаты; после, допустим, 10 000 примеров она начинает разбираться в домашних животных. В серьёзной нейросети может быть миллиард внутренних связей, и всех их необходимо подстроить.
На классическом компьютере эти связи представлены баснословной матрицей чисел, а работа сети означает выполнение матричных вычислений. Обычно эти операции с матрицей отдают на обработку особому чипу – к примеру, графическому процессору. Но никто не справляется с матричными операциями лучше квантового компьютера. «Обработка больших матриц и векторов на квантовом компьютере происходит экспоненциально быстрее», — говорит Сет Ллойд, физик из Массачусетского технологического института и пионер квантовых вычислений.
Ллойд оценивает, что 60 кубитов хватит для кодирования такого количества данных, которое человечество производит за год, а 300 могут содержать классическое информационное наполнение всей Вселенной. У самого большого из имеющихся на сегодня квантовых компьютеров, построенного IBM, Intel и Google, порядка 50 кубитов. И это только если принять, что каждая амплитуда представляет один классический бит. На самом деле амплитуды – величины непрерывные (и представляют комплексные числа), и с точностью, подходящей для решения практических задач, каждая из них может хранить до 15 битов, говорит Ааронсон.
Дайте природе решить задачу
Пока что машинное обучение на основе квантовых матричных вычислений было продемонстрировано только на компьютерах с четырьмя кубитами. Большая часть экспериментальных успехов квантового машинного обучения использует другой подход, в котором квантовая система не просто симулирует сеть, а является сетью. Каждый кубит отвечает за один нейрон. И хотя тут об экспонентном росте говорить не приходится, подобное устройство может воспользоваться другими свойствами квантовой физики.
Переключение кубитов происходит из-за квантового туннелирования, естественного стремления квантовых систем к оптимальной конфигурации, наилучшей из возможных. Можно было бы построить классическую сеть, работающую на аналоговых принципах, использующих случайное дрожание вместо туннелирования для переключения битов, и в некоторых случаях она на самом деле работала бы лучше. Но, что интересно, для задач, появляющихся в области машинного обучения, квантовая сеть, судя по всему, быстрее достигает оптимума.
В декабре компания Rigetti продемонстрировала способ автоматической группировки объектов при помощи квантового компьютера общего назначения из 19 кубитов. Исследователи скормили машине список городов и расстояний между ними и попросили её рассортировать города на два географических региона. Трудность этой задачи в том, что распределение одного города зависит от распределения всех остальных, поэтому вам надо искать решение для всей системы сразу.
Команда компании, по сути, назначила каждому городу по кубиту и отметила, к какой группе его приписали. Через взаимодействие кубитов (в системе Rigetti оно не магнитное, а электрическое) каждая пара кубитов стремилась принять противоположные значения, поскольку в таком случае их энергия минимизировалась. Очевидно, что в любой системе, содержащей больше двух кубитов, некоторым парам придётся принадлежать к одной и той же группе.
Чтобы привести систему к наименьшей энергии, команда Rigetti избрала подход, в чём-то похожий на подход D-Wave. Они инициализировали кубиты суперпозицией из всех возможных распределений по группам. Они позволили кубитам недолго взаимодействовать друг с другом, и это склонило их к принятию тех или иных значений. Затем они применили аналог горизонтального магнитного поля, что позволило кубитам поменять ориентацию на противоположную, если у них была такая склонность, что немного подтолкнуло систему по направлению к энергетическому состоянию с минимальной энергией. Затем они повторяли этот двухэтапный процесс – взаимодействие и переворот – пока система не минимизировала энергию, распределив города в два разных региона.
Подобные задачи по классификации, хотя и полезны, но довольно просты. Реальные прорывы МО ожидаются в генеративных моделях, которые не просто распознают щенков и котят, но способны создать новые архетипы – животных, никогда не существовавших, но настолько же милых, насколько реальные. Они даже способны самостоятельно вывести такие категории, как «котята» или «щенки», или реконструировать изображение, на котором отсутствует лапа или хвостик. «Эти технологии способны на многое и очень полезны в МО, но очень сложны в реализации», — сказал Мохаммед Амин, главный учёный в D-Wave. Помощь квантовых компьютеров пришлась бы тут кстати.
Это всё хорошие новости. А плохие новости в том, что неважно, насколько крут ваш процессор, если вы не сможете предоставить ему данные для работы. В алгоритмах матричной алгебры единственная операция может обрабатывать матрицу из 16 чисел, но для загрузки матрицы всё равно требуется 16 операций. «Вопроса подготовки состояния – размещение классических данных в квантовом состоянии – избегают, а я думаю, что это одна из важнейших частей», — сказала Мария Шульд, исследователь стартапа квантовых компьютеров Xanadu и один из первых учёных, получивших степень в области КМО. Физически распределённые системы МО сталкиваются с параллельными сложностями – как ввести задачу в сеть кубитов и заставить кубиты взаимодействовать, как нужно.
После того, как вы смогли ввести данные, вам нужно хранить их таким образом, чтобы квантовая система смогла взаимодействовать с ними, не обрушив текущие вычисления. Ллойд с коллегами предложили квантовую оперативную память, использующую фотоны, но ни у кого пока нет аналогового устройства для сверхпроводящих кубитов или пойманных ионов – технологий, использующихся в ведущих квантовых компьютерах. «Это ещё одна огромная техническая проблема, кроме проблемы постройки самого квантового компьютера, — сказал Ааронсон. – При общении с экспериментаторами у меня создаётся впечатление, что они испуганы. Они вообще не представляют, как подойти к созданию этой системы».
И, наконец, как вывести данные? Это значит – измерить квантовое состояние машины, но измерение не только возвращает по одному числу за раз, выбранному случайно, оно ещё рушит всё состояние компьютера, стирая остаток данных до того, как у вас будут шансы их востребовать. Придётся запускать алгоритм снова и снова, чтобы вынуть всю информацию.
В некоторых случаях исследователи обнаружили обходные пути для ввода и вывода данных. В 2015 году Ллойд, Сильвано Гарнероне из Университета Ватерлоо в Канаде и Паоло Занарди из Университета Южной Калифорнии показали, что в определённых видах статистического анализа не обязательно вводить или хранить весь набор данных целиком.
Всё это вызывает вопрос: если квантовая машина демонстрирует свои способности в особых случаях, может, и классическая машина тоже сможет хорошо себя показать в этих случаях? Это главный неразрешённый вопрос в этой области. В конце концов, обычные компьютеры тоже могут очень многое. Обычный метод выбора для обработки больших наборов данных – случайная выборка – на самом деле очень похожа по духу на квантовый компьютер, который, что бы там внутри его ни происходило, в итоге выдаёт случайный результат. Шульд отмечает: «Я реализовывала множество алгоритмов, на которые я реагировала как: „Это так здорово, это такое ускорение“, а затем, просто ради интереса, писала технологию выборки для классического компьютера, и понимала, что того же самого можно добиться и при помощи выборки».
Квантовый интеллект
С другой стороны, даже редкие улучшения существующих технологий могли бы порадовать технокомпании. «Получающиеся улучшения скромные, не экспоненциальные, но хотя бы квадратичные», — говорит Нэйтан Вайеб, исследователь в области квантовых компьютеров из Microsoft Research. «Если взять достаточно большой и быстрый квантовый компьютер, мы могли бы произвести революцию во многих областях МО». И в процессе использования этих систем специалисты по информатике, возможно, решат теоретическую загадку – на самом ли деле они по определению быстрее, и в чём именно.
У нейросетей и квантовых процессоров есть нечто общее: удивительно, что они вообще работают. Возможность натренировать нейросеть никогда не была очевидной, и десятилетиями большинство людей сомневались, что это вообще окажется возможным. Точно также неочевидно, что квантовые компьютеры когда-нибудь можно будет приспособить к вычислениям, поскольку отличительные черты квантовой физики так хорошо скрыты от всех нас. И всё же оба они работают – не всегда, но чаще, чем мы могли бы ожидать. И учитывая это, кажется вероятным, что и их объединение найдёт себе место под солнцем.