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

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

 

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

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

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

Наиболее близким по сущности технического решения к изобретению является устройство для обнаружения ошибок в информации, представленной в системе остаточных классов (А.С. 798846, G 06 F 11/081, СССР, БИ №3, 1981), содержащее входной регистр, кольцевой сдвиговый регистр, преобразователь чисел из системы остаточных классов (СОК) в обобщенную позиционную систему счисления (ОПСС), блок сравнения проекции числа с константой, группы элементов И и ИЛИ.

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

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

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

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

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

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

Модулярная НСКК обнаруживает ошибку в данных, представленных в СОК с основаниями р1, p2,... , pn, по значению коэффициентов an и an-1 обобщенной позиционной системы счисления (ОПСС). Если an=an-1=0, то ошибки нет, в противном случае ошибка есть.

Сигналы an и an-1 подаются на управляющие входы демультиплексора и мультиплексора. Если an-1=an=0, то неискаженные данные через демультиплексор и мультиплексор поступают на выход блока коррекции данных.

Если an0 или an-10, т.е. данные имеют ошибочные разряды, происходит активация управляющих (адресных) входов мультиплексора и демультиплексора, и данные с ошибкой через демультиплексор поступают на вход НС Хопфилда в бинарном коде, т.е. каждый остаточный разряд представлен двоичным кодом. Сеть Хопфилда, обладающая ассоциативным свойством, позволяет восстанавливать искаженные данные. Общая разрядность кода определяется выражением

где: n - количество модулей СОК, pi - модуль СОК. Сеть Хопфилда состоит из одного слоя нейронов, которые принимают решение асинхронно, связь между ними осуществляется мгновенно и все связи симметричны, т.е. wij=wji, тогда синаптические веса НС имеют вид

Функционирование сети определяется выражением

где: wij - i-й синаптический вес j-ого нейрона; хi - i-й элемент входного сигнала сети; - i-й элемент входного вектора-образца; yj - выход j-го нейрона; N - размерность входного вектора; М - количество образцов (разрешенных кодов). Сеть функционирует циклически. В процессе функционирования уменьшается энергетическая функция

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

Сеть выбирает эталон с минимальным хэмминговым расстоянием от предъявленного входного вектора путем активации только одного выхода сети, соответствующего этому эталону. Расстояние Хэмминга между двумя бинарными последовательностями Х и X’ определяется как число координат, в которых цифры различны. Хэмминговое расстояние представляет собой пример меры сходства, или, вернее, различия, первоначально введенной для бинарных функций образа в декартовое пространство. Она применима для сравнения любых упорядоченных наборов, принимающих дискретные значения, и, вероятно, является наилучшей из известных мер сходства между цифровыми кодами.

Например, в избыточной СОК, состоящей из 4-х модулей p1=2, р2=3, p3=5, p4=7, входной набор будет состоять из 9-ти двоичных разрядов. Если взять модули р3 и р4 избыточными, тогда рабочий диапазон будет равен р1·р2=6, а области разрешенных и запрещенных значений в двоичном коде можно представить в виде

Например, для искаженного вектора X’=(1, 0, 1, 3)=(1, 00, 001, 011), образом является вектор X=(1, 0, 3, 3)=(1, 00, 011, 011), тогда для бинарных последовательностей X и X' хэмминговое расстояние определяется как

Здесь функция ƒ является зависимостью от числа модулей СОК, имеющих в наборах значение "1".

Легко показать, что в данном примере логическая единица будет по модулю р3=5, т.е. ошибка произошла по этому модулю.

Сеть Хопфилда определяет номер эталона, ближайшего к предъявляемому вектору, таким будет образ (1, 00, 011, 011), так как у него с искаженным вектором наименьшее хэмминговое расстояние. Таким образом, используя ассоциативные свойства и хэмминговое расстояние, сеть Хопфилда локализует и исправляет ошибку. Для увеличения емкости сети и повышения качества распознавания образов можно использовать сети высших порядков.

В качестве входных данных сети Хопфилда можно использовать двоичные сигналы 1 и 0 или вводят обозначения соответственно +1 и -1.

Комбинированный ввод элемента определяется выражением

где si обозначает состояние элемента с номером i.

При обновлении состояние изменяется в соответствии с правилом

