НЕЙРОННАЯ СЕТЬ ДЛЯ ПРЕОБРАЗОВАНИЯ ОСТАТОЧНОГО КОДА В ДВОИЧНЫЙ ПОЗИЦИОННЫЙ КОД Российский патент 2008 года по МПК G06N3/04 

Описание патента на изобретение RU2318238C1

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

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

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

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

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

КТО имеет вид

где , для (pi,pj)=1 для i≠j

αi - остаток числа x по модулю pi, для i=1, 2, ..., n.

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

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

где .

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

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

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

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

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

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

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

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

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

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

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

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

где αi - остатки (вычеты) числа X по mod pi;

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

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

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

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

Так как Bi mod pi=0, ∀j>i, то перед первым значащим разрядом будет i-1 нулей.

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

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

При этом

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

αi - вычеты числа x по mod pi;

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

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

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

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

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

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

.

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

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

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

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

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

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

НСКК преобразует остаточный код в код ОПСС, при этом число представляется в виде, соответствующем ОПСС, следующим образом X=a1+a2p1+a3p1p2+...+anp1p2...pn-1, где ai - называется коэффициентом ОПСС, причем 0≤ai<pi. Весовой коэффициент, связанный с каждой цифрой ОПСС ai, равен p1p2...pi-1. Такая система имеет тот же диапазон представления, что и система остаточных классов p=p1p2...pn. Коэффициенты кода ОПСС являются адресами памяти, где хранятся значения произведений aip1p2...pi-1. Двоичные эквиваленты значений aip1p2...pi-1, хранящиеся в памяти, поступают на вход сумматора, где по остаткам восстанавливается двоичное число.

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

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

Похожие патенты RU2318238C1

название год авторы номер документа
НЕЙРОННАЯ СЕТЬ С ПОРОГОВОЙ (k, t) СТРУКТУРОЙ ДЛЯ ПРЕОБРАЗОВАНИЯ ОСТАТОЧНОГО КОДА В ДВОИЧНЫЙ ПОЗИЦИОННЫЙ КОД 2008
  • Червяков Николай Иванович
  • Головко Александр Николаевич
  • Лавриненко Антон Викторович
  • Кондрашов Юрий Владимирович
  • Козлов Владимир Андреевич
  • Назаренко Сергей Васильевич
  • Оспищев Михаил Александрович
RU2380751C1
НЕЙРОННАЯ СЕТЬ ДЛЯ РАСШИРЕНИЯ КОРТЕЖА ЧИСЛОВОЙ СИСТЕМЫ ВЫЧЕТОВ 2003
  • Червяков Н.И.
RU2256226C2
НЕЙРОННАЯ СЕТЬ ДЛЯ ВЫЧИСЛЕНИЯ ПОЗИЦИОННЫХ ХАРАКТЕРИСТИК НЕПОЗИЦИОННОГО КОДА 2003
  • Червяков Н.И.
  • Малофей А.О.
  • Рыбальченко М.С.
  • Щелкунова Ю.О.
RU2257615C2
АДАПТИВНАЯ ПАРАЛЛЕЛЬНО-КОНВЕЙЕРНАЯ НЕЙРОННАЯ СЕТЬ ДЛЯ КОРРЕКЦИИ ОШИБОК 2003
  • Червяков Николай Иванович
  • Галкина Валентина Андреевна
  • Стрекалов Юрий Анатольевич
  • Лавриненко Сергей Викторович
RU2279131C2
НЕЙРОННАЯ СЕТЬ ДЛЯ ПРЕОБРАЗОВАНИЯ ПОЛИАДИЧЕСКОГО КОДА В КОД СИСТЕМЫ ОСТАТОЧНЫХ КЛАССОВ 2003
  • Червяков Н.И.
  • Сивоплясов Д.В.
RU2258257C2
НЕЙРОННАЯ СЕТЬ ДЛЯ ДЕЛЕНИЯ ЧИСЕЛ, ПРЕДСТАВЛЕННЫХ В СИСТЕМЕ ОСТАТОЧНЫХ КЛАССОВ 2005
  • Червяков Николай Иванович
  • Лавриненко Ирина Николаевна
  • Кондрашов Александр Владимирович
  • Гуйда Михаил Владимирович
  • Щегольков Алексей Викторович
