Scientific journal
Advances in current natural sciences
ISSN 1681-7494
"Перечень" ВАК
ИФ РИНЦ = 0,736

NEURAL NETWORK SALES MODULAR OPERATIONS, IMPLEMENTED IN POLYNOMIAL SYSTEM RESIDUE CLASS

Sarkisov A.B. 1 Kalmykov M.I. 1 Kalinin D.M. 2 Titov I.A. 2
1 Federal state Autonomous educational institution higher professional education «North-caucasian federal university
2 Filial Moscow state University of instrument engineering and informatics in the city of Stavropol
Модулярные коды нашли широкое применение во многих сферах современных информационных технологиях. Использование этих непозиционных кодов позволяет обеспечить высокую скорость обработки данных. Поэтому данные алгебраические системы целесообразно использовать в алгоритмах цифровой обработки сигналов, которые характеризуются обработкой большого объема данных в реальном масштабе времени. Использование нейросетевого базиса позволяет повысить производительность спецпроцессоров цифровой обработки сигналов. Для выполнения базовой операции обработки сигналов в полиномиальной системе классов вычетов требуется многовходовой сумматор по модулю два. В работе рассмотрена нейронная сеть, реализующая данную операцию при минимальных временных затратах.
Modular codes are widely used in many areas of modern information technologies. The use of these codes nonpositional allows for high speed data processing. Therefore, these algebraic systems suitable for use in digital signal processing algorithms, which are characterized by processing a large volume of data in real time. Using the neural special processors to improve performance digital signal processing. To perform the basic operations of signal processing in polynomial system of residue classes required of multi-adder modulo two. In this paper we consider a neural network that implements this operation at minimum cost circuit.
modular codes polynomial system of residue classes
modular operations
modulo two neural networks

В настоящее время математическая модель ортогональных преобразований сигналов, реализуемых в полях Галуа, нашла широкое применение. Это связано с тем, что использование полиномиальной системы классов вычетов (ПСКВ) позволяет обеспечить максимальную точность обработки сигналов в реальном масштабе времени. Повысить производительность спецпроцессоров (СП) цифровой обработки сигналов (ЦОС), которые функционируют в ПСКВ, возможно за счет использования нейросетевого базиса. Поэтому разработка многовходового нейросетевого сумматора по модулю два, обладающего минимальными временными затратами, является актуальной задачей.

Применение ПСКВ при построении спецпроцессоров цифровой обработки сигналов показано в работах [1–3]. Использование многомерной обработки сигналов позволяет не только повысить производительность спецпроцессора ЦОС, но и достичь минимальных схемных затрат. Это связано с тем, что обработка сигналов с помощью модулярных непозиционных кодов осуществляется с операндами, которые имеют меньшую разрядную сетку. Очевидно, что использование изоморфизма, порожденного китайской теоремой об остатках, способствует созданию СП ЦОС, способных реализовать ортогональные преобразования сигналов в реальном масштабе времени.

Известно [4-7], что полиномиальная система классов вычетов поддерживает три модульных операции. Так как сравнения по одному и тому же модулю можно почленно складывать, то для суммы двух полиномов А(z) и B(z), имеющих соответственно коды (α1(z),α2(z),…,αn(z)) и (β1(z),β2(z),…,βn(z)) справедливы соотношения:

sar01.wmf, (1)

где sar02.wmf – операция суммирования по модулю р.

Аналогично получаем для операции вычитания в ПСКВ

sar03.wmf, (2)

где sar04.wmf – операция вычитания (обратная операции суммирования) по модулю р.

Операции умножения операндов над кольцом выполняются согласно

sar05.wmf. (3)

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

Наряду с модульными операциями при реализации СП ЦОС, функционирующих в ПСКВ, требуется выполнение немодульных операций. В работах [5–7] приведены алгоритмы выполнения немодульных процедур, которые были сведены к множеству модульных операций. Это позволяет обеспечить единую элементную базу, на которой реализуется СП ЦОС.

