Анализ организации, обучения и применения квантовых нейронных сетей

УДК 681.322 Д.А. БУЛАВИН

АНАЛИЗ ОРГАНИЗАЦИИ, ОБУЧЕНИЯ И ПРИМЕНЕНИЯ КВАНТОВЫХ НЕЙРОННЫХ СЕТЕЙ

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

1. Введение

Несомненно, что мозг человека работает более эффективно и принципиально другим образом, чем любая вычислительная машина, созданная человеком. Именно этот факт в течение многих лет побуждает и направляет работы ученых всего мира на создание и исследованию искусственных нейронных сетей (ИНС).

ИНС имеют некоторые привлекательные особенности: параллельность распределенной обработки, ошибкоустойчивость, способность обучаться и обобщать полученные знания. Под свойством обобщения понимается способность ИНС генерировать правильные выходы для входных сигналов, которые не были учтены в процессе обучения (тренировки). Эти два свойства делают ИНС системой переработки информации, которая решает сложные многомерные задачи, непосильные другим техникам. Тем не менее, ИНС также сталкиваются со многими трудностями: отсутствие правил для детерминированных оптимальных архитектур, ограниченная вместимость памяти, занимающая много времени на обучение, и т.д. [1].

Некоторая система может быть названа нейронной, если в ней удается идентифицировать, по крайней мере, один нейрон. Нейронная система является квантовой, если она способна реализовывать квантовые вычисления. Квантовые нейронные сети (КНС) являются одним из подвидов нейронных сетей и представляют собой комбинацию классических нейронных сетей и квантовых вычислений.

Существуют две главные причины интереса к квантовым нейронным сетям. Одна связана с аргументами, что квантовые процессы могут играть важную роль в работе мозга. Например, Роджер Пенроуз привел различные доводы в пользу того, что только новая физика, которая должна объединить квантовую механику с общей теорией относительности, смогла бы описать такие явления, как понимание и сознание. Однако его подход адресован не к собственно нейронным сетям, а к внутриклеточным структурам, таким как микротрубочки. Другая причина связана с бурным ростом квантовых вычислений, основные идеи которых вполне могли бы быть перенесены на нейровычисления, что открыло бы для них новые возможности.

Что можно ожидать от квантовых нейронных сетей? В настоящее время они обладают следующими преимуществами [2-5]:

- экспоненциальная емкость памяти;

- лучшие характеристики при меньшем числе скрытых нейронов;

- быстрое обучение;

- устранение катастрофического забывания благодаря отсутствию интерференции образов;

- решение линейно-неразделимых проблем однослойной сетью;

- отсутствие соединений;

- высокая скорость обработки данных (1010 bits/s);

- миниатюрность (1011 нейронов/мм3);

- более высокая стабильность и надежность.

Эти потенциальные преимущества квантовых нейронных сетей мотивируют их разработку.

2. Принципы построения и основные элементы КНС

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

Разные исследователи используют собственные аналогии для установления связи между квантовой механикой и искусственными нейронными сетями. Основные понятия этих двух областей приведены в таблице.

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

Классические нейронные сети Квантовые нейронные сети

Состояние нейрона xJ е {0,1} Кубиты х) = а0) + Ь1)

Связь К}р:1 Запутанность Х0Х1 ••• Хр:^

Обучающее правило £х'х. '=1 Суперпозиция состояний запутанности Р , , £ а; х0 • хрч) '=1

Поиск победителя п = тах аг§(^) Интерференция как унитарное преобразование и : ¥ ^ У

Выходной Результат N БесоЬегепсе (измерение) £а.|х') ^ хк) Б

Важно отметить, что эффективность использования нейронных сетей связана с массивной параллельной распределенной обработкой информации и нелинейностью преобразования векторов входов нейронами. Кроме того, квантовые системы обладают гораздо более мощным квантовым параллелизмом, выражающимся принципом суперпозиции [6].

Рассмотрим простую КНС со свойствами, которые облегчают ее моделирование и позволяют использовать квантовую физику. Первое свойство, которым должна обладать КНС, это всегда, когда возможно, использовать квантовые алгоритмы. Второе свойство позволяет не проводить фантастических измерений, которые в данный момент непрактичны. Еще одно полезное свойство, связанное с первыми двумя - это способность измерения веса каждого нейрона КНС. В конечном итоге у нас будет возможность моделировать КНС среднего размера с разумной точностью и за разумное время. Еще одним полезным свойством является возможность передачи обучения КНС в классическую систему.

