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

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

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

Известно устройство для перевода числа, представленного в системе остаточных классов, в полиадическую систему счисления (А.С. №705443 М. Кл2. G 06 F 5/02, СССР, БИ №47, 1979), содержащее входной регистр, состоящий из входных регистров по каждому основанию, матрицу элементов И, первую группу элементов ИЛИ, матрицу элементов И второй ступени, вторую группу элементов ИЛИ, выходной регистр, состоящий из выходных регистров по каждому основанию и группы элементов ИЛИ и И. К недостаткам устройства относится сложность и низкая скорость преобразования кодов.

Наиболее близким техническим решением к предложенному является устройство для перевода числа, представленного в системе остаточных классов, в полиадическую систему счисления (А.С. №652556 М. Кл2. G 06 F 5/02, СССР, БИ №10, 1979), содержащее входной регистр, состоящий из регистров по основаниям, матрицу элементов И первой ступени, первую группу элементов ИЛИ, матрицу элементов И второй ступени, вторую группу элементов ИЛИ, матрицу элементов И третьей ступени, третью группу элементов ИЛИ, матрицу элементов И четвертой ступени, четвертую группу элементов ИЛИ, элементы И и ИЛИ и преобразователь кода.

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

Цель изобретения - упрощение устройства и повышение быстродействия.

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

На фиг.1 представлена структура нейронной сети для расширения кортежа числовой системы вычетов, которая содержит входной слой 15 для фиксирования некоторого числа с нейронами 2, на вход которых поступает входной кортеж числовой системы вычетов (а1, а2,... ,аn) 1 нерасширенной системы оснований, треугольную матрицу 10, состоящую из нейронных сетей конечного кольца с нейронами 4, весовыми коэффициентами wij 3 и переносами 12, модульные сумматоры 11, состоящие из нейронных сетей конечного кольца с нейронами 6 и переносами 13, весовыми коэффициентами wjk 5 и выход 14 модулярного сумматора по расширенному основанию рn+1, в дополнительном коде (pn+1-an+1), где аn+1 - коэффициенты ОПСС, выходной модулярный сумматор 8 с весовыми коэффициентами 7 и выходом нейронной сети для выполнения финального шага 9 для формирования вычета α n+1 по расширенному основанию. В настоящее время система остаточных классов (СОК) привлекает все более пристальное внимание из-за ее способности поддерживать высокоскоростную арифметику при параллельной обработке данных. СОК определяется набором модулей pi из относительно простых чисел.

Пусть р1, р2,... ,pn - попарно взаимно простые целые числа, и α i=xmodpi. Тогда соответствие Х→ (α 1, α 2,... , α n) между целыми числами в интервале [0,Р) и набором системы вычетов вида (α 1, α 2,... ,α n), 0<α ii, 0<i≤ n взаимно однозначно. Кортеж числовой системы вычетов (α 1, α 2,... ,α n) называется модулярным представлением или представлением числа X в СОК.

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

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

Задачу расширения системы оснований можно сформулировать следующим образом: найти остаточное представление числа по новому основанию (новым основаниям), если известно представление числа по другим основаниям, т.е. найти остаток от деления на число, если известны остатки от деления на другие числа.

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

Предлагается метод расширения системы оснований, который позволяет определить вычет числа по новому основанию, базируясь на использовании китайской теоремы об остатках (КТО) и обобщенной позиционной системы счисления (ОПСС). Пусть вновь задана система оснований p1, p2, ... ,pn с диапазоном Р=р1р2...рn, ортогональными базисами B1, B2, ... , Вn, веса которых m1, m2,... , mn и определяются из сравнения . По определению Пусть в системе задано число А=(α 1, α 2,... ,α n), где α i=A mod pi. Расширим систему оснований, добавляя основание pn+1, тогда диапазон системы станет = рn+1·Р, ортогональные базисы системы , ,... , , их веса причем . Задача состоит в определении цифры аn+1 числа А по основанию pn+1.

Рассмотрим число A в системе оснований p1, р2, …,pn, pn+1, тогда

где: - диапазон расширенной системы оснований;

- ортогональные базисы расширенной системы оснований.

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

где: - коэффициенты ОПСС;

i,j=1,2,... ,n.

На основании (2) запишем выражение (1) в виде