Качественным скачком в обеспечении реального масштаба времени при реализации параллельных вычислений является использование нейросетевого логического базиса (НЛБ). В работах [8–10] представлены алгоритмы ЦОС, которые были реализованы с использованием нейронных сетей прямого распространения. Повышенный интерес данного логическому базису вызван тем, что он, как и полиномиальная система классов, позволяет обрабатывать данные параллельно.

Базовой операцией, которая широко используется в алгоритмах ЦОС, реализуемых в полях Галуа, является суммирование по модулю два. При этом от структуры многовходового сумматора по модулю два во многом будут зависеть временные параметры цифровой обработки сигналов.

В работе [8] показана возможность использования классической нейронной сети, которая используется для построения многовходового сумматора по модулю. Однако, при реализации n-разрядного сумматора по модулю два потребуется sar06.wmf подсетей, каждая из которых будет реализовать модель нейросетевого сумматора по модулю два, представленную в [8].

С целью повысить эффективность работы многовходовых сумматоров по модулю два в работе [9] предлагалось использовать функцию активации «Tribas». Применение данной функции активации позволил сократить схемные затраты, которые необходимы для выполнения базовой операции ЦОС – суммирования по модулю два.

В работе [10] показана целесообразность использования нейросетевого логического базиса для реализации математической модели цифровой обработки сигналов в кольце полиномов. Рассмотрен генетический алгоритм, применение которого позволяет улучшить структуру модулярного нейросетевого специализированного процессора цифровой обработки сигналов.

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

В этом случае многовходовый сумматор по модулю два будет представлять собой трехслойную нейронную сеть, являющуюся многослойным персептроном. Входной слой содержит n нейронов, где n – количество входов, которые в вычислениях не участвуют, а предназначены для распределения входного вектора на нейроны скрытого слоя. Скрытый слой содержит sar07.wmf нейронов. Выходы нейронов скрытого слоя соединены с входами нейрона выходного слоя. Выход данного нейрона является выходом многовходового сумматора по модулю два. Таким образом, нейронная сеть имеет структуру sar08.wmf

На рисунке приведена структура нейросетевого 8-входового сумматора по модулю два. Данный сумматор содержит восемь нейронов входного слоя 1–8, по которым поступает входной вектор, представленный в двоичном коде. Скрытый слой содержит четыре нейрона 9.1–9.4, каждый из которых содержит сумматор 10.i и блок вычисления функции активации 11.i, где i = 1,2,3,4. Выход блока вычисления функции активации является выходом нейрона скрытого слоя. Выходы нейронов 9.1–9.4 скрытого слоя подключены по входу сумматора 12 нейрона выходного слоя. Выход сумматора 12 является выходом восьмивходового сумматора по модулю два.

Каждый сумматор 10.i, где i = 1, 2, 3, 4, нейрона 9.i скрытого слоя имеет n + 1 входов, где n = 8. Первые n входов используются для принятия двоичного кода входного вектора X = [x1, x2, x3, x4, x5, x6, x7, x8,]. На n + 1 вход подается сигнал, который является смещением. Входы сумматоров 10.i, где i = 1, 2, 3, 4, входящих в состав нейрона 9.i скрытого слоя, подключены к выходам нейронов 1–8 входного слоя. Выход сумматора 10.i подсоединен к входу блока вычисления функции активации 11.i, выход которого является выходом нейрона 9.i скрытого слоя. Выходы нейронов 9.1–9.4 скрытого слоя подсоединены к входам сумматора 12 нейрона выходного слоя, выход которого является выходом многовходового сумматора по модулю два.

Входы сумматоров 10.i, где i = 1, 2, 3, 4, входящих в состав нейрона 9.i скрытого слоя, подключены к выходам нейронов 1–8 входного слоя. Выход сумматора 10.i подсоединен к входу блока вычисления функции активации 11.i, выход которого является выходом нейрона 9.i скрытого слоя. Выходы нейронов 9.1–9.4 скрытого слоя подсоединены к входам сумматора 12 нейрона выходного слоя, выход которого является выходом многовходового сумматора по модулю два.

