Научная статья на тему 'Построение оптимальных нейронных декодеров блоковых кодов'

Построение оптимальных нейронных декодеров блоковых кодов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
209
31
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Березкин Александр Александрович

В статье рассмотрены основные подходы к построению нейронных декодеров блоковых кодов. Предложены структуры нейронных декодеров некоторых кодов БЧХ.I

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Березкин Александр Александрович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

n clause basic method of construction neuronal decoders of block codes. Structures of neuronal decoders some BCH codes are suggested.

Текст научной работы на тему «Построение оптимальных нейронных декодеров блоковых кодов»

Таблица 1

Сравнение различных методов.

Пронент выбросов Количество вычислений корреляционной функиии Время работы, не

X ~ 30%

Случайный поиск- 1.09% 443 398 284

Поиск по окружностям 0.98% 239 347 208

Поиск по пересечениям окружностей 0.85% 56 79 271

А. - 15%

Случайный поиск 2.11% 1 448 592 314

Поиск по окружностям 1.71% 366 290 040

Поиск по пересечениям окружностей 0.01% 130 172 121

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

Заключение

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

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

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

СПИСОК ЛИТЕРАТУРЫ

1. Бен ко И. В., Бублик Ь. II.. Зинько II. Н. Ме- 2. Гришин К).П., Инагов В.Г1., Казаринов Ю.М.

тоды и алгоритмы решения задач оптимизации. — /Подред. Ю.М.Казиринова. Радиотехническиесис-Киев : Вища шк„ 1983. — 512 с. темы. — М.: Высшая школа, 1990. — 496 с.

Березкин А. А.

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

блоковых кодов

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

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

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

Декодирование блоковых кодов на основе нейроссгсвого классификатора. Оптимальный декодер, минимизирующий вероятность ошибки (когда все переданные последовательности равновероятны), известен как декодер максимального правдоподобия (MLD - maximum likelihood detector). Задачу MLD можно сформулировать следующим образом [1]: имея принятый вектор г из всех возможных слов d, принадлежащих коду, выбрать такое d'\ для которого

P(r\^ymaxP(r\d). (1)

dскоду

Функция правдоподобия (решение задачи декодирования по MLD) задается или вычисляется. исходя из спецификации канала. В случае использования канала АБГШ, при котором шум влияет на каждый символ кода независимо от остальных символов, вычисление P(r\d)s (1) сводится к произведению условных вероятностей отдельных бит [1, 2]:

Lj = p(r\d)=Y\p(rMJ)y

/=1

1

6>/2л

ехр

/=1

28'

(2)

Как показано в [3]. квадрат Евклидова расстояния. (г - d<J)У. является метрикой для декодирования по максимуму правдоподобия. При использовании "жесткого" декодирования максимизация /- эквивалентна максимизации:

\

¿г^кЫ/'.

(3)

i=l

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

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

В большинстве опубликованных работ по построению нейронного декодера МЬЭ для блоковых кодов используется нейронная сеть Хэмминга [4, 5, 6]. Для простоты назовем подобную структуру рекуррентным нейронным декодером 1-й модификации (РНД1) [6].

В данной статье предложено упростить структуру РНД1 в сторону уменьшения вычислительной сложности реализации путем удаления конкурирующего слоя нейронов, предназначенного для нахождения ближайшей к принятому вектору разрешенной кодовой комбинации. Полученная таким образом структура названа РНД2 (рис. 1).

Удаление конкурирующего слоя стало возможным после введения в слой образцов РНД1 пороговых активационных функций с порогами

Ь. = -Ш-<! . - 1). (4)

I У ПИП ' у '

Пороги нейронов слоя образцов, определенные выражением (4), "подавляют" сигналы малоактивных нейронов, переводя их в отрицательные значения. При возникновении ошибок кратности < I в слое образцов РНД2 активизируется только один нейрон, имеющий максимальное значение, который через синап-тические веса пороговых нейронов выходного слоя представляет информационную часть ближайшей к входному вектору разрешенной кодовой комбинации. Такая структура не требует обучения и полностью зависит от характеристик используемого кода. Это позволяет строить подобные декодеры для любых (не обязательно линейных) блоковых кодов. Далее описана структура и алгоритм работы такого декодера.

В качестве весовых коэффициентов синапсов первого слоя РНД2 и*(,) используются элементы разрешенных кодовых комбинаций с'. записанных в биполярной форме: = 2с/ -1,

1 <У < 2*. 1 <i<N, где 1г(|) - весовой коэффици-

/ Выходнду (слой коррекции)

