Успехи Google в квантовых вычислениях с точки зрения программирования |
||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2016-04-12 12:27 Успехи, о которых идет речь - демонстрация условий, в которых квантовый компьютер D-Wave быстрее обычного CPU в 100 миллионов раз. Новость об этом пролетала и тут, и вообще везде. Что же это значит для простых смертных? Надо ли вовсю переключаться на программирование на квантовых компьютерах? Что там вообще за программирование? Disclaimer: пост написан на основе изрядно отредактированных логов чата closedcircles.com, отсюда и стиль изложения, и наличие уточняющих вопросов. Для начала, немного бэкграунда - что такое процессоры D-Wave. Что такое вообще annealing? Это задача оптимизации вот такого выражения: Есть N бинарных переменных si, они принимают значения -1 или +1. Можно задавать вещественные коэффициенты hi и Jij. а чем управляем в итоге? hi,Jij? Далее, надо понимать, что квантовый процесс не гарантирует нахождения глобального минимума, он с некой вероятностью находит значение, которое сколько-то близко к нему. Какие практические задачи можно решать таким образом? Пример в Гугловской статье - так называемый Number Partitioning Problem (NPP). Даже такая простая, казалось бы, задача - NP-hard и все эти дела, но ее довольно просто выразить как annealing. Пусть бинарная переменная - это флаг принадлежности к какой-то куче. не понимаю связку между первой формулой и задачей разделения на кучи Как решаются такие задачи сейчас, на CPU? Один из простых и все еще часто использующихся на практике методов - simulated annealing. Википедия пишет про него достаточно прилично - https://en.wikipedia.org/wiki/Simulated_annealing Идея в том, чтобы начать с какого-то случайного состояния бинарных переменных и на каждом шаге их случайно флипать. Какие ограничения у D-Wave на практике? В последней версии D-Wave около тысячи кубитов (это то самое количество бинарных переменных в задаче).
На всякий случай, русским языком - сложно придумать практическую задачу, которую можно решать на этом всем добре. И вот мужики в Гугле стараются придумать очень теоретическую задачу, которая бы максимально хорошо ложилась на эту архитектуру. Почему вообще квантовый компьютер может быть эффективнее? Если у нашего пространства много больших гор и впадин между ними... То алгоритму нужно пройти через эти впадины в процессе оптимизации, и в отличие от simulated annealing, квантовый компьютер может "туннелировать" между достаточно узкими разломами. Ну хорошо, каким образом конструируется эта "хорошая" задача? Основной элемент из которого они такую задачу собирают: то есть они создают вот такую "удачную" задачу с помощью этой специальной конфигурацией связи кубитов? Потом они повторяют эту конфигурацию на всех 1000 кубитах согласно связям, прошитым в железе: В работе сравнивается скорость D-Wave на этой задаче с simulated annealing и еще одним алгоритмом, Quantum Monte Carlo. Ну и вот они сравнивают SA и QMC на одном ядре CPU и quantum annealing на D-Wave для достижения той же точности результата (95% от оптимального, кажись). SA в их задаче для этого, например, нужно 109 запусков. И вот теперь наконец-то мы готовы понять главный график из статьи: При максимальном размере задачи D-Wave действительно быстрее simulated annelaling в 108 раз- у меня вот такой странный вопрос по этому графику, почему числа сверху такие неровные? это настоящий размер проблемы? как-то не делится на 8 Означает ли это что хотя бы эту вырожденную задачу квантовый компьютер решает лучше, чем обычный? Нет! Лучше только если сравнивать с алгоритмами без эвристик. Это подводит к нас к основной критике результата и неопределенности в светлом будущем. Пессимистично можно сомневаться, получится ли вообще в ближайшем будущем построить что-то с такими параметрами, будет ли там вообще квантовый эффект, и будет ли у жизненных задач такой удачный ландшафт итд итп. (больше подробностей, ада и угара здесь - http://www.scottaaronson.com/blog/?p=2555) О чем еще можно сказать кроме этого...
Подытожив - можно расслабиться, внезапного рывка нет, это следующий шажок в освоении квантовых компьютеров, практическое применение еще далеко. Источник: geektimes.ru Комментарии: |
|