КНС работает также как и классическая ИНС, которая состоит из нескольких слоев персептронов - входной слой, 1 или несколько скрытых слоев и выходной слой. Каждый слой полностью связан с предыдущим слоем. Каждый скрытый слой вычисляет взвешенную сумму выходов предыдущего слоя. Если эта сумма превышает пороговое значение, узел переходит выше, иначе он остается ниже. Выходной слой делает то же самое, что и скрытые слои, кроме проверки точности. Сеть в целом вычисляет функцию путем проверки максимального выходного бита. Но нет проверки, чтобы убедиться, что только один выход максимальный.

Определение принципа работы квантового нейрона можно дать следующим образом: он получает входные сигналы (исходные данные либо выходные сигналы других нейронов КНС) через несколько входных каналов. Каждый входной сигнал проходит через соединение, имеющее определенную интенсивность (или вес); этот вес соответствует синаптичес-кой активности нейрона. С каждым нейроном связано определенное пороговое значение. Вычисляется взвешенная сумма входов, из нее вычитается пороговое значение и в результате получается величина активации нейрона (она также называется пост-синаптическим потенциалом нейрона - Р8Р).

Сигнал активации преобразуется с помощью функции активации и в результате получается выходной сигнал нейрона (рис. 1).

I

х.

О

•ИЛ

МЛ,

N1

м?

N

N

"И',.

]=±

Рис 1. Математическая модель квантового нейрона

Математическая модель квантового нейрона |у) — Б^, где ^ - это матрицы

2*2, действующие на основе { 11}; Б - оператор, который может осуществлять работу сети квантовых ячеек.

Рис. 2. КНС для вычисления ХОЯ функции КНС, представленная на рис. 2, является примером такой сети, чтобы с достаточной сложностью вычислить функцию ХОЯ. Каждый вход в этом примере является битом, к тому же большое количество битов может использоваться для каждого входного регистра.

Каждый входной узел I представлен регистром 1 • Два скрытых узла вычисляют взвешенную сумму входов | ц и| 12 и сравнивают ее с пороговым значением 1 о . Если

взвешенная сумма больше порогового значения, то узел идет выше. к представляет

внутренние вычисления, которые происходят в каждом узле. Выходной слой работает аналогично, берет взвешенную сумму скрытых узлов и сверяет с пороговым значением. Потом КНС проверяет каждый вычисленный выход и сравнивает с целевым выходом

,, отправляя ^ выше, если они равны. Производительность сети обозначается как

| р, которая является количеством вычисленных выходов, эквивалентным их соответствующим целевым выходам.

3. Использование квантового поиска для обучения КНС

Рассматриваемая сеть работает следующим образом на обучающей выборке. В нашем примере сеть имеет два входных параметра; таким образом, все п обучающих примеров будут иметь два входных регистра. Они представлены как п до |и) . Целевые

ответы хранятся в регистрах ц до . Каждый скрытый или выходной узел имеет

вектор веса ,, каждый вектор содержит веса для каждого из входов. После классифицирования обучающего примера регистры 1 и отражают способность сети классифицировать его. В качестве простого измерения производительности мы увеличиваем |р) на сумму всех |ф) 1. Когда все обучающие примеры классифицированы, |р) будет суммой выходных узлов с правильными ответами в соответствии с обучающей выборкой, и значение будет от нуля до произведения количества обучающих примеров на количество выходных узлов (рис. 3).

\а>.

\а>

п 12

а--

21 22

1 11 | <р>

12

21

\(Р>

V

\Ф>.

22

И

1р>

- \ч»

ай

п2

Рис. 3. Обучение КНС

Одна из возможностей для обучения такой сети - поиск среди всех возможных весовых векторов такого, который не противоречит (согласуется) обучающим данным. Мы хотим найти решение, классифицирующее все обучающие примеры корректно; другими словами,

чтобы |р) = п * т , где п - количество обучающих примеров, а т - количество выходных