"/ / Выходно^ УМ (слой коррекции) Входной 1 слой

Входной слой

Слой I ч (слой образцов)

Слой I х (слой образцов)

Фунтии аюпибаиии

Фуяхции ахтшауии

Рис. I. Структурная схема рекуррентного нейронного декодера блокового кода: а) "жесткое" декодирование (РНД2); б) "мягкое" декодирование (РНД2м)

ент синапса /-го элемента входного вектора (слой 0) иу'-го нейрона слоя образцов. Весовые коэффициенты синапсов выходного слоя эквивалентны информационным элементам разрешенных кодовых комбинаций, представленных в бинарной форме: и/2> = с/, 1 < /' < 2* 1 <у < ЛГ.

где и'],.2' - весовой коэффициент синапса /-го

нейрона слоя образцов и у'-го нейрона выходного слоя. Индуцированные локальные поля нейронов слоя образцов и выходного слоя равны:

4 =14)4-+4'- 1 -' ^ 2*,

У=1

м

V,2 = £н^у), \<1<К.М = 2К.

Величины порогов нейронов слоя образцов 6 вычисляются в соответствии с выражением (4).

Выходные сигналы всех нейронов РНД2 определяются пороговой функцией активации у (индекс сверху указывает номер слоя):

1, если V, > 0 0, иначе

В результате работы на выходе РНД2 декодируется информационная часть разрешенной кодовой комбинации, связанной с искаженным входным вектором.

у.=ф1(у') = ф2(у/2) =

В случае использования канала АБГШ структура нейросетевого классификатора РНД2 может быть модифицирована. Для этого в качестве подсети нейронов слоя образцов в данной статье предложено использовать вероятностную нейронную сеть [7, 8], которая представляет собой параллельную реализацию известных статистических методов ядерной аппроксимации. оформленных в виде нейронной сети. Подобная модификация структуры РНД2 названа РНД2м (рис. 1,6).

Различие РНД2м от РНД2 заключается в том, что нейроны слоя образцов РНД2м представляют собой радиальные базисные элементы. активность которых определяется функцией Гаусса с нормальным законом распределения. В соответствии с этим выходные сигналы нейронов слоя образцов РНД2м можно получить в соответствии с выражением:

у\ =ехр

25

, к = 1,..., М, (5)

где з^1 - выходное значение нейрона к слоя образцов, - весовые коэффициенты синапти-

ческой связи, соединяющей вход / нейронной сети и нейрон к первого слоя, дс* - /-й элемент

входной кодовой комбинации. 52 - дисперсия, характеризующая ширину радиально-базисной функции.

Количество радиальных элементов РНД2м также определяется разрешенными кодовыми комбинациями, которые образуют классы.

Алгоритм работы РНД2м полностью соответствует алгоритму работы РНД2 с учетом того, что выходные значения нейронов слоя образцов вычисляются в соответствии с (5), а весовые коэффициенты синапсов выходного слоя эквивалентны информационным элементам разрешенных кодовых комбинаций, представленных в биполярной форме н?.}2) = 2с/ - 1 .

Декодирование блоковых кодов на основе нейросетевой обучаемой машины. С целью уменьшения размера РНД2 можно использовать механизм обучения нейронных декодеров на примерах и тем самым адаптации своей структуры для решения конкретной задачи декодирования. В данном случае все нейроны сети являются нелинейными. Эта нелинейность достигается за счет использования в передаточных функциях всех нейронов сети антисимметричной функции активации гиперболического тангенса. Суть заключается в том. что каждый нейрон обучаемого нейронного декодера отвечает за создание гиперплоскости

Рис. 2. Оценка помехоустойчивости РНД2/РНД2м при работе в канале АБГШ: а) для кода БЧХ (7.4); б) для кода БЧХ<15,5); в) для кода БЧХ (15,7); г) для кода БЧХ (15,11)

Как показали результаты моделирования, помехоустойчивость РНД2м выше в среднем на ~ 1.5 дБ по сравнению с оптимальным "мягким" декодером (SDD - soft decision decoder) (рис. 2). Помехоустойчивость РНД2 сравнима с оптимальным "жестким" декодером (HDD -hard decision decoder). РНД2 способен исправлять ошибки, стирания и искажения без изменения структуры и логики работы. Более того, позиции стираний не имеют никакого значения, то есть с помощью РНД2 возможно декодирование без приведения кодового слова к двоичному виду.

Г

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

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

