QUBO-формулировки для линейной регрессии, SVM и метода k-средних
Contents
QUBO-формулировки для линейной регрессии, SVM и метода k-средних#
Автор(ы):
Описание лекции#
Здесь рассмотрим QUBO-формулировки трех задач ML (линейная регрессия, SVM, сбалансированная кластеризация методом k-средних) аналогично тому, как в предыдущей лекции было продемонстрировано сведение к QUBO задач о максимальном разрезе в графе, о коммивояжере и о выделении сообществ в графе. Изложение полностью основывается на статье [DAPN21].
Некоторые обозначения, которые будут использоваться в дальнейшем:
– множество действительных чисел; – количество объектов в обучающем наборе, ; – количество признаков (features) для объектов в обучающем наборе, ; – тренировочный набор, содержит по одному объекту в каждой из строк, каждая строка содержит значений признаков, ; – набор истинных “ответов” (ground truth), соответствующих тренировочным объектам из ( в случае регрессии, в случае бинарной классификации); – произведение Кронекера (тензорное произведение); – произведение Адамара (поэлементное произведение).
Общая формулировка QUBO-задачи, которая используется в статье [DAPN21] и к которой всё сводится, выглядит так:
где
Линейная регрессия#
В задаче линейной регрессии предполагается, что зависимость истинных ответов от признаков тренировочных объектов приближенно линейная:
где

Fig. 94 Иллюстрация к задаче линейной регрессии.#
Известно аналитическое решение задачи (48):
Если
QUBO-формулировка#
Перепишем выражение (48):
Наша цель – найти вектор
Бинарные компоненты логично рассматривать как индикаторы наличия или отсутствия соответствующих степеней двойки в бинарном представлении каждого действительного числа. Введем вектор-столбец
этот вектор отсортирован по возрастанию элементов. Отводится
Вводим вектор
Чтобы не было неоднозначности, нужно договориться о том, что для представления
Составляем бинарный вектор
и матрицу точности
где
где знак “=” на самом деле означает приближенное равенство (наше fixed-point представление имеет конечную точность).
Всё готово для того, чтобы переписать исходную задачу (49) в QUBO-формулировке. Подставляем (50) в (49) и получаем
слагаемое
Оценка вычислительной сложности#
Для исходной задачи регрессии (48) количество значений в датасете
ВременнАя сложность в классической задаче
Затраты времени для конвертации задачи регрессии в QUBO-формулировку. Здесь получаем
(проверьте это, оценив число умножений, необходимых для вычисления ).Время для реализации QUBO-задачи в квантовом “железе”. Здесь потребуется
, если использовать алгоритм из [DPP19].Время для выполнения квантового отжига. Существуют теоретические оценки времени для получения точного решения, но более практично рассматривать случай, когда можно просто довольствоваться достаточно высокой вероятностью (скажем, 99%) получения оптимального решения. Для современных квантовых компьютеров D-Wave с ограниченным числом кубитов на практике получается, что время отжига и число повторений можно считать константами.
В итоге полная временнАя сложность решения QUBO-задачи на адиабатическом квантовом компьютере
SVM#
Классический SVM подробно описан в соответствующей лекции. Рассматривается тренировочный набор

Fig. 95 Иллюстрация к задаче бинарной классификации с помощью SVM.#
Двойственная задача (18) в текущих обозначениях принимает вид
QUBO-формулировка#
Перепишем (52) как задачу минимизации:
Тренировочные объекты
не зависит. Объекты, соответствующие
Задача минимизации переписывается в виде
где
Как в задаче линейной регрессии, будем представлять каждую
Вектор
Выполняем конкатенацию всех
и вводим матрицу
таким образом, что (приближенно)
Подставляя из этого выражения
Остается избавиться от ограничения в виде равенства в (56). Как обычно делается в таких случаях, вместо ограничения вводим соответствующий штраф за его нарушение:
где
Добавляем
Оценка вычислительной сложности#
Задача (54) содержит
ВременнАя сложность классического SVM в типичных реализациях (например, LIBSVM) равна
Затраты времени для конвертации в QUBO-формулировку. Из (53) и (55) следует, что оценка времени
.Для реализации QUBO-задачи в квантовом “железе” потребуется
.Время для выполнения квантового отжига и число повторений можно считать константами (см. комментарии к тому же пункту в обсуждении линейной регрессии).
В итоге временнАя сложность
Сбалансированная кластеризация методом k-средних#
Кластеризация методом k-средних – ML-задача обучения без учителя (unsupervised). Требуется распределить тренировочные объекты по

Fig. 96 Иллюстрация к задаче сбалансированной кластеризации методом k-средних.#
Нужно распределить
Если размеры
В прикладных задачах кластеризации размеры кластеров только приближенно равны друг другу, поэтому решение задачи (59) не является точным решением задачи (58). Для решения задачи кластеризации методом k-средних можно использовать, например, алгоритм Ллойда. Существует модификация алгоритма Ллойда для случая сбалансированной кластеризации.
QUBO-формулировка#
Вводим матрицу
Также вводим бинарную матрицу
Поскольку мы предполагаем, что все кластеры содержат примерно одно и тоже количество объектов, каждый столбец
должен содержать примерно единиц.Каждый объект принадлежит ровно одному кластеру, поэтому каждая строка
должна содержать ровно одну единицу.
Для получения QUBO-формулировки задачи нам потребуется избавиться от этих ограничений. Для этого, как обычно, введем в минимизируемую квадратичную форму штрафы за нарушение ограничений. Вернемся к этому через пару абзацев.
Используя
где
При условии, что ограничения на
Теперь разбираемся с ограничениями на
Во-первых, каждый столбец
где
Сумма всех штрафов для столбцов равна
Во-вторых, каждая строка
где
Чтобы найти сумму
Переход от
с некоторой матрицей
Сумма штрафов для строк равна
Соберем вместе квадратичную форму (60) (записанную без учета ограничений) и штрафы
Оценка вычислительной сложности#
Задача (59) содержит
Известно, что классический алгоритм сбалансированной кластеризации методом k-средних сходится за время
Затраты времени для конвертации в QUBO-формулировку. В выражении (61) по вычислительной сложности доминирует слагаемое, содержащее
. Соответствующая вычислительная сложность .Для реализации QUBO-задачи в квантовом “железе” потребуется
.Время для выполнения квантового отжига и число повторений можно считать константами (см. комментарии к тому же пункту в обсуждении линейной регрессии).
В итоге получаем полную вычислительную сложность
Заключение#
В этой лекции были рассмотрены три важные задачи машинного обучения, которые можно переформулировать в виде QUBO (Quadratic Unconstrained Binary Optimization) для решения на квантовом аннилере путем сведения к задаче нахождения основного состояния квантовой системы. Общий подход заключается в том, что минимизируемый в классической формулировке функционал переписывается в виде квадратичной формы относительно бинарных переменных, а вместо условий-ограничений в финальную квадратичную форму QUBO-задачи вводятся штрафы за нарушение этих ограничений. Есть надежда на то, что при некотором количестве кубитов квантовые алгоритмы будут иметь преимущество перед классическими по времени выполнения.