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

Классы МПК:G06F7/52 для умножения; для деления
G06N3/02 использующие модели нейронных сетей
Автор(ы):, , , ,
Патентообладатель(и):Червяков Николай Иванович (RU),
Лавриненко Ирина Николаевна (RU),
Кондрашов Александр Владимирович (RU),
Гуйда Михаил Владимирович (RU),
Щегольков Алексей Викторович (RU)
Приоритеты:
подача заявки:
2005-05-11
публикация патента:

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

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

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

Нейронная сеть для деления чисел, представленных в системе остаточных классов, содержащая входной слой нейронов, выходы которых разветвлены на входы нейронных сетей конечного кольца, входящих в состав выходной нейронной сети частного и на входы нейронных сетей конечного кольца по модулям р 12,...рn n+1, входящих в состав нейронной сети для вычисления остатка делителя, которая реализует вычислительную модель нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 n+1=|A|D, где А - исходное число, представленное в системе остаточных классов, D - делитель, D=рn+1, отличающаяся тем, что в нейронную сеть для вычисления остатка делителя введены нейронная сеть конечного кольца для вычисления суммы произведений нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 , где нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 i - остатки исходного числа А по модулю рi, нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 - ортогональные базисы, представленные в обобщенной позиционной системе счисления, i,j=1,2,...n, и нейронная сеть конечного кольца с весовым коэффициентом, равным обратной мультипликативной величине нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 для выполнения финального шага при вычислении остатка от делителя, вход которой соединен с инверсным выходом нейронной сети конечного кольца для вычисления суммы произведений нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 по модулю делителя D, на вход которой подаются значения нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 с выходов нейронных сетей конечного кольца по модулям р12,...р nn+1, выход нейронной сети конечного кольца для выполнения финального шага при вычислении остатка от делителя соединен с первыми входами нейронных сетей конечного кольца, входящих в состав выходной нейронной сети частного, на вторые входы которых поступают остатки исходного числа по модулям р12,...р n, которая реализует вычислительную модель нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 , где нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 , причем di являются константами операции, вычисляемыми заранее по заданному делителю D и не зависящими от исходного числа А, на выходной нейронной сети частного получают результат от деления исходного числа на заданный делитель.

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

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

Известно устройство для деления чисел в системе остаточных классов (Овчаренко Л.А., Лопатин Д.С. Деление числа в модулярном коде на основание системы счисления // Телекоммуникации. - 2002. - №6. - С.7-10), содержащее табличные вычислители, когерентный преобразователь модулярного кода, устройство отображения и сумматор по модулю.

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

Наиболее близким к данному изобретению техническим решением является устройство, представленное в виде "Нейронной сети для округления и масштабирования чисел, представленных в системе остаточных классов" (Решение о выдаче патента по заявке №2003115586/09(016529) от 26.05.2003), содержащее входной слой нейронов, нейронную сеть конечного кольца (НСКК) определения ранга числа, нейронную сеть конечного кольца вычисления остатка по основанию n+1, n - нейронных сетей конечного кольца вычисления масштабированного числа.

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

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

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

Поставленная цель достигается тем, что в нейронную сеть введена нейронная сеть конечного кольца для определения остатка делителя. Таким образом, нейронная сеть для деления чисел, представленных в системе остаточных классов, будет состоять из входного слоя 2 с нейронами 3, нейронной сети для вычисления остатка делителя 4, состоящей из нейронных сетей конечного кольца 5 по модулям СОК р1, р 2,...,pn делимого и нейронных сетей конечного кольца 6 по модулю делителя, нейронных сетей конечного кольца 14 для вычисления произведений нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 , нейронной сети конечного кольца 11 для выполнения финального шага при выполнении делителя остатка и выходной нейронной сети частного 7, состоящей из НСКК 8.

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

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

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

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

Число А лежит в пределах - Рнейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 А<Р, где Р=р1·р 2·...·рn.

При выполнении этого условия представление (1) взаимно однозначно с обычным представлением А в позиционной системе счисления, т.е. по (нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 1,нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 2,...,нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 n) можно определить А.

Деление числа в СОК сводится к отбрасыванию от делимого соответствующим образом подобранного остатка, определяющегося делителем. Ниже выводится алгоритм деления числа А на число D с отбрасыванием остатка в предположении, что D либо целое положительное число, попарно простое с p12 ,...,рn, либо целое положительное число, представляющее собой произведение чисел, попарно простых с p 12,...,рn . Алгоритм деления получается, исходя из следующих рассуждений.

Если А делится на D без остатка, то операция деления является модульной операцией и сравнительно просто реализуется на НСКК. Поэтому алгоритм деления в качестве вспомогательной операции включает операцию нахождения числа нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 , которое делится на D без остатка. Операция нахождения нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 заменяет операцию отбрасывания остатка от деления. При нахождении нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 используется алгоритм определения остатка делителя путем расширения системы оснований, где в качестве расширяемого основания используется делитель. Пусть

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

Тогда

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

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

Из выражения (3) видно, что нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 делится без остатка на D.

Рассмотрим алгоритм определения остатка делителя.

Пусть СОК состоит из оснований р 1, р2, ..., рn . Диапазон чисел этой системы будет нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 . Добавим к числу оснований СОК делитель D=р n+1. Диапазон этой системы равен нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 . Тогда любое число А из диапазона [0, P n+1) в обобщенной позиционной системе счисления (ОПСС) представим как нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 , где аi - коэффициенты обобщенной позиционной системы счисления.

Если число А будет лежать в первоначальном диапазоне [0, Рn), то в обобщенной позиционной системе цифра an+1 =0. Этот факт и используется для получения остатка делителя от деления числа А на новое основание СОК рn+1 , которое отождествляется с делителем.

Пусть число А имеет представление (нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 1,нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 2,...,нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 n) по основаниям p 1,p2,...,рn . Добавим новое основание pn+1=D, тогда число нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 в системе оснований р1 2,...,рn, D=pn+1 , где нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 - остаток от деления числа А на рn+1 , т.е. искомая цифра по новому основанию, равному делителю D.

Для определения этой цифры используется метод перевода числа из СОК в ОПСС, включая неизвестную цифру нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 в проводимые операции. При этом мы параллельно получаем цифры в ОПСС a1,a2 ,...,аn и выражение для цифры a n+1=0. Из полученных соотношений и определяем остаток числа по модулю делителя нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 .

Расширим число А в системе оснований р 12,...,рn , рn+1, тогда

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

где нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 - диапазон расширенной системы оснований,

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

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

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

где нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 - коэффициенты ОПСС; i,j=1,2,...,n.

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

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

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

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

где нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 i - вычеты числа А по р i;

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 - ортогональные базисы, представленные в ОПСС.

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

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

Пример 1. Пусть p1=2, p 2=3, p3=5, D=7, Р n+1=2·3·5·7=210, B1 =105, B2=70, В3=126, B4=120.

Далее на основании (5) определим нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 :

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

Пример 2. Пусть задана система модулей р 1=2, р2=3, р3 =5, тогда Рn=2·3·5=30. И пусть задано число X=23=(1, 2, 3). Расширим систему оснований, где в качестве рn+1 возьмем делитель D=7. Необходимо определить остаток по основанию, равному делителю.

Пусть X=23=(1, 2, 3, |A|7) в системе оснований р1=2, р2=3, р 3=5, р4=D=7.

Воспользуемся константами нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 , приведенными в (8), которые заданы матрицей

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

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

Таблица 1
Вычеты числа Х по модулю pi Модули
p1 =2p2=3 p3=5p 4=7
1 112 3
20 42 4
30 03 12
|A|7 00 04|A|7
Коэффициенты ОПСС числа A 123 6+4|A|7

Так как нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 , но по условию a4=0, т.е. 4|A| 7=-6 или нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 . Мультипликативная обратная величина нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 , и так как число 6 отрицательное, возьмем его дополнение по модулю 7.

Итак, вычет числа А по модулю p 4=D=7 определяется выражением |A|7 =2·(7-6)=2.

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

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

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

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

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

На основании проведенных расширений алгоритм деления числа А на число D с отбрасыванием остатка можно представить как последовательность следующих операций:

определение нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 n+1 на основе вычислительной модели (7);

вычисление нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 на основе вычислительной модели (3);

нахождение частного от деления нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 на D

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

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

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

В случае, если pi - простые числа

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

Величины d1,d 2,...,dn не зависят от А и они вычисляются заранее по заданному D, т.е. числа d1,d 2,...,dn являются константами операции. Алгоритм деления числа А на число D, являющееся произведением чисел, попарно простых с р1 2,...,рn, может быть представлен как последовательность алгоритмов деления числа на числа, попарно простые с p1,p2,...,p n.

Пример 3. Пусть задана система оснований, как в примере 1. Требуется число А=(1, 2, 3) разделить на D=7.

В примере 2 вычислен остаток по модулю D и он равен нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 4=2.

После этого вычисляются нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 по формуле (3)

нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312

Далее вычисляем по формуле (11) d 1=|70|2=1, d2=|71| 3=1 и d3=|73 |5=3.

Наконец, по формуле (10) вычисляем частное F=(|1·1|2, |1·0| 3, |1·3|5)=(1, 0, 3).

Нетрудно проверить, что F=23:7нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 3нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 (1, 0, 3).

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

На чертеже представлена схема нейронной сети для деления чисел, представленных в СОК.

Принцип работы данного изобретения излагается ниже.

Нейронная сеть, приведенная на чертеже, позволяет выполнять операции деления исходного числа (нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 1,нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 2,...,нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 n) 1 на число D, соответствующее расширяемому модулю pn+1.

Остатки делимого (нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 1,нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 2,...,нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 n) 1 по системе оснований р 12,...,рn поступают на вход нейронов 3 входного слоя 2, остаток делителя с учетом переносов 10 формируется нейронной сетью 4, состоящей из НСКК 5, 6, 14, финальный шаг которого вычисляется НСКК 11, а результат (частное) в остатках появляется на выходе нейронной сети частного 7, выходы 9.

С выходов нейронов 3 входного слоя 2 остатки делимого (нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 1,нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 2,...,нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 n) по модулям р12,...,рn поступают на вход нейронной сети 4, состоящей из НСКК 5, 6, по соответствующим модулям. Весовые коэффициенты 12 нейронов НСКК 5, 6, выполняющие роль распределенной памяти, определяются значениями нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 . НСКК 5, 6 вычисляют значение нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 с учетом переносов 10. Выходные значения НСКК 5, 6 с весовыми коэффициентами 13, равными 1, подаются на вход НСКК 14 для выполнения суммирования значений нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 .

Результаты суммирования с выхода НСКК 14 по модулю D (делителя), соответствующему остатку делителя, в дополнительном коде подаются на вход нейронной сети НСКК 11 для выполнения финального шага, весовой коэффициент которого 15 определяется мультипликативной величиной нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 . На выходе НСКК 11 формируется остаток делителя, равный нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 , который поступает на первые входы нейронной сети 7 НСКК 8. На вторые входы НСКК 8 с входного слоя поступают остатки делимого нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 1,нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 2,...,нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 n. Весовые коэффициенты 16 НСКК 8 определяются выражением нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 , где i=1,2,...,n. Используя распределительный закон алгебры, выходные НСКК 8 реализуют вычислительную модель нейронная сеть для деления чисел, представленных в системе остаточных   классов, патент № 2305312 , на выходах которой формируется частное 9.

Время деления числа определяется двумя циклами синхронизации: один цикл для формирования остатка делителя и один цикл для формирования частного.

Работа выполнена по гранту А 04-2.8-755.

Класс G06F7/52 для умножения; для деления

способ организации умножения чисел с плавающей запятой, представленных в системе остаточных классов -  патент 2485574 (20.06.2013)
устройство для умножения чисел в коде "1 из 4" -  патент 2475812 (20.02.2013)
устройство и способ комбинаторного кодирования сигналов с низкой сложностью -  патент 2438235 (27.12.2011)
ускоренный умножитель на нейронах -  патент 2322688 (20.04.2008)
способ, устройство и команда для выполнения знаковой операции умножения -  патент 2275677 (27.04.2006)
целочисленное умножение высокого порядка с округлением и сдвигом в архитектуре с одним потоком команд и множеством потоков данных -  патент 2263947 (10.11.2005)
устройство для умножения чисел в коде "1 из 4" -  патент 2251144 (27.04.2005)
делитель на нейронах -  патент 2249846 (10.04.2005)
умножитель на нейронах -  патент 2249845 (10.04.2005)
устройство для умножения по модулю пять -  патент 2181904 (27.04.2002)

Класс G06N3/02 использующие модели нейронных сетей

способ интеллектуальной обработки информации в нейронной сети -  патент 2514931 (10.05.2014)
способ и устройство автоматического распознавания типов манипуляции радиосигналов -  патент 2510077 (20.03.2014)
способ интеллектуальной обработки информации в нейронной сети -  патент 2502133 (20.12.2013)
способ интеллектуальной обработки информации в нейронной сети -  патент 2483356 (27.05.2013)
способ прогнозирования времени наступления и уровня паводков -  патент 2480825 (27.04.2013)
локальная компьютерная офтальмомикрохирургическая сеть операций энуклеации и эвисцерации -  патент 2460117 (27.08.2012)
автоматизированное рабочее место офтальмомикрохирурга по детской хирургии -  патент 2460116 (27.08.2012)
локальная компьютерная офтальмомикрохирургическая сеть операций по кератопластике -  патент 2459235 (20.08.2012)
способ автоматизированной робастной классификации радиосигналов по структурно-временным параметрам -  патент 2450356 (10.05.2012)
способ интеллектуальной обработки информации в нейронной сети -  патент 2427914 (27.08.2011)
Наверх