где sj - знаковая функция sj=sign{netj).

Весовые значения для сети Хопфилда определяются непосредственно из данных, и нет необходимости проведения обучения в более привычном смысле.

Сеть Хопфилда ведет себя как память, и процедура сохранения отдельного вектора представляет собой вычисление прямого произведения вектора с ним самим. Этим самым определяется весовая матрица для сети Хопфилда, в которой все диагональные элементы должны быть установлены равными 0. Итак, весовая матрица, соответствующая сохранению вектора X, задается выражением

где I - единичная матрица.

Рассмотрим способ определения весовых значений сети Хопфилда.

Пример 1. Найти набор весовых значений сети Хопфилда, соответствующий хранению одного бинарного образа Y=100011011, тогда

При вычитании единичной матрицы обнуляем диагональные элементы, и матрица будет иметь следующий вид:

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

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

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

Теперь рассмотрим, как будет меняться состояние нейронных элементов, если на вход сети поступает искаженный вектор. Элементы обновляются в случайном порядке, но мы для определенности проверки обновления элементов примем естественный порядок, т.е. 1, 2, 3, 4, 5, 6, 7, 8, 9, тогда

Таким образом, элемент 1 останется в том же состоянии. Следующим является элемент 2.

Элемент 2 также находится в том же состоянии. Далее находим s3=-6, sign(-6)=-1, s4=-6, sign(-6)=-1. Теперь проверим

Отсюда видно, что нейронный элемент 5 изменил свое состояние с -1 на 1. При дальнейшем функционировании сеть перестает изменять свое состояние, т.е. элементы s6, s7, s8 и s9 останутся в прежнем состоянии, что говорит о переходе сети в устойчивое состояние.

В результате произошло исправление ошибочного образа со значения X’=(1, 0, 1, 3) до X=(1, 0, 3, 3).

Синхронный режим. В этом режиме функционирование сети можно представить как y(t+1)=sign(s(t))

Пусть, в первом такте на вход сети подается искаженный вектор Y=(100001011), тогда

Во 2,3 и 4 тактах s(1)=s(2)=s(3)=-6, a sign(-6)=-1, т.е. состояние элементов не изменилось. В 5-м такте s(4)=8, a sign(8)=1, т.е. 5-й элемент изменил свое состояние с -1 на 1. Теперь Y=[1 -1 -1 -1 1 1 -1 1 1]. В 6, 7, 8 тактах s(5)=8, s(6)=-8, s(7)=8 и s(8)=8, sign(s(8))=1, sign(s(-8))=-1. После 5-го такта состояние элементов не изменялось. В результате чего произошло исправление 5-го разряда.

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

Пример 2. Определить весовую матрицу сети Хопфилда, соответствующую сохранению следующих двух векторов

[-1 1-1-11 -1 -1 1 -1], [1 -1 -1-111-11 1].

Весовая матрица этих векторов имеет вид

сложим матрицы и обнулим диагональные элементы

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

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

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

Входные данные 1 поступают на вход НСКК 2 и демультиплексор 3. Адресные (управляющие) входы демультиплексора не активны. НСКК 2 вычисляет коэффициенты ОПСС. Если коэффициенты аn=an-1=0, то ошибки нет, формируются адресные сигналы 10,11, которые поступают соответственно на вход демультиплексора 3 и мультиплексора 5. Под действием сигнала 10 демультиплексор 3 коммутирует данные на вход мультиплексора 5, а под действием сигнала 11 - на выход мультиплексора 5, шина 6.

Если во входных данных есть ошибка, то старшие коэффициенты ОПСС an и an-1, формируемые НСКК 2, не равны 0. При этом на адресные входы демультиплексора 3 по шине 10 поступает код, который коммутирует входные данные на шину 8. Входные данные с ошибкой поступают на вход сети Хопфилда 4, где исправляются, и по шине 9 в исправленном виде поступают на вход мультиплексора 5, который под действием кода, поступающего на адресные входы по шине 11, передает их на вход 6. Итак, обнаружение и исправление ошибки осуществляется за три цикла синхронизации: два цикла синхронизации НСКК и один цикл синхронизации сети Хопфилда, чем и обеспечивается высокая скорость коррекции чисел.

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

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



 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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