Квантовые вычисления и машинное обучение являются экзотическими областями, исследования в связи между этими областями в последнее время вызывают интерес. Если вы разработчик или инженер по машинному обучению и поражены мощью квантовых вычислений, вероятно, вы хотели бы понять основные теоретические основы квантового машинного обучения. Мой подход здесь заключается в том, чтобы связать квантовые технологии с машинным обучением.

Немного квантовой информации.Кубит – это основная единица информации в квантовых вычислениях. Чтобы воспользоваться преимуществами суперпозиции и запутанности, нам необходимо использовать кубиты.

Вы можете думать о кубите как о контейнере, который включает в себя с некоторой вероятностью одно состояние и другое состояние с некоторой вероятностью, например, приведенное выше квантовое состояние содержит чили или грушу, чего мы не знаем, пока не исследуем нашу корзину. наблюдение или измерение состояния, в которое оно схлопывается. Эта концепция называется суперпозицией, которую мы можем использовать для достижения экспоненциальной производительности по сравнению с классическими компьютерами из-за вероятностной природы состояний.

Квантовые операторы. Как следует из названия, квантовый оператор выполняет некоторую операцию над кубитом, в данном случае они называются квантовыми вентилями. В классическом случае два основных элемента И и ИЛИ выполняют операции на входах. В квантовом случае ворота представлены унитарными матрицами (квадратными матрицами, обратная сторона которых является их комплексно-сопряженной!).

Примером двух распространенных квантовых вентилей являются вентили Адамара и CNOT, которые можно представить в виде матриц:

И, применив вентиль Адамара к состоянию |0› или |1›, мы получим вот что:

Матрицы Паули. это последнее, что вам нужно знать о квантовых вычислениях в этом посте. Матрицы Паули — это наборы матриц 2x2 со сложными элементами:

Я полагаю, вы знакомы с классическими нейронными сетями, чтобы сделать их квантовыми, нам потребуется применить квантовую методологию на разных этапах классической нейронной сети:

  • Представление ввода
  • Моделирование сети
  • Изучение сетевых параметров
  • Наблюдение за выходом

Представление входных данных. Вычисления в классических нейронных сетях подразумевают однонаправленное вычисление выходных данных, дающих входные данные. Математически классическая НС вычисляет выходную переменную y следующим образом из входных данных:

Напротив, квантовая механика по своей сути зависит от обратимых преобразований, и квантовый аналог для преобразования входных данных в выходные для NN может быть поставлен путем добавления вспомогательного бита к входным данным для получения выходных данных:

Ниже представлено представление схемы многослойной квантовой сети, где вход |Psi›|0›, а конечный результат измеряется с помощью оператора Паули Y:

Лично мне нравятся следующие книги для начинающих, вам может понадобиться обратиться к ним, если вы потеряетесь в концепциях:

https://www.amazon.com/Quantum-Computer-Science-David-Mermin/dp/0521876583/

https://www.amazon.com/Quantum-Computation-Information-10th-Anniversary/dp/1107002176/

Ссылка:

https://arxiv.org/abs/2005.04316