При этом выходы нейронов 1–8 входного слоя подключены к входам сумматоров 10.1–10.14 нейронов 9.1–9.4 скрытого слоя, которые реализуют операцию

sar09.wmf, (4)

где ωji = 1 – синаптические веса i-го нейрона скрытого слоя; xj – значение, поступающее на вход j-го нейрона входного слоя; ω0i – смещение i-го нейрона скрытого слоя.

Для первого нейрона 9.1 скрытого слоя, значение ω01 = – 1. Для второго нейрона 9.2 скрытого слоя ω02 = – 3. Для третьего нейрона 9.3 скрытого слоя ω03 = – 5. Для четвертого нейрона 9.4 скрытого слоя ω04 = – 7.

Результат свертки net10.i, реализованный согласно (1) поступает на вход блока вычисления функции активации 11.i, где i = 1, 2, 3, 4.

Рассмотрим работу многовходового сумматора по модулю два. Пусть на вход поступает вектор X = [1,1,0,0,0,0,0,0], который содержит четное число единиц. Данный вектор подается с выхода нейронов 1–8 входного слоя на входы нейронов 9.1–9.4 скрытого слоя. Сумматоры этих нейронов производят вычисления

sar10a.wmf,

sar10b.wmf,

sar10c.wmf,

sar10d.wmf.

Вычисляемые ненулевые результаты net10.i, где i = 1, 2, 3, 4, поступают на входы блоков вычисления функции активации 9.i. Следовательно, с выходов последних будет сниматься нулевой результат, который поступает на входы сумматора 12. На выходе заданного сумматора будет получен сигнал

sar11.wmf. (5)

Следовательно, результат сложения двух единичных сигналов по модулю два равен нулю, т.е. sar12.wmf.

Пусть на вход многовходового сумматора поступает вектор X = [1,1,0,0,0,0,0,1], который содержит нечетное количество единиц. Данный вектор подается с выходов нейронов 1–8 входного слоя на входы нейронов 9.1–9.4 скрытого слоя. Сумматоры этих нейронов производят вычисления

sar13a.wmf

sar13b.wmf

sar14a.wmf

sar14b.wmf

 

sarkis1.wmf

Нейросетевой многовходовой сумматор по модулю два

 

Нулевая кодовая комбинация с выхода сумматора 10.2 поступает на вход блока вычисления функции активации 9.2, который реализует функцию «стрелка Пирса». В результате этого на выходе нейрона 9.2 будет единичный сигнал. При этом на выходах всех оставшихся нейронов 9.1, 9.3, 9.4 скрытого слоя будет нулевой сигнал. Тогда на выходе сумматора 12 будет получен сигнал

sar15.wmf. (6)

Следовательно, полученный результат равен sar16.wmf.

Проанализировав полученные результаты можно сделать вывод, что для достижения минимизации схемных задач многовходовой сумматор по модулю два, требуется трехслойная нейронная сеть, в которой входной слой содержит 8 нейронов, предназначенных для распределения входного вектора на входы нейронов скрытого слоя, скрытый слой – 4 нейрона, выходной слой – один нейрон, при этом нейрон скрытого слоя содержит сумматор, и блок вычисления функции активации, реализующий функцию «стрелка Пирса», при этом каждый из сумматоров имеет n + 1, где n = 8, входов, первые n входов подключены к выходам нейронов входного слоя соответственно, а на n + 1 вход подается сигнал смещения, величина которого для первого скрытого нейрона равна – 1, для второго равна – 3, для третьего равна – 5, для четвертого равна – 7, выход i-го сумматора, где i = 1, 2, 3, 4, подключен ко входу i-го блока вычисления функции активации, выход которого является выходом i-го нейрона скрытого слоя, входы сумматора нейрона выходного слоя подключены соответственно к выходам всех нейронов скрытого слоя, а выход сумматора является выходом многовходового сумматора по модулю два.

Выводы

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