нейронная сеть для преобразования остаточного кода в двоичный позиционный код

Классы МПК:G06N3/04 архитектура, например топология соединений
Автор(ы):
Патентообладатель(и):Ставропольский военный институт связи ракетных войск (RU)
Приоритеты:
подача заявки:
2006-07-05
публикация патента:

Изобретение относится к нейронным сетям для преобразования остаточного кода в двоичный позиционный код является базовой схемой восстановления позиционного числа по его остаткам. Техническим результатом является сокращение оборудования. Для этого нейронная сеть для преобразования остаточного кода в двоичный позиционный код содержит входной слой нейронов, n-нейронных сетей конечного кольца для преобразования остаточного кода в код обобщенной позиционной системы счисления, n-постоянных запоминающих устройств для хранения двоичных эквивалентов коэффициентов обобщенной позиционной системы счисления и параллельный сумматор. 1 ил. нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

Формула изобретения

Нейронная сеть для преобразования остаточного кода в двоичный позиционный код, содержащая входной слой нейронов, n-нейронных сетей конечного кольца и сумматор, отличающаяся тем, что в нее введены n-постоянных запоминающих устройств для хранения двоичных эквивалентов значений aip 1p2...pi-1 (i=1, 2, ..., n), адресными входами которых являются выходы n-нейронных сетей конечного кольца, реализующие вычислительную модель нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 ,

где нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 i - разряды системы остаточных классов (СОК), a - коэффициенты обобщенной позиционной системы счисления (ОПСС); bij - ортогональные базисы, представленные в ОПСС; i, j=1, 2, ..., n, pi - модуль СОК, входами которых являются выходы нейронов входного слоя, а выходами нейронной сети являются выходы сумматора, входами которого являются выходы n-постоянных запоминающих устройств, по которым поступают двоичные эквиваленты значений a ip1p2...p i-1.

Описание изобретения к патенту

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

Известно устройство для преобразования числа из системы остаточных классов в позиционный код (а.с. 1005028, G06F 5/02), содержащее сдвиговый регистр, блок синхронизации, блок памяти констант и позиционный накапливающий сумматор. Однако такое устройство характеризуется высокой сложностью.

Наиболее близким по технической сущности к заявленному устройству является преобразователь кодов из системы остаточных классов в двоичный позиционный код (а.с. 813408, G06F 5/02), содержащий входной регистр, дешифраторы, преобразователь кодов из системы остаточных классов в полиадический код, группу элементов ИЛИ, элементы задержки и сумматор. Недостатком этого устройства является сложность группы элементов ИЛИ при использовании больших модулей системы остаточных классов и сложность преобразователя остаточного кода в полиадический, который реализует последовательный алгоритм Гарнера.

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

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

КТО имеет вид

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

где нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 , нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 для (pi,pj )=1 для iнейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 j

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 i - остаток числа x по модулю p i, для i=1, 2, ..., n.

Используются разные формы китайской теоремы об остатках (КТО). Из (1) видно, что из КТО получаем нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 , а не само X. Если известно, что x находится между 0 и P-1, то можно записать

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

В некоторых случаях желательно иметь вид КТО, где сумма появляется без оператора по модулю Р. Это можно сделать путем определения вспомогательной функции R(x), так чтобы

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

где нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 .

R(x) - это функция x, определяемая для любого целого числа x.

Из КТО видно, что выражение

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

отличается от x кратным значением P, эта разность равна - P·R(x).

Функция R(x) называется рангом числа и широко используется при вычислениях в модулярной арифметике.

Ранг числа R(x) показывает сколько раз нужно вычесть величину диапазона P из полученного числа, чтобы вернуть его в диапазон. Таким образом, если найдены Pi, нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 и ранг числа R(x), то для перевода числа достаточно вычислить нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 и ввести эту сумму в диапазон [0,P] вычитанием величины, кратной P. Недостаток рассмотренного метода заключается в том, что приходится иметь дело с большими числами P i и, кроме того, действия сложения и умножения надо выполнять в позиционной системе счисления, а полученный результат необходимо вводить в диапазон вычитаемой величины, кратной P.

Необходимо отметить, что Pi и нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 являются константами выбранной системы и определяются заранее, а ранг числа R(x) - переменная величина и сложность ее вычисления линейно зависит от числа оснований СОК, что приводит к еще более сложной процедуре восстановления числа.

Кроме того, применение КТО для восстановления числа требует сложных вычислений в модулярном нейрокомпьютере, так как элементарные процессоры выполняют операции по модулю pi , где i=1, 2, ..., n, а не по модулю P=p1 p2...pn, как это требуется по КТО.

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

Для перехода от вычислений по модулю P к вычислению по модулям pi предлагается метод восстановления чисел на основе совместного использования КТО и ОПСС.

Пусть задана система оснований p1, p 2, ...pn, с диапазоном P=p 1p2...pn, и ортогональными базисами B1, B 2, ..., Bn, которые определяются как

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

где mi - веса ортогональных базисов.

Тогда КТО можно представить в виде

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

где нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 i - остатки (вычеты) числа X по mod pi;

R(x) - ранг числа.

Представим ортогональные базисы Bi в ОПСС, тогда

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

где bij - коэффициенты ОПСС, i,j=1, 2,..., n.

На основании (7) запишем X ОПСС, выражение (6) в виде

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

Так как Bi mod p i=0, нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 j>i, то перед первым значащим разрядом будет i-1 нулей.

Для удобства вычислений базисы можно представить в виде матрицы

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

Тогда XОПСС, запишется как

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

При этом

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

где: ai - коэффициенты ОПСС числа x;

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 i - вычеты числа x по mod p i;

bij - ортогональные базисы, представленные в ОПСС; i,j=1, 2, ..., n.

При использовании традиционной вычислительной базы произведения нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 ibij mod р i можно поместить в память, а адресами будут являться остатки нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 i.

Если вычислительная база представлена в нейросетевом базисе, тогда в качестве весовых коэффициентов нейронной сети будут выступать b ij, а в качестве входных сигналов - остатки нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 i.

Последовательность вычислений для первого варианта имеет вид

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

Для определения всех цифр ОПСС требуется две операции: одна операция для выборки из памяти и одна операция для суммирования. По сравнению с известным последовательным методом Гарнера выигрыш определяется выражением нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 . Для реализации этого метода в нейропроцессоре необходимо иметь средства для выполнения модулярных операций, например нейронные сети конечного кольца по pi основаниям, где i=1, 2, ..., n.

Пример. Пусть основания системы p 1=3, p2=5, p3 =7, p4=2. Дано число x=(2,3,0,1), представленное в СОК по выбранным модулям. Найти представление этого числа в ОПСС, то есть x=[a1,a2 ,a3,a4]. На основании выражения (5) определим ортогональные базисы СОК: B 1=70, B2=126, B3 =120, B4=105. Представим базисы B i в ОПСС, тогда bij:

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 .

В связи с тем, что константы bij определяются выбором системы модулей СОК, то их с учетом переноса в i-разрядах можно поместить в память, тогда процесс преобразования можно представить в виде

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238

Для определения всех цифр ОПСС требуется две операции: одна операция для выборки из памяти и одна операция для суммирования. По сравнению с последовательным итерационным процессом выигрыш равен n-1, где n - число модулей СОК.

Полученные значения коэффициентов ОПСС числа x используем для образования двоичного кода.

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

Нейронная сеть содержит входной слой нейронов 2, n-нейронных сетей конечного кольца (НСКК) 3, n-постоянных запоминающих устройств (ПЗУ) 4, сумматор 5, вход нейронной сети 1, выход нейронной сети 6 и весовые коэффициенты и w=bij 7.

Входной слой 2 предназначен для временного хранения входного остаточного кода, то есть он выполняет роль регистра.

НСКК преобразует остаточный код в код ОПСС, при этом число представляется в виде, соответствующем ОПСС, следующим образом X=a 1+a2p1+a 3p1p2+...+a np1p2...p n-1, где ai - называется коэффициентом ОПСС, причем 0нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 ai<pi. Весовой коэффициент, связанный с каждой цифрой ОПСС a i, равен p1p2 ...pi-1. Такая система имеет тот же диапазон представления, что и система остаточных классов p=p 1p2...pn. Коэффициенты кода ОПСС являются адресами памяти, где хранятся значения произведений aip1p 2...pi-1. Двоичные эквиваленты значений aip1p 2...pi-1, хранящиеся в памяти, поступают на вход сумматора, где по остаткам восстанавливается двоичное число.

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

Входное число x=(нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 1, нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 2, ..., нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 n), представленное в системе остаточных классов своими остатками нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 i по модулям pi (i=1, 2,..., n), поступает на входной слой 2. Входной слой связан с n НСКК. При выбранных модулях СОК структура нейронной сети зависит от одного внешнего параметра и адаптируется к нему посредством загрузки весовых коэффициентов w=bij 7, определенных выражением (7) НСКК p1, p 2, ..., pn 3 реализуют вычислительную модель (10), на выходах которой формируются коэффициенты ОПСС ai (нейронная сеть для преобразования остаточного кода в двоичный   позиционный код, патент № 2318238 ) числа x. Коэффициенты ai являются входными адресами ПЗУi 4, где хранятся двоичные эквиваленты aip 1p2...pi-1. Считанные из ПЗУi двоичные коды, соответствующие произведению aip1 p2...pi-1, суммируются взвешенным сумматором 5. На выходе 6 формируется двоичный код. Время преобразования кода определяется n-тактами синхронизации. Структура преобразователя, реализованная на СБИС, требует n-НСКК по модулям pi, n-ПЗУi , каждое из которых хранит pi слов разрядностью, эквивалентной числу (pi-1)p 1p2...pi-1 и одного параллельного сумматора с ускоренным переносом. Сумматор может быть реализован по типу дерева, тогда время преобразования определяется выражением [log n], где n - число модулей СОК.

Класс G06N3/04 архитектура, например топология соединений

нейронная сеть для определения координат точек на эллиптической кривой -  патент 2397541 (20.08.2010)
устройство для коррекции ошибок в полиномиальной системе классов вычетов с использованием псевдоортогональных полиномов -  патент 2393529 (27.06.2010)
нейронная сеть с пороговой (k, t) структурой для преобразования остаточного кода в двоичный позиционный код -  патент 2380751 (27.01.2010)
нейронная сеть ускоренного масштабирования модулярных чисел -  патент 2359325 (20.06.2009)
конвейерная нейронная сеть конечного кольца -  патент 2317584 (20.02.2008)
программируемая нейроматрица -  патент 2287855 (20.11.2006)
нейронная сеть конечного кольца -  патент 2279132 (27.06.2006)
адаптивная параллельно-конвейерная нейронная сеть для коррекции ошибок -  патент 2279131 (27.06.2006)
нейронная сеть для округления и масштабирования чисел, представленных в системе остаточных классов -  патент 2271570 (10.03.2006)
нейронная сеть для вычисления позиционной характеристики ранга числа, представленного в системе остаточных классов -  патент 2271569 (10.03.2006)
Наверх