Из выражения (3) можно определить коэффициенты аi числа А, тогда

где: α i - вычеты числа А по mod pi;

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

Цифры аi в представлении ОПСС получаются суммированием по модулю pi всех произведений и переносом, генерируемым при формировании аi-1. Перенос генерируется как число раз, когда сумма цифр в ОПСС переполняется по модулю рi. Этот перенос используется для формирования цифр аi+1. Последний перенос, генерируемый при получении последней цифры числа в ОПСС, отбрасывается. Рассмотренный метод выполняется в параллельном режиме. Выигрыш в быстродействии данного метода с итеративным методом очевиден, поскольку он уменьшает время преобразования с n циклов синхронизации до трех циклов. Цифры изменяют значения от 0 до рi-1, причем являются константами, поэтому произведение можно поместить в ПЗУ или в весовые коэффициенты связей между нейронами. Адресами произведений являются вычеты α i числа А по модулю рi.

Для иллюстрации этого метода приведем пример 1.

Пусть p1=2, p2=3, р3=5, р4=7, ϕ =2· 3· 5· 7=210, B1=105, B2=70, B3=126, B4=120.

Тогда на основании (2) определим :

Пусть А=11=(1, 2,1,4). Тогда в ПЗУ поместим следующие числа:

Преобразование числа А из СОК в ОПСС имеет вид

Рассмотрим метод определения вычета по расширенному основанию. Пусть СОК состоит из оснований р12...n.Объем диапазона этой системы будет Добавим к числу оснований СОК новое основание рn+1. Объем диапазона этой системы Тогда любое число х из диапазона [0, ϕ ) в обобщенной позиционной системе счисления представимо в виде Если число х будет лежать в первоначальном диапазоне [0; Р), то в ОПСС цифра аn+1=0. Этот факт и используется для получения остатка (вычета) от деления числа х на новое основание COK pn+1.

Пусть число х имело представление (α 1, α 2,... ,α n) по основаниям р1, р2,... , рn. Добавляем новое основание pn+1, тогда число x=(α 1, α 2,... , α n, ) в системе оснований p1, p2,... ,pn, pn+1, где - остаток от деления числа х на pn+i, т.е. искомая цифра по новому основанию.

Для определения этой цифры используем метод перевода числа из СОК в ОПСС, включая неизвестную цифру в проводимые операции. При этом мы параллельно получим цифры ОПСС а1, а2,... , аn и выражение для цифры an+1. Но так как по предположению число х∈ [0; Р), то цифра аn+1=0. Из полученного соотношения и определяем искомую цифру .

Рассмотрим этот метод на примере 2.

Пусть задана система модулей р1= 2, р2=3, р3=5, тогда Р=2· 3· 5=30. И пусть задано число х=11=(1, 2, 1). Расширим систему оснований, добавляя р4=7. Тогда x=11=(1, 2, 1, ) в системе оснований p1=2, p2=3, р3=5, p4=7.

Набор констант bij приведен в (5) и задается матрицей

Процесс решения задачи приведен в таблице 1.

Так как но по условию а4=0, т.е. или

Мультипликативная обратная величина и так как число 5 отрицательное, возьмем его дополнение по модулю 7.

Итак, вычет числа х по модулю 7 определяется выражением

Тогда, расширенное представление числа будет х=11=(1, 2, 1, 4).

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

Преимущества предложенного метода расширения системы вычетов состоит в том, что:

- все вычисления выполняются в параллельных каналах по отдельным модулям, причем каждый модуль отождествляется с отдельным каналом;

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

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

Принцип работы нейронной сети для расширения кортежа числовой системы вычетов излагается ниже. Нейронная сеть, приведенная на фиг.1, позволяет определить вычет α n+1 по дополнительно введенному основанию рn+1 по известным вычетам (α 1, α 2,... ,α n) 1 исходной системы оснований р1, р2, ... ,рn. Входной кортеж (α 1, α 2,... ,α n) системы вычетов 1 по системе оснований р1, р2, ... ,рn поступает на нейроны 2, расположенные во входном слое 15, а вычет α n+1 по расширенному основанию рn+1 появляется на выходе модулярного сумматора 8, выход 9.

С выходов нейронов 2 входного слоя 15 значения вычетов по модулям р1, р2, ... ,pn поступают на входы НСКК, нейроны 4, по соответствующим модулям треугольной матрицы 10. Весовые коэффициенты нейронов 4, выполняющие роль распределенной памяти, определяются значением wij=. Нейроны 4 вычисляют значение с учетом переноса 12. Выходные значения НСКК, нейроны 4 треугольной матрицы 10, подаются на вход НСКК с весовыми коэффициентами wjk=1 для выполнения модульного суммирования 11, нейроны 6, где суммируются согласно правилу сложения цифр в представлении ОПСС, т.е. данные в i-м канале будут суммироваться с учетом переноса 13 в (i-1) канале по модулю рi в представлении ОПСС.

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

где wij=.

Из выражения (7) видно, что значение по расширенному основанию α n+1wn(n+1) в суммировании не участвует. С выхода НСКК по расширенному модулю, полученное значение суммы в дополнительном коде 14, подается на вход нейронной сети для выполнения финального шага, нейроны 8, весовой коэффициент которого wkl 7 определяются мультипликативной величиной На выходе нейрона 8 формируется вычет аn+1 9 по расширенному основанию.

Данное устройство может быть применено для определения вычетов по любому количеству l различных модулей. При этом определенные внешние параметры нейронных сетей для выполнения финального шага вычисления вычета по дополнительным расширенным модулям будут определяться мультипликативной величиной где l –количество расширенных модулей.

Время расширения кортежа числовой системы вычетов по любому количеству модулей определяется тремя циклами синхронизации: один цикл для формирования произведений один цикл для формирования где s=1, 2,... , l и один цикл для выполнения финального шага.

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

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

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

Реферат патента 2005 года НЕЙРОННАЯ СЕТЬ ДЛЯ РАСШИРЕНИЯ КОРТЕЖА ЧИСЛОВОЙ СИСТЕМЫ ВЫЧЕТОВ

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

Формула изобретения RU 2 256 226 C2

Нейронная сеть для расширения кортежа числовой системы вычетов машинного диапазона модулярного нейрокомпьютера, содержащая входной слой нейронов для фиксирования числа нейронов и вычисления значений вычетов по модулям p1, p2, …, pn, усеченную треугольную матрицу нейронных сетей конечного кольца по модулям системы остаточных классов, нейронной сети конечного кольца по модулям системы остаточных классов, при этом упомянутые нейронные сети конечного кольца предназначены для вычисления значения с учетом переноса, где - коэффициенты обобщенной позиционной системы счисления, - вычеты из числа А по mod pi, в нее введены нейронные сети конечного кольца для выполнения модульного суммирования по всем основаниям и дополнительному расширяемому модулям и нейронная сеть для выполнения финального шага вычисления вычета по дополнительно расширяемому модулю, отличающаяся тем, что в ней выходы нейронов входного слоя разветвлены на входы нейронных сетей конечного кольца усеченной треугольной матрицы, выполненной в виде распределенной памяти, выходы которых соединены с входами нейронных сетей конечного кольца с единичными синаптическими весами для выполнения модульного суммирования по всем основным и дополнительно расширяемому модулям, выходы переносов которых iмодулей, где i= 2, 3, … n, соединены с входами i+1 модулей, а выход суммы n+1 модуля соединен со входом нейронной сети для выполнения финального шага вычисления вычета по дополнительно расширяемому основанию.

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

Устройство для перевода числа, представленного в системе остаточных классов,в полиадическую систему счисления 1976
  • Червяков Николай Иванович
  • Лисунов Владимир Викторович
SU652556A1
Устройство для перевода числа,представленного в системе остаточных классов, в полиадическую систему счисления 1976
  • Червяков Николай Иванович
  • Лисунов Владимир Викторович
SU705443A2
SU 1488968 A1, 23.06.1989
Преобразователь кодов из системыОСТАТОчНыХ КлАССОВ B дВОичНыйпОзициОННый КОд 1979
  • Червяков Николай Иванович
  • Зайцев Александр Николаевич
SU813408A1
КЛЕЙ-РАСПЛАВ 0
SU357212A1
US 4825401 A, 25.04.1989.

RU 2 256 226 C2

Авторы

Червяков Н.И.

Даты

2005-07-10Публикация

2003-07-30Подача