В соответствии со статистической теорией восстановления зависимостей по эмпирическим данным [9. 10] (теорией статистического обучения В.Н. Вапника и А.Я. Червоненкиса) для минимизации ошибки обобщения размер обучающей выборки должен быть бесконечно большим. Увеличение размера обучающей выборки влечет за собой увеличение числа нейронов в скрытом слое разрабатываемых нейронных декодеров. Наилучшие результаты достигаются в случае, когда обучающие примеры располагаются с разных сторон границ гиперплоскостей, разделяющих пространство классов разрешенных кодовых комбинаций кода.

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

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

ментов гиперплоскостей, разделяющих кодовое пространство (рис. 36). При таком выборе обучающих данных достигается минимальная структурная и вычислительная сложность обученных нейронных декодеров, а также существенное уменьшение размера обучающей выборки (рис. 4). Для точного определения таких данных разработчику необходимо знать характеристики пространственного распределения кодовых слов соответствующего кода и весовую структуру кода, что является достаточно трудной задачей.

Подобный нелинейный декодер назван нейронным декодером прямого распространения (НДПР) в соответствии со структурой сети, используемой в его составе.

При использование предложенных обучающих данных были получены практические аппроксимации размеров скрытых слоев НДПР для некоторых кодов БЧХ (табл. 1), где в таблице введены следующие обозначения: КК - разрешенные кодовые комбинации; Е1-ЕЗ - кодовые комбинации с однократными, двукратными и трехкратными ошибками соответственно: 81-56 - кодовые комбинации с однократными - шестикратными стираниями соответственно.

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

комбинации

а) б)

Рис. 3. Выбор обучающих данных для нейронного декодера блокового кода: а) необходимое множество; б) минимально необходимое множество

(15,5) (15,7) (15.11) а)

НИ- Полный набор обучающего множества

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

(15,5) (15,7) (15,11) б)

. Минимально необходимый набор обучающихданных(рис. За)

Рис. 4. Изменение размера обучающего множества некоторых (/V, К) кодов БЧХ с увеличением К: а) при исправлении ошибок; б) при исправлении ошибок и стираний

Таблица 1

Размер скрытою слоя НДПР некоторых колов ЬЧХ

№ Код Размер скрыто- Обучающее множество Размер обучающе-

п/п го слоя, ошибки стирания го множества

Исправление ошибок

(7,4) 7 Е1 112

1 9 КК,Е1 128

(15,5) 38 ЕЗ 14 560

40 KK.EI.E2.E3 18 432

3 (15.7) 37 Е2 13 440

38 КК.Е1. Е2 15 488

Исправление ошибок и стираний

(7.4) 9 Е1 Б2 448

1 10 КК. Е1 81.52 576

2 (15,5) 58 ЕЗ Б6 174 720

69 КК. Е1. Е2. ЕЗ Б!. Б2. БЗ. Б4. 55.56 336 768

3 (15,7) 39 Е2 54 188 160

40 КК. Е1. Е2 51.52. 53. 54 263 680

Заключение.

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

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

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

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

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

СПИСОК ЛИТЕРАТУРЫ

1. С к. 1ир Б. Цифровая связь. Теоретические основы и практическое применение. М.: Вильяме. 2004.

2 Всрнер М. Основы кодирования. М.: Техносфера. 2004.

3. Морелос-Сарагоса Р. Искусство помехоустойчивого кодирования. Методы, алгоритмы, применение. М.: Техносфера. 2005.

4. Zeng G., Hush D.. Ahmed N. An application of neural net in decoding error-correcting codes // IEEE International Symposium on Circuits and Systems. -1989.

5. Stefano A.D. Mirabella 0., Cataldo G.D., Palumbo

G. On the use of neural networks for hamming coding// IEEE International Symposium on Circuits and Systems. - 1991. - vol. З.-Pp. 1601-1604.

6. Березки» A.A. Рекуррентный нейронный декодер двоичных блоковых кодов и его модификации // Труды учебных заведений связи / СПбГУТ. СПб. 2007. №176. С. 135- 146.

7. Хайкин С. Нейронные сети: полный курс. 2-е изд.. испр. / Пер. с анл. - М.: ООО "И.Д. Вильяме". 2006.

8. Ка-ман Р. Основные концепции нейронных сетей. - М.: Вильяме. 2003.

9. Ваиннк В.Н. Восстановление зависимостей по эмпирическим данным.- М.: Наука, 1979.

10. Вапник В.Н., Червояенкис А.Я. О равномерной сходимости частот появления событий к их вероятностям // ДАН СССР.- Т. 181. № 4,- 1968.

i Надоели баннеры? Вы всегда можете отключить рекламу.