узлов. Так как неизвестно, какое количество весовых векторов справится с этим, будем использовать обобщение оригинального алгоритма поиска [7], предназначенного для проблем, когда количество решений I неизвестно. Основная идея заключается в описании

, как суперпозиции всех возможных весовых векторов, и поиска такого, который классифицирует все обучающие примеры корректно.

Все другие регистры (| в , | ф) , | р)), кроме входных и целевых выходов, инициализируются состоянием 10^ . Далее мы классифицируем каждый обучающий пример, обновляя регистр производительности | р . С помощью суперпозиции мы классифицируем обучающий пример с учетом каждого возможного весового вектора одновременно. Каждый

весовой вектор теперь запутан с |р таким образом, что |р согласовывается с тем, как успешно каждый весовой вектор классифицирует все обучающие данные. В этом случае получается |р) = п*т , что соответствует искомому весовому вектору, который правильно классифицирует всю выборку.

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

решение существует, оно неподходящее, потому что чрезмерно отклоняется от обучающей выборки. Во-вторых, количество требуемого времени для поиска вектора, который правильно классифицирует обучающие выборки, равно, и имеет экспоненциальную сложность с учетом количества битов в весовом векторе, O(^2b /1).

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

4. Результаты и выводы

Проблема XOR - хорошая проблема для простых нейронных сетей, потому что требуется по крайней мере два уровня, для того чтобы просто увидеть, что происходит. Каждый из выходных и скрытых узлов является граничным с тремя весами: один для каждого из его входов и один для границы. Так как мы требуем отрицательных, а также положительных чисел и нуля, используем 2 кубита для каждого веса.

Создана КНС с четырьмя входными узлами, тремя скрытыми и тремя выходными узлами. Так как на входе - вещественные числа, то мы использовали безграничные скрытые узлы и затем граничные выходы. Весами были все 2 целочисленных кубита, как в проблеме XOR. После среднего числа 74 эпох рандомный алгоритм поиска смог достигнуть 95%-й точности на обучающем наборе данных.

Класс задач, которые можно решить с помощью КНС, определяется тем, как сеть работает, и тем, как она обучается. При работе КНС принимает значения входных переменных и выдает значения выходных переменных. Таким образом, сеть можно применять в ситуации, когда имеется определенная известная информация и нужно из нее получить некоторую пока не известную информацию.

Вот некоторые примеры таких задач:

- распознавание образов и классификация;

- принятие решений и управление;

- кластеризация;

- прогнозирование;

- аппроксимация.

Список литературы: 1. Li Fei. Learning algorithm for quantum neuron. Signal Processing, 2004. Proceedings. ICSP '04. 2004 7th International Conference on (Volume:2 )/ Li Fei, DONG Xiaoliang, ZHAO Shengmei, ZHENG Baoyu A. pp. 1538-1541. 2. Ventura, D. Quantum associative memory with exponential capacity, Proceedings of the International Joint Conference on Neural Networks / Ventura, D. Martinez, T. Р.509-513, 1998. 3. Cutting, D. Would quantum neural networks be subject to the decidability constraints of the Church-Turing thesis? Neural Network World, N.1-2. Р.163-168, 1999. 4. Menneer, T. and Narayanan, A. Quantum-inspired neural networks. Technical report R329, Department of Computer Science, University of Exeter, UK, 1995. 5. Behrman, E.C., Steck, J.E., and Skinner, S.R. A spatial quantum neural computer., Proceedings of the International Joint Conference on Neural Networks, to appear, 1999. 6. Ivancevic V. G. Quantum neural computation / Ivancevic V. G., Ivancevic T.T. Tokyo: Springer - Verlag. 2009. 7. Michel Boyer, Gilles Brassard, Peter Hoyer, and Alain Tapp. Tight bounds on quantum searching // In Proceedings of the Fourth Workshop on Physics and Computation. 1996. Р. 36-43.

Поступила в редколлегию 14.04.2014 Булавин Дмитрий Алексеевич, канд. техн. наук, доцент кафедры теоретической и прикладной системотехники ХНУ имени В. Н. Каразина. Научные интересы: искусственный интеллект, теория принятия решений. Увлечения: футбол, музыка. Адрес: Украина, 61166, Харьков, ул. Ленина, 3, кв. 20, тел. 702-30-79, e-mail: d.bulavin@karazin.ua.