RU2305312C2
НЕЙРОННАЯ СЕТЬ ДЛЯ ОБНАРУЖЕНИЯ, ЛОКАЛИЗАЦИИ И ИСПРАВЛЕНИЯ ОШИБОК В СИСТЕМЕ ОСТАТОЧНЫХ КЛАССОВ 2005
  • Червяков Николай Иванович
  • Лавриненко Ирина Николаевна
  • Сивоплясов Дмитрий Владимирович
  • Дьяченко Игорь Васильевич
  • Иванов Антон Владимирович
  • Головко Александр Николаевич
RU2301442C2
НЕЙРОННАЯ СЕТЬ ДЛЯ КОРРЕКЦИИ ОШИБОК В МОДУЛЯРНЫХ НЕЙРОКОМПЬЮТЕРАХ 2003
  • Червяков Н.И.
  • Шапошников А.В.
RU2256213C2
НЕЙРОННАЯ СЕТЬ ДЛЯ ОБНАРУЖЕНИЯ ОШИБОК В СИММЕТРИЧНОЙ СИСТЕМЕ ОСТАТОЧНЫХ КЛАССОВ 2007
  • Червяков Николай Иванович
  • Лавриненко Ирина Николаевна
  • Лавриненко Сергей Викторович
  • Лавриненко Антон Викторович
  • Головко Александр Николаевич
RU2374678C2
НЕЙРОННАЯ СЕТЬ УСКОРЕННОГО МАСШТАБИРОВАНИЯ МОДУЛЯРНЫХ ЧИСЕЛ 2007
  • Червяков Николай Иванович
  • Головко Александр Николаевич
  • Лавриненко Антон Викторович
  • Сляднев Виталий Викторович
RU2359325C2

Реферат патента 2008 года НЕЙРОННАЯ СЕТЬ ДЛЯ ПРЕОБРАЗОВАНИЯ ОСТАТОЧНОГО КОДА В ДВОИЧНЫЙ ПОЗИЦИОННЫЙ КОД

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

Формула изобретения RU 2 318 238 C1

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

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

Документы, цитированные в отчете о поиске Патент 2008 года RU2318238C1

SU 8113408 A, 25.03.1981
Устройство для формирования позиционных характеристик непозиционного кода 1981
  • Коляда Андрей Алексеевич
SU968802A1
Преобразователь кода из системы остаточных классов в позиционный код 1978
  • Амербаев Вильжан Мавлютинович
  • Альзамарова Эльвира Искаковна
  • Бородин Александр Александрович
  • Петухов Борис Евдокимович
SU744549A1
Конвейерный преобразователь чисел из кода системы счисления в остаточных классах в позиционный код 1990
  • Лунева Людмила Ивановна
  • Хаспулатов Эльдар Хаспулатович
SU1798921A1
УСТРОЙСТВО ДЛЯ ПРЕОБРАЗОВАНИЯ ЧИСЕЛ ИЗ СИСТЕМЫ ОСТАТОЧНЫХ КЛАССОВ В ПОЗИЦИОННУЮ СИСТЕМУ СЧИСЛЕНИЯ 2004
  • Червяков Николай Иванович
  • Евдокимов Алексей Алексеевич
  • Шалин Борис Сергеевич
RU2275741C2
УСТРОЙСТВО ДЛЯ ПРЕОБРАЗОВАНИЯ ЧИСЛА ИЗ СИСТЕМЫ ОСТАТОЧНЫХ КЛАССОВ В ПОЗИЦИОННЫЙ КОД 2002
  • Оцоков Ш.А.
  • Шухман И.М.
RU2235423C2
КЛЕЙ-РАСПЛАВ 0
SU357212A1
Устройство для контроля положения петли рулонного материала 1972
  • Осипов Виктор Васильевич
  • Давыдов Радий Викторович
  • Лещенко Василий Германович
SU482376A1

RU 2 318 238 C1

Авторы

Червяков Николай Иванович

Даты

2008-02-27Публикация

2006-07-05Подача