адаптивная параллельно-конвейерная нейронная сеть для коррекции ошибок

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

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

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

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

Адаптивная параллельно-конвейерная нейронная сеть для коррекции ошибок, содержащая блок нейронной сети конечного кольца формирования цифр в представлении обобщенной позиционной системы, отличающаяся тем, что в нее включены блок обнаружения ошибок, блок исправления ошибок и блок реконфигурации и локализации ошибок, при этом информационный вход адаптивной параллельно-конвейерной нейронной сети соединен с входом блока нейронной сети конечного кольца формирования цифр в представлении обобщенной позиционной системы, при этом блок исправления ошибок содержит первую адаптируемую нейронную сеть конечного кольца и постоянное запоминающее устройство весовых коэффициентов, а блок обнаружения ошибок содержит четыре схемы сравнения, элемент И, элемент ИЛИ и два демультиплексора, управляющие входы которых соединены с выходом блока реконфигурации и локализации ошибок, блок нейронной сети конечного кольца формирования цифр в представлении обобщенной позиционной системы выдает сигналы через демультиплексоры на входы упомянутых схем сравнения соответственно, при этом вторая и четвертая схемы сравнения выдают сигналы на блок реконфигурации и локализации ошибки, а также выдают единичные сигналы на входы элемента И, на выходе которого формируется сигнал «ошибки нет», при этом сигналы с первой и третьей схем сравнения через элемент ИЛИ поступают на вход постоянного запоминающего устройства весовых коэффициентов блока исправления ошибки, управляющий вход упомянутого постоянного запоминающего устройства весовых коэффициентов соединен с выходом блока реконфигурации и локализации ошибки, при этом упомянутое постоянное запоминающее устройство весовых коэффициентов выдает сигналы на первую нейронную сеть конечного кольца блока исправления ошибки, которая соединена с выходом блока нейронной сети конечного кольца формирования цифр в представлении обобщенной позиционной системы, выход первой нейронной сети конечного кольца блока исправления ошибки является выходом адаптивной параллельно-конвейерной нейронной сети.

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

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

Известно устройство для контроля и исправления ошибок в избыточном модулярном коде (патент №2022472, RU 5 Н 03 М 13/00), содержащее блоки сравнения, блоки умножения, блоки элементов «ИЛИ», блоки элементов «И», блоки преобразователей и вычислителей.

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

Наиболее близким к данному изобретению является устройство для обнаружения ошибок в информации, представленной в системе остаточных классов (патент №2022471, RU 5 Н 03 М 13/00), которое содержит блок преобразования СОК-ОПС, блок вычисления индекса числа, блок вычисления дополнительного кода индекса, сумматора, блок вычисления антииндекса суммы, блок сравнения, блок умножения на константу, счетчик.

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

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

На чертеже представлена схема предложенного устройства, которое содержит блок нейронной сети конечного кольца (НСКК) формирования цифр в представлении ОПС - 23, блок обнаружения ошибок - 26, блок реконфигурации и локализации ошибки - 22, блок исправления ошибки - 25.

Стандартная система счисления избыточных чисел характеризуется рядом k-парных простых чисел {р12...pn}, где (pi,pj)=1 для iадаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 j. Рассмотрим комплексно вопросы обнаружения, локализации и исправления ошибок в модулярных вычислительных структурах и их реализацию на основе использования нейронных сетей.

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

Целое число Аадаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 [0,Р-1], где Р=р1·р2·...p n может быть представлено в виде следующего выражения

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

где ai - коэффициенты ОПС; р i - основания системы счисления, для i=[1,n].

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

Пусть адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2...адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 n представляет собой целые числа в системе остаточных классов по модулю рi, тогда:

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

где Аадаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 Р-1; Aiадаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 Р-1 для i=1,2,...n.

Выражение (2) числа А представляет собой набор i-х ортогональных проекций числа А.

Представим Аi в обобщенной позиционной системе счисления

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

Ai=aijqi+a ij+1qi+1+...+ainqn, где адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 и q1=1.

Из выражений (2) и (3) видно, что оба представления числа Аi в остаточных цифрах и в обобщенной позиционной системе имеет (i-1) нулей перед первым значащим элементом (адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 i и адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 ij). Этот факт имеет место по определению вследствие того, что адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 i по модулю рj равно нулю (для j<i). Поэтому любая цифра в представлении обобщенной позиционной системы счисления весомозначная по qk для k<i приведена к нулевому значению. На основании (2) и (3) число А может быть записано в виде суммы остаточных представлений Аi(i=1,2,...n) по модулю Р

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

Цифры суммы Ai могут быть получены из цифр ai в представлении обобщенной системы счисления

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

где аii и адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 , поскольку представление в обобщенной позиционной системе счисления числа в области [0,P-1] единственное. Отсюда следует, что аi является цифрой в представлении обобщенной позиционной системе счисления.

Из выражений (4) и (5) можно записать

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

где Вi - ортогональные базисы (i=1,2,...n);

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 - цифры СОК;

bij - ортогональные базисы, представленные в обобщенной позиционной системе, для i=1,2...n.

На основании (6) запишем выражение для

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

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

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 i - разрядные цифры СОК;

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

Цифры аi в представлении ОПС получаются суммированием по модулю рi всех произведений адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 ibij и переносом, генерируемым при формировании аi-1. Перенос генерируется как число раз, когда сумма цифр в ОПС переполняется по модулю рi . Этот процесс используется для формирования цифр аi+1 . Последний перенос m, генерируемый при получении последней цифры числа в ОПС ai, представляет собой абсолютную величину m·p1p2...pn или mP, и поэтому он отбрасывается.

Рассмотренный метод может быть выполнен в параллельном режиме за два цикла синхронизации. Выигрыш в быстродействии данного метода с итеративным методом очевиден, поскольку уменьшает время преобразования с (n-1) циклов до двух циклов. Цифры адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 i могут принимать значения от 0 до рi -1, a bij являются константами, поэтому произведения адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 ibij можно поместить в ПЗУ или в весовые коэффициенты связей между нейронами. Адресами произведений адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 ibij являются остаточные цифры адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 i. Для иллюстрации этого алгоритма приведем пример 1.

Пусть рi={2,3,5,7}, P=2·3·5·7=210, B1=105, В2=70, В3=126, В 4=120.

Тогда из выражения (1,7) определим bij :

b11=1, b12=1, b13=2, b14=3;

b21=0, b22=2, b 23=1, b24=2;

b31=0, b32 =0, b33=1, b34=4;

b41=0, b42=0, b43=0, b44=4.

Пусть А=3=(1,0,3,3) представлено в СОК, тогда в ПЗУ поместим следующие числа:

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1b11=1, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1b12=1, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1b13=2, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1b14=3;

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2b21=0, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2b22=0, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2b23=0, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2b24=0;

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 3b31=0, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 3b32=0, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 3b33=3, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 3b34=5;

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 4b41=0, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 4b42=0, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 4b43=0, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 4b44=5.

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

Преобразование числа показано ниже. Здесь показана реализация с использованием ПЗУ. При нейросетевой реализации данного алгоритма роль ПЗУ выполняют Синаптические веса нейронов.

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

Проверим результат оценки величины А с помощью метода ортогональных базисов и метода обобщенной позиционной системы счисления (1, 6):

А=адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1В1+адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2B2+...+адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 nBn(modP)=1·105+0·70+3·126+3·120(mod210)=

=105+0+378+360(mod210)=843mod210=3

A=a1+a 2p1+a3p1p2+a 4p1p2p3=a1+a 22+a36+a430=1+2+0+0=3.

Из примера видно, что алгоритмы обоих методов дают одно и то же позиционное число, которое равно исходному числу А=3.

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

Для определения ошибки или переполнения машинного диапазона чисел, а также для их устранения используются избыточные СОК, имеющие n рабочих и r контрольных оснований. Известно, что для практического применения достаточно иметь два избыточных основания, т.е. r=2, тогда система гарантировано обнаруживает появление одновременно двух ошибок и одну ошибку исправляет. Если в числе А=(а12...аnn+1n+2 ) избыточные цифры аn+1n+2=0, тогда это число безошибочное. Аналогично определяем и переполнение диапазона представимых чисел. Если в примере 1, приведенном выше, принять в качестве рабочих оснований р1 и р2, а в качестве избыточных - р3 и р4, то видно, что в данном случае переполнения машинного диапазона и ошибок в числе нет, так как цифры избыточных оснований а34=0.

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

Теперь рассмотрим метод локализации ошибки.

Ошибка происходит в том случае, когда правильное число А, представленное n+r остаточными цифрами А=(адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1,адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2...адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 i...адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 n+r), меняется на другое число адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 , если ошибка произошла в i-й остаточной цифре, то неправильное число переходит в запрещенный интервал. Задача состоит в определении модуля ИСОК, ошибка по которому привела к такой ситуации.

Для определения места ошибки используется метод проекций. Проекция рi обозначается как A=(адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1,адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2...адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 i-1,адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 i+1...адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 n+r), т.e. А представлено в сокращенной (усеченной) ИСОК при исключении i-й остаточной цифры. Поскольку ИСОК является невзвешенной системой, исходная информация сохраняется, когда эта избыточность изменяется. Каждая pi-проекция может рассматриваться как представление А в определенном пространстве первоначальной системы. Следовательно, если в ИСОК при rадаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2 окажется такая ситуация, что для любого произвольного числа А одна из проекций числа Аi будет правильной для любого i=1,...,(n+r), тогда все другие проекции Хj при jадаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1 являются неправильньми и остаточная цифра адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 i определяется как ошибочная. В этом состоит суть метода локализации ошибки.

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

Проекция в ОПС представляется выражением

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

где 0адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 аii; i=1,2...(n+r), а произведение адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 считается равным 1.

Если ограничение kадаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 j передвигать при расчете Аn+r, тогда представление ОПС определяется на полное пространство ИСОК и первые коэффициенты Аn+r-1 определяют проекцию Аn+r. Это свойство характеризует математический принцип, который позволяет вычислять цифры со смешанным основанием для всех проекций, при этом если j-я остаточная цифра аj ошибочная, то проекция А j не содержит ошибки, потому что аj отброшена. Определить ошибочную остаточную цифру и заменить ее на правильную цифру аjадаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 Ajmodpj возможно последовательным формированием элементов аj для каждой проекции и проверкой аj на равенство нулю. Таким образом, для исправления ошибок необходимо, прежде всего, определить номера оснований, которым соответствуют искаженные символы.

Рассмотрим принцип исправления ошибок.

После определения основания, по которому произошла ошибка, необходимо найти коэффициенты ОПС, а затем по найденным коэффициентам определить цифры ai, представленные в СОК по основаниям р1, р2...pn .

В ОПС число представляется выражением (1). Найдем его представление в СОК. Пусть известно представление числа А в ОПС.

A=[a1,a2...an]

Так как основания в СОК постоянны, то представление чисел Q1 =1, Q2=p1, Q3=p1p 2,...Qn=p1p2...pn можно заранее вычислить в ОПС:

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

Тогда из выражения (1) следует, что цифры адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2...адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 n можно найти из сравнений:

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

Если в системе (11) числа а1, а 2...аn считать известными, то решение этой системы дает значения адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1, адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2...адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 n.

Пример 2. Перевести число А=[1,1,0,0], представленное в ОПС, в СОК по основаниям р1=2, р 2=3, р3=5, р4=7.

Представим числа Q1, Q2...Qn в СОК:

Q1=1=(1,1,1,1);

Q2=2=(0,2,2,2);

Q3=6=(0,0,1,6);

Q4=30=(0,0,0,2);

На основании выражения (11) запишем

А=(1,1+1·2,1+1·2+0·1,1+1·2+0·6+0·2=(1,0,3,3).

Таким образом, число А=[1,1,0,0], представленное в ОПС, выглядит как число (1,0,3,3), представленное в СОК по основаниям р 1=2, р2=3, р3=5, р4=7.

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

1. Вычисление цифр ОПС. Если А правильное, тогда ошибки нет, если А

неправильное - есть ошибка и тогда перейдем к шагу 2.

2. Вычисление цифр ОПС проекций числа А, если проекция А j, где j=1,2,...(n+r), неправильная, то в разряде j нет ошибки, если проекция правильная, то в данном разряде есть ошибка и тогда перейдем к шагу 3.

3. Вычисление чисел СОК адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 j согласно выражению (11) и переход к шагу 4.

4. В исходном числе А, представленном в СОК, заменяем цифру адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 j. На этом процесс корректирования ошибки заканчивается.

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

Числовая иллюстрация.

Принципы обнаружения, локализации и исправления ошибок в избыточной СОК могут быть продемонстрированы с помощью числового примера. Предположим, необходимо реализовать функциональный блок модулярного нейрокомпьютера для коррекции ошибок. Пусть набор модулей р i, на которых основаны каналы модулярного нейрокомпьютера такой же, как и в примере 1. Выберем модули р1=2, р2=3 рабочими, а p3=5, p4=7 - контрольными, тогда полный диапазон будет равен Р=210, а рабочий Р=2·3=6. Допустим, правильный результат равен а=(1,0,3,3), а искаженный адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 . Для определения ошибки вычислим коэффициент ОПС а i.

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

Таким образом, число адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 в ОПС равно [1,0,2,2]. Из выражения (1) видно, что адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 вышло за пределы рабочего диапазона, так как 73>6. Для принятия решения о том, что число искаженное, необходимо проверить на равенство нулю коэффициенты а3 и а 4. Итак, неравенства а3адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 0 и а4адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 0 устанавливают тот факт, что число адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 - ошибочное. Вычислим проекции числа адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 , полученные из адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 последовательным зачеркиванием цифр адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 i по основанию рi.

По основанию p1=2.

Для системы с основаниями р2 =3, р3=5, р4=7 вычислим ортогональные базисы в позиционной адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 и обобщенной позиционной системах счисления адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 :

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 и адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

Этот результат может быть проверен оценкой величины адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 с помощью выражения (1) адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 .

По основанию р2=3.

Для системы с основаниями p1=2, р3=5, p4 =7 вычислим ортогональные базисы в позиционной адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 и обобщенной позиционной системах счисления адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 :

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 и адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 .

По основанию р3=5.

Для системы с основаниями р1=2, р2=3, р4 =7 вычислим ортогональные базисы в позиционной адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 и обобщенной позиционной системах счисления адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 :

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 и адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 .

По основанию p4=7.

Для системы с основаниями p1=2, р2=3, р3 =5 вычислим ортогональные базисы в позиционной адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 и обобщенной позиционной системах счисления адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 :

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 и адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 .

Итак, все проекции числа адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 , кроме адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 , неправильны. Следовательно, ошибочной цифрой является цифра адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2=1 по основанию р2=3.

Проведем теперь исправление по формуле (7) для проекции адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2=(1+1·2)mod3=0mod3.

Правильная цифра по основанию р2=3 равна адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2=0.

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

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

Блок нейронных сетей конечного кольца (НСКК) 23 вычисляет разрядные цифры в представлении ОПС и состоит из (n-1) НСКК, нейроны 5 с переносами 6 и нейроны входного слоя 2. Из чертежа видно, что остаточные числа адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 i(i=1,2,...n) контролируемого числа A=(адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1,адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2,...,адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 n) 1 подаются параллельно через входной слой, нейроны 2, на входы всех НСКК, нейроны 5, которые имеют n(n+1)/2 синаптических весов. Подключения синаптических весов на чертеже показаны точками. Полученная треугольная матрица (12) суммируется согласно правилу сложения цифр в представлении ОПС, описанному выше, т.е. данные в i-м канале будут суммироваться с учетом переносов в (i-1) канале по модулю рi в представлении ОПС. Перенос представляет собой число раз, превышающее величину модуля p i, который поступает к (i+1) каналу. Поскольку в каждой строке имеется (i-1) нулей перед первым значащим элементом, а сумма чисел может переноситься (n-1) раз, то абсолютная величина каждого переноса ограничивается величиной (n-1)

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

где wij=bij.

Для обнаружения ошибки используется первоначальная конфигурация блока, т.е. такая конфигурация, когда работают все каналы. При формировании i проекций, когда происходит реконфигурация сети, возникают две задачи: первая задача связана с исключением i-канала, нейроны 5, а вторая - с коррекцией весовых коэффициентов wij сигналы w 21. Структура нейронной сети i-проекции зависит от номера исключаемого канала и адаптируется к нему посредством загрузки весовых коэффициентов wij 3. В то время, когда часть сети остается неактивной (исключается из системы), весовые коэффициенты между нейронами входного слоя и нейронами скрытого слоя НСКК не используются нейронной сетью и равны нулю. Весовые коэффициенты между нейронами скрытого слоя и нейронами выходного слоя НСКК не активированных нейронов также равны нулю, а нейроны выходного слоя не активированной части нейронной сети имеют высокое значение (преимущественно адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 ), т.е. можно считать, что они исключаются из общей системы.

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

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

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

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

Блок обнаружения ошибок 24 предназначен для сравнения значений избыточных разрядов всего числа или его проекций с нулем и состоит из четырех схем сравнений (СС1-СС4(10-13)), элементов «И» 15, «ИЛИ» 14 и двух демультиплексоров (ДМХ1 8, ДМХ2 9). Если какая-либо из избыточных цифр в представлении ОПС не равна нулю, то в исходном числе присутствует ошибка. Схемы сравнения СС2 11 и СС4 13 предназначены для сравнения избыточных цифр всего числа с нулем. Если аn-1 и а n равны нулю, то схемы сравнения выдают единичные сигналы, которые поступают на вход элемента «И» 15, на выходе которого формируется сигнал «ошибки нет». Выходной сигнал U6 элемента «И» 15 классифицируется как сигнал «ошибки нет» 26. Во всех остальных случаях сигналы сравнения СС2 11 и СС4 13 с помощью схемы И-НЕ 16 классифицируются как сигнал U4 «ошибка есть» 27, который поступает на вход S-триггера 18 блока реконфигурации и локализации ошибок 22. Необходимо отметить, что при вычислении проекций числа от 1 до (n-1), в качестве избыточной цифры используется коэффициент аn, а при вычислении n-й проекции - коэффициент an-1 . Это обстоятельство связано с тем фактом, что при определении проекции числа, когда одно основание исключается, избыточный код с двумя контрольными основаниями превращается в избыточный код с одним контрольным основанием, его корректирующая способность уменьшается, он из исправляющего кода превращается в обнаруживающий код, но этого достаточно для обнаружения неправильной проекции, хотя при этом исправляющие свойства кода теряются. В случае если в исходном числе есть ошибка, то на адресные входы демультиплексоров ДМХ1 8 и ДМХ2 9 поступают соответственно сигналы U1 29 и U2 30. Сигнал U1 29 блокирует выходы демультиплексора ДМХ1 8 при определении (n-1) проекций, а сигнал U2 30 коммутирует вход демультиплексора ДМХ2 9 на вход схемы сравнения ССЗ 12. Если при контроле проекции a n=0, то схема сравнения ССЗ 12 формирует единичный сигнал правильной проекции, что соответствует ошибке по данному основанию, который поступает на вход элемента «ИЛИ» 14. Элемент «ИЛИ» 14 классифицирует сигнал U7 31 как «ошибочный разряд», который поступает на вход блока исправления ошибки 25. Процесс вычисления коэффициента an будет выполняться (n-1) раз. При определении n-й проекции формируются новые коды символов U1 и U2, которые блокируют выход демультиплексора ДМХ2 9, а выход демультиплексора ДМХ1 8 коммутируется на вход схемы сравнения СС1 10, при этом избыточный коэффициент а n-1 будет выполнять роль избыточного коэффициента а n. Если в данном случае аn-1=0, то схема СС1 10 выполняет роль схемы СС3 12 и процесс происходит аналогично тому, как и при an=0.

Блок исправления ошибок 25 служит для исправления ошибок по i-основанию и состоит из адаптируемой нейронной сети конечного кольца, нейроны 7, и ПЗУ весовых коэффициентов 17. Адаптируемая нейронная сеть конечного кольца имеет максимально необходимую конфигурацию, которая обеспечивает вычисление правильной разрядной цифры по любому основанию, используемому в выбранной СОК. Нейронная сеть реализует вычислительную модель (11). Структура адаптируемой нейронной сети зависит от одного внешнего параметра и адаптируется к нему посредством загрузки весовых коэффициентов wjk (где k=1,2...n) 4, которые определяются qi. Вычисление правильной цифры адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 i определяется изменением весовых коэффициентов между нейронами входного слоя и нейронами скрытого слоя и связями между нейронами скрытого слоя и нейронами выходного слоя. В зависимости от числа входов и их весовых коэффициентов изменяется модуль СОК реализуемой нейронной сети конечного кольца. Для управления конфигурацией нейронной сети используется ПЗУ весовых коэффициентов 17, которая управляется сигналами U7 31 «ошибочная цифра» и сигналом U3 - номер проекции 32, соответственно, поступающими от блока обнаружения 24 и блока реконфигурации и локализации ошибок 22. Объем ПЗУ в битах можно определить из выражения

адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131

Блок реконфигурации и локализации ошибки 22 предназначен для управления адресными входами демультиплексоров ДМХ1 8 и ДМХ2 9 соответственно, сигналы U1 29 и U 2 30 управления конфигурацией блока НСКК 23 и коррекцией весовых коэффициентов деградированной нейронной сети 23, сигнал w 21, и формирования сигнала U3 номера проекции. Блок состоит из ПЗУ формирования проекции и коррекции весовых коэффициентов 20, счетчика проекций 19, триггера управления 18, обеспечивающего работу счетчика на время формирования всех проекций и элемента И-НЕ 16, формирующего сигнал U4 27 установки триггера в единичное состояние, в случае обнаружения ошибки в проверяемой кодовой комбинации. В случае, если один или оба разряда а n и an-1 не равны нулю, элемент И-НЕ 16 формирует сигнал U4 27 «ошибка есть», который поступает на вход S-триггера 18 и переводит его в состояние «1». Высокий потенциал - сигнал 33 на выходе триггера запускает счетчик проекций 18. В каждом такте синхронизации счетчик проекций активирует ПЗУ формирования проекций и коррекции весовых коэффициентов 20, которое формирует сигналы: формирования первой проекции и коррекции весовых коэффициентов, сигналы w 21; формирования адресной части демультиплексоров (ДМХ1 8 и ДМХ2 9), сигналы U1 29 и U2 30, и номера проекции, сигнал U3 32. Объем ПЗУ составляет адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 , где bi - двоичное представление i-цифры СОК. По сигналу U1 29 блокируется ДМХ1 8, а по сигналу U2 30 выход ДМХ2 9 подключается к схеме сравнения ССЗ 12.

Формируемые ПЗУ 20 весовые коэффициенты w 21 осуществляют реконфигурацию нейронной сети и адаптируют каждую НСКК к новым входным параметрам. Сигналы адресной части 30 демультиплексора ДМХ2 9 коммутируют старший разряд аn ко входам схемы сравнения ССЗ 12, которая формирует сигнал U7 31 управления ПЗУ весовых коэффициентов блока исправления ошибки 17, если а n=0. На вход этого блока поступает и сигнал номера проекции U3 32. По этим сигналам w 21 адаптируемая НСКК 23, нейроны 5, настраивается на первую проекцию. После вычисления данных первой проекции, счетчик проекций 19 формирует сигналы второй проекции и процесс повторяется аналогичным образом до получения (n-1) проекций. Далее сигнал U2 30 блокирует выходы демультиплексора ДМХ2 9, а сигнал U1 29 коммутирует выход демультиплексора ДМХ2 9 на вход схемы сравнения СС1 10, которая, в случае an-1=0, формирует единичный сигнал, поступающий через элемент «ИЛИ» 14 на вход ПЗУ коэффициентов в качестве сигнала U7 31. После того как все проекции будут вычислены, счетчик проекции подает сигнал U5 34 на вход R-триггера, который переходит в нулевое состояние и выключает активацию счетчика, а также формирует сигналы установки в начальное состояние демультиплексоров и ПЗУ весовых коэффициентов блока исправления ошибок. После этого нейронная сеть коррекции ошибок переходит в исходное состояние и способна принимать следующую кодовую комбинацию для коррекции числа.

Итак, обнаружение, локализация и исправление ошибки могут быть выполнены в параллельно-конвейерном режиме, что и показано на рисунке 1 за (n+2) циклов синхронизации: 2 цикла - для обнаружения ошибки, (n-1) циклов - для локализации ошибки и 1 цикл - для исправления ошибки.

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

Изобретением является адаптивная нейронная сеть для коррекции ошибок в кодах данных 1. Данные поступают на вход нейронов 2, а исправленная цифра 28 появляется в выходном слое адаптивной нейронной сети 7 блока 25.

Из чертежа видно, что контролируемое число А=(адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 1,адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 2,...адаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 n) подается параллельно на вход 1 блока НСКК 23 формирования цифр в представлении ОПС, на выходе которого в 1-м цикле синхронизации вычисляются разрядные цифры числа А=[a 1 0,a2 0,...a0 n-1,an 0], представленные в ОПС, где индекс «0» соответствует коэффициентам ОПС исходного числа. Адаптивная НСКК 25 блока исправления ошибки в этот момент не активна. Избыточные цифры а0 n и а 0 n-1 через демультиплексоры ДМХ2 9 и ДМХ1 8 поступают на вход схем сравнения СС2 11 и СС4 13 блока обнаружения ошибки 24. Если a0 n-1=a0 n=0, то элементом «И» 15 формируется сигнал отсутствия ошибки «ошибки нет» 26, на этом контроль числа заканчивается. Если же одна или обе из избыточных цифр а0 n и а0 n-1 не равны нулю, элемент И-НЕ 16 фиксирует сигнал U4 «ошибка есть» 27, который посредством триггера 18 и счетчика проекций 19 активизирует ПЗУ формирования проекции и коррекции весовых коэффициентов 20, которое в свою очередь активизирует блок НСКК 23 сигналы w 21 формирования цифр в представлении ОПС на вычисление проекций числа, переключения демультиплексора ДМХ2 9 (под действием сигнала U2 30) на вход схемы сравнения ССЗ 12, а также формирует сигнал номера первой проекции U3 32, который поступает на вход ПЗУ весовых коэффициентов 17 блока исправления ошибок 25.

Если аi nадаптивная параллельно-конвейерная нейронная сеть для коррекции   ошибок, патент № 2279131 0, где i=1,2...,n - номер проекции, то данная проекция неправильная и поэтому ошибка по этому основанию отсутствует, и схема на эту ситуацию никак не реагирует. Если ai n=0, то данная проекция правильная, что свидетельствует о наличии ошибки по данному основанию рi. Сформированные схемами СС1 10 и ССЗ 12 сигналы через элемент «ИЛИ» 14 поступают на вход ПЗУ весовых коэффициентов 17 блока исправления ошибок 25. Под действием двух входных сигналов ПЗУ весовых коэффициентов 17 активируется, происходит адаптация НСКК 25, нейроны 7, по модулю рi и определяется правильная цифра 28 по основанию pi. После вычисления первой проекции счетчик проекций выдает сигнал на вычисление следующей проекции и процесс повторяется до тех пор, пока счетчик не выдаст сигнал на формирование (n-1)-проекции, при этом демультиплексор ДМХ2 9 блокируется, а выход демультиплексора ДМХ1 8 подключается к схеме сравнения СС 10 и процесс повторяется аналогично вышеописанному.

Счетчик имеет емкость, равную n. После вычисления n проекций счетчик проекций 19 формирует сигнал окончания контроля U5 34, который поступает на вход R-триггера 18, и переводит его в нулевое состояние, по которому система устанавливается в исходное положение.

Выигрыш в быстродействии параллельно-конвейерного обнаружения, локализации и исправления ошибок очевиден, поскольку он значительно уменьшает время по сравнению с известными реализациями. Это преимущество объясняется совершенно параллельным принципом обработки данных и соответствующей организацией нейронных сетей. Так, разработанная адаптивная НСКК позволяет исправить ошибку за (n+2) циклов синхронизации, в то время как известные реализации позволяют выполнить эту операцию как минимум за 3 n циклов синхронизации.

Разработанная адаптивная параллельно-конвейерная нейронная сеть может быть применена в модулярных нейрокомпьютерах для обнаружения, локализации и исправления ошибок, что открывает новые перспективы, которые ранее было очень сложно осуществить. Реализация разработанной системы может быть выполнена на ПЛИС Xilinx серии ХС4000ЕС, для которой время задержек на вентиле составляет не более одной наносекунды и ниже.

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

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