На правах рукописи БЕРЁЗКИН Александр Александрович МОДЕЛИ И МЕТОДЫ ДЕКОДИРОВАНИЯ ПОМЕХОУСТОЙЧИВЫХ КОДОВ НА ОСНОВЕ НЕЙРОСЕТЕВОГО БАЗИСА Специальность 05.13.01 – Системный анализ, управление и обработка информации АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук Санкт-Петербург 2009г. Работа выполнена в Санкт-Петербургском государственном университете телекоммуникаций им. проф. М.А. Бонч-Бруевича. Научный руководитель: кандидат технических наук, доцент Охорзин Виктор Михайлович Официальные оппоненты: доктор технических наук, профессор Саенко Игорь Борисович кандидат технических наук Кунгурцев Вадим Викторович Ведущая организация: ФГУП НИИ «Рубин» Защита состоится «02» июля 2009г. в 14 часов на заседании диссертационного совета Д219.004.02 при Санкт-Петербургском государственном университете телекоммуникаций им. проф. М.А. БончБруевича по адресу: 191065, Санкт-Петербург наб.р. Мойки, 61. С диссертацией можно ознакомиться в библиотеке Санкт-Петербургского государственного университета телекоммуникаций им. проф. М.А. БончБруевича. Отзыв на автореферат в двух экземплярах, заверенный печатью учреждения, просим направлять по указанному адресу на имя ученого секретаря диссертационного совета. Автореферат разослан «01» июня 2009 г. Ученый секретарь диссертационного совета, кандидат технических наук, доцент В.Х. Харитонов ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ Актуальность работы. Современный этап развития телекоммуникационных систем характеризуется широким развитием проводных и беспроводных сетей передачи данных. Рост числа пользователей таких сетей, появление новых мультимедийных услуг предъявляют высокие требования к скорости, надежности и времени задержки при обработке информации. Одна из самых весомых задержек связана с помехоустойчивым кодированием и декодированием данных. Для снижения этого фактора постоянно необходимо решать проблемы совершенствования существующих и разработки новых методов обработки информации. В настоящее время подобные проблемы решаются различными путями, в том числе внедрением параллельных методов кодирования и декодирования, основанных на элементах теории искусственных нейронных сетей (ИНС). На сегодняшний день отечественными и зарубежными исследователями (Галушкин А.И., Горбань А.Н., Комашинский В.И., Оссовский С., Bruck J., Blaum M., Mayora-Ibarra O., Zeng G., Hush D., Ahmed N., Stefano A.D., Lippmann R.P., Ahmed S. и др.) предложено множество различных нейросетевых моделей, в том числе решающих задачи декодирования помехоустойчивых кодов. Однако они слабо связаны с параметрами используемых кодов и до сих пор не разработана единая концепция их применения и настройки. Это влечет за собой увеличение структурной избыточности и сложности функционирования нейронных декодеров. Более того, в современной научно-технической литературе недостаточно проработан вопрос обоснованности применения различных нейросетевых моделей для декодирования широко используемых на практике блоковых помехоустойчивых кодов, что обуславливает актуальность настоящей работы, направленной на повышение обоснованности применения ИНС в задачах помехоустойчивого кодирования. В то же время разработчики систем помехоустойчивого кодирования решают компромиссную задачу «сложность-эффективность». На программноаппаратном уровне, решение этой задачи приводит к необходимости как алгоритмического, так и технического упрощения, включающего выбор наименее сложной реализации алгоритма. Объектом исследования система помехоустойчивого кодирования (СПК). Предметом исследования являются методы декодирования и их реализация на основе ИНС. Цель исследования. Целью диссертационной работы является повышение эффективности системы помехоустойчивого кодирования на основе совершенствования методов и параметров итеративных и нейронных декодеров двоичных блоковых кодов. В связи с этим выделены два направления, определяющие постановку задачи диссертационной работы. Первое направление связано с исследованием современного итеративного метода декодирования. Второе – направлено на повышение эффективности системы помехоустойчивого кодирования за счет 1 использования параллельных нейронных декодеров, существенно снижающих задержки на операцию декодирования. Научная задача заключается в разработке методов и моделей итеративных и нейронных декодеров, обеспечивающих повышение эффективности системы помехоустойчивого кодирования и характеризуемых предельно малой сложностью функционирования. Методы исследования. В работе использовался математический аппарат теорий вероятностей, помехоустойчивого кодирования, нейронных сетей, статистического обучения, полезности, сложности вычислений, а также методы имитационного моделирования (Монте-Карло). Экспериментальные исследования проведены с использованием пакета математического, статистического и имитационного моделирования MATLAB.7.01 и программных средств Statistica Neural Networks 4.0. Научная новизна работы определяется: 1. Разработанным лично автором итеративно-перестановочным (ИП) методом декодирования, обеспечивающим увеличение надежности приема информационных элементов путем мажоритарного построения дополнительных проверочных уравнений, который является дальнейшим развитием метода итеративного декодирования блоковых кодов. 2. Кроме того, новым является разработанный лично автором подход к выбору параметров моделей нейронных декодеров, который отличается от известных в части более точной настройки параметров на характеристики используемых кодов и структуру кодового пространства. Это позволяет сократить структурную избыточность нейронных декодеров и повысить обоснованность их применения по сравнению с существующими подходами. 3. Впервые автором предлагается использовать нейронные декодеры и для исправления стираний, что не рассматривалось в работах других исследователей. 4. В работе впервые разработан подход, позволяющий обоснованно сократить размер обучающего множества путем использования запрещенных кодовых комбинаций только с максимально исправляемой кодом кратностью ошибок и стираний. Это позволят существенно сократить объем обучающих данных и, как следствие, уменьшить время на разработку нейронных декодеров, сократить число используемых нейронов, а также расширить применение нейронных декодеров в область исправления стираний. 5. Автором впервые предложена методика оценки сложности методов декодирования, позволяющая учесть большее, по сравнению с классическими методиками, количество факторов, влияющих на сложность функционирования, за счет использования комплексного показателя сложности, в который включены сложность алгоритмической и программной реализаций, и тем самым повысить точность оценки. Обоснованность и достоверность научных положений обеспечены преемственностью проводимых исследований, подтверждена адекватным применением математических методов, корректностью постановок задач, вводимых допущений, ограничений и формулировок выводов; соответствием применяе2 мых моделей физическим процессам в СПК; непротиворечивостью полученных результатов известным научным данным; результатами экспериментов; апробацией основных теоретических положений в печатных трудах и докладах на научных конференциях и семинарах. Практическая ценность. Предложенный подход к повышению обоснованности выбора параметров нейронных декодеров (НД) расширяет возможности их реализации для кодов бо льших длин и может быть использован при проектировании перспективных СПК, работающих в реальном масштабе времени. Предложенная методика формирования обучающего множества позволяет разрабатывать НД с меньшим числом нейронов, что при практической реализации уменьшает время декодирования. Результаты также могут быть использованы в образовательном процессе высших учебных заведений связи, при написании учебников и учебных пособий, при разработке перспективных СПК. Реализация результатов работы. Основные научные и практические результаты диссертационной работы использованы в разработках ЗАО НПП «ИСТА-Системс» для обоснования выбора перспективных методов передачи и обработки речевых и факсимильных данных, а также в учебном процессе СПбГУТ им. проф. М.А. Бонч-Бруевича при разработке лекций по перспективным методам декодирования, что подтверждается актами внедрения и реализации. Апробация работы и публикации. Результаты работы обсуждались и были одобрены на: 57, 58, 59, 60, 61-й НТК профессорско-преподавательского состава, научных сотрудников и аспирантов ГУТ им. проф. М.А. БончБруевича, XI международной конференции «Региональная информатика-2008», Международной НПК «Перспективы развития телекоммуникационных систем и информационные технологии-2008». По результатам диссертации опубликовано 13 печатных работ (3 в соавторстве), из них 3 в изданиях, рекомендованных ВАК, получено положительное решение о выдаче патента РФ на полезную модель. Структура и объем работы. Диссертационная работа состоит из введения, четырех глав с выводами, заключения, списка литературы и двух приложений. Основная часть работы содержит 155 страниц текста, 44 рисунка, 16 таблиц, включает 169 наименований отечественной и зарубежной литературы, объем приложений составляет 24 страницы. Основные научные положения, выносимые на защиту: 1. Метод декодирования двоичных линейных блоковых кодов на основе итеративно-перестановочного подхода. 2. Модель «жесткого» и «мягкого» нейронного декодера с исправлением ошибок и стираний. 3. Методика формирования обучающего множества, обеспечивающая построение нейронного декодера как обучаемой модели с меньшим числом нейронов. 3 4. Методика оценки сложности функционирования методов кодирования и декодирования на основе комплексного показателя. СОДЕРЖАНИЕ РАБОТЫ Во введении обоснована актуальность рассматриваемой проблемы, сформулированы цели и задачи работы, определены практическая ценность и область применения результатов, представлены основные научные положения, выносимые на защиту. В первой главе диссертации рассмотрено современное состояние проблемы декодирования помехоустойчивых кодов и оценки сложности методов декодирования. Показано, что декодирование есть отображение множества принимаемых кодовых комбинаций (КК) на множество информационных слов, которое может состоять из композиции двух отображений (нахождения кодового слова по принятому и определения вектора информационных символов по кодовому слову): а) D : A*N A K или б) D : A*N A( N , K ) A K , (1) где A* – алфавит из {1, 1, *} : * – символ стирания, D – оператор нахождения кодового слова, A*N – множество принимаемых КК, A ( N , K ) – множество всех разрешенных кодовых комбинаций (РКК), A K – множество информационных слов РКК. Отмечено, что на задержки декодирования напрямую влияет сложность отображения D. Отмечено, что новые методы декодирования, необходимо рассматривать с позиций развития существующих современных методов. Приведен обзор направлений развития современных методов «мягкого» декодирования блоковых кодов и отмечены их недостатки. Обосновывается выбор метода итеративного декодирования, а также направление его модификации. Выявлена необходимость в разработке параллельных методов кодирования и декодирования на основе моделей ИНС. Проведен обзор результатов различных исследователей в данной области. Сделаны выводы об актуальности рассмотрения проблем декодирования применительно к сложности их функционирования. Таким образом, полученные в главе 1 результаты, позволили обосновать выбор направления исследований и выявить необходимость в разработке параллельных методов кодирования и декодирования на основе моделей ИНС. Во второй главе выбраны, изучены и исследованы известные модели НД и итеративного декодера. Обосновывается использование известной математической модели итеративного декодера, описываемой формулой L(dˆ ) Lc ( x) L(d ) Le (dˆ ) , (2) где L(dˆ ) − LLR («мягкий» выход) вне декодера, Lc(x) − LLR канала (получается в результате канальных измерений в приемнике), L(d) − априорное LLR бита данных, Le (dˆ ) − внешнее LLR (внешняя информация о структуре кода, выявляемая в процессе декодирования). На основе используемой 4 математической модели описан обобщенный алгоритм итеративного декодирования блоковых кодов и показаны возможности его модификации [4]. Для достижения цели работы выбраны, изучены и исследованы известные в научно-технической литературе модели ИНС, предназначенные для решения задач классификации и задач, относящихся к классу проблем построения отношений на множестве объектов. Показано, что данные модели непосредственно осуществляют отображение (1) без проведения сложных процедур комбинаторного или алгебраического декодирования: модель нейронного классификатора Хэмминга, в виде рекуррентного нейронного декодера 1-й модификации (РНД1) (рис. 1а) [5–7]. Использование данной модели позволяет решить задачу декодирования блоковых кодов по критерию максимального правдоподобия с использованием «жесткой» схемы принятия решений в демодуляторе. Показано, что РНД1 обеспечивает отображение (1б); модель обучаемой ИНС (рис. 1б), построенной на основе многослойного персептрона (сети с прямым распространением сигнала) с антисимметричными сигмоидальными функциями активации, в виде нейронного декодера прямого распространения (НДПР), обеспечивающего отображение (1а). Использование НДПР позволит разработчику СПК полностью реализовать корректирующие возможности используемых кодов [8]. Обра тная связь y11 x1 z z 1 z 1 1 +1 −ε −ε −ε +1 y12 Пороги z 1 −ε x0 1 2 −ε y1 −ε y22 y23 x3 . . . −ε −ε +1 . . . xN . . . . . . −ε −ε −ε y1M Слой 1 (слой образцов) Слой2 (слой распознавания) 2 Слой3 (слой коррекции) (v) (v) bk 1 1 v 0 v . . . 0 y1 w21 w1L w22 w 31 w2N y2 w32 w32 w 31 N (K) y 3K (v) 0 bk w23 xN +1 y M w11 w12 w22 x2 y33 wK0 w12 w21 x3 2 −ε y3 w10 w20 w11 w13 w1N x1 x2 y13 w20 w30 wM 0 y13 x0 1 w10 w2L w33 w3N wL2 . . . wN 2 wN 1 wN 3 wL1 . . . wL3 yK wLK K (N) wNL (v) L Скрытый слой 1 0 v (v) v 1 0 Функции активации v Активационные функции а) б) Рис. 1. Модели НД а) нейронный классификатор Хэмминга (РНД1); б) обучаемая ИНС Установлено, что РНД1 вводит случайные задержки при декодировании, зависящие от кратности и распределения ошибок и использует «жесткие» решения в демодуляторе. Показано, что совершенствовать структуру РНД1 можно путем сокращения циклов в слое распознавания; в данной работе предлагается исключить слой распознавания из структуры РНД1 как избыточный путем более точной настройки параметров нейронов слоя образцов на параметры кода, адаптировать структуру для использования «мягких» решений в 5 демодуляторе и проанализировать, каким образом это отразится на функционировании декодера в целом. Показаны физические процессы декодирования, протекающие при выполнении отображения (1) с помощью предлагаемых моделей НД (рис. 2). Принятая КК Слой образцов P r | d1 r P r|d P r|d M d1 2 Выходной слой max Pr | d d коду d2 di dM Классы РКК D N * A A Множество принимаемых кодовых слов Декодированное информационное слово Слой распознавания ( N ,K ) Множество разрешенных КК AK Множество информационных слов а) Гиперплоскости Принятая КК Скрытый слой Декодированное информационное слово Выходной слой Классы РКК A*N Множество принимаемых кодовых слов AK D Множество информационных слов б) Рис.2. Реализация отображения множества принимаемых КК на множество информационных слов а) при использовании РНД1; б) при использовании НДПР Для определения направления совершенствования НДПР (рис. 1б) детализируем процесс его настройки и функционирования при непосредственной реализации отображения (1а). Каждый из нейронов скрытого слоя (слой 1) НДПР отвечает за создание гиперплоскости в пространстве свободных (настраиваемых) параметров декодера. Под свободными параметрами будем понимать веса синаптических связей и смещений нейронов НДПР. В процессе обучения (настройки) НДПР комбинация гиперплоскостей, сформированных всеми нейронами декодера, итеративно трансформируется (с наименьшей средней ошибкой) для разделения примеров обучающего множества (ОМ), преднамеренно взятых из разных классов РКК, где под ОМ понимается множество частных отображений вида: Di : A*N i A K i , (3) 6 где A*N i – i-ая КК из множества всех принимаемых КК, A K i – i-ое информационное слово, связанное с A*N i . Результаты декодирования с использованием НДПР априорно реализуются на этапе разработки в виде множества частных отображений (3). В процессе функционирования при зафиксированных значениях свободных параметров производится простой расчет отображения (1), а именно получение результатов декодирования из памяти сети. Рассмотренный процесс проиллюстрирован на рис. 2б. Суть действий НДПР полностью определяется качеством ОМ (3). Установлено, что выбор данных обучения и их размещение относительно конкретных гиперплоскостей становится очень важным для минимизации размера скрытого слоя L (рис. 1б), который полностью определяет структуру и сложность функционирования НДПР, где под размером слоя понимается количество нейронов в нем. Поэтому задача минимизации L выделена в отдельную научнотехническую задачу. Минимизировать L возможно, опираясь на использование различных алгоритмов инициализации и обучения, а также за счет варьирования их параметрами. Этому посвящен целый ряд работ зарубежных авторов (Lippmann R.P., Stefano A.D., Mirabella O., Wu J.L., El-Khamy S.E. и др.). В данной работе предлагается взять за основу уменьшение избыточности ОМ и проанализировать, каким образом это отразится на L и корректирующих возможностях НДПР. В данной части задачу исследования можно сформулировать так: создать и обучить НДПР с минимально достаточным количеством нейронов, позволяющий получить результаты безошибочного декодирования в пределах d min кода, где dmin – минимальное кодовое расстояние. Для построения НД на Установка: L=0 основе модели НДПР – Определение требуемого уровня использован метод миниПредварительная помехоустойчивости обработка данных мизации структурного – Формирование и анализ ОМ риска и соответствующая – Выбор структуры ИНС процедура синтеза НДПР • Установка: L=L+1 Выбор параметров • Случайная инициализация весов из (рис. 3), суть которой интервала [-1, 1] НДПР заключается в использова– Формирование НДПР вида (N–L–K) нии совокупности моделей – Выбор метода оптимизации НДПР с монотонно возрасОбучение (алгоритма обучения) тающим значением L до НДПР – Обучение (настройка) достижения безошибочПроверка корректирующих ного декодирования в преспособностей делах d min кода. В качестве Конец нет да методов оптимизации исPош 0 ? настройки пользованы известные НДПР алгоритмы обучения на Рис. 3. Процедура синтеза НДПР блокового кода примерах (ЛевенбергаМарквардта, обратного распространения ошибки), параметры которых устанавливались значениями по умолчанию. Требование поиска минимально достаточ7 ного количества нейронов обуславливается тем, что чем меньше нейронов содержит НДПР, тем меньше требуется вычислительных ресурсов для его реализации. Далее в главе 2 подробно описаны теоретические положения статистического обучения, влияющие на сложность и корректирующие свойства НДПР. Таким образом, полученные в главе 2 результаты позволили обосновать выбор моделей НД и итеративного декодера, а также получить основу для решения научной задачи в рамках первого, второго и третьего научных результатов. В третьей главе рассмотрены вопросы совершенствования метода итеративного декодирования двоичных линейных блоковых кодов в виде итеративно-перестановочного (ИП) метода. Разрабатываются модификации РНД1 и НДПР с целью сокращения числа используемых нейронов, а также анализируется корректирующая способность предложенных модификаций. Суть ИП метода состоит в мажоритарном принципе построения дополнительных проверочных уравнений путем линейной комбинации строк проверочной матрицы кода и группировки полученных уравнений в дополнительные фазы итерации декодирования с целью получения более надежных решений относительно информационных элементов при ограничении числа итераций. В общем случае на примере (8,4) кода Хэмминга данную схему декодирования можно представить как последовательное соединение 7 декодеров с «мягкой» схемой принятия решений на входе и выходе (SISO Декодер n) (рис. 4), использующих различные комбинации проверочных уравнений для одной фазы итерации декодирования. Они последовательно обмениваются между собой «внешней» информацией Le (d ) , и образуют одну полную итерацию декодирования. Результат декодирования по каждому информационному биту вычисляется в соответствии с (2). Le (dˆ ) Le (dˆ ) L(d ) SISO Декодер 1 Lc (x) Le (dˆ ) SISO Декодер 2 Le (dˆ ) SISO Декодер 3 ... SISO Декодер 7 Дополнительные фазы Основные фазы L(dˆ ) На решающее устройство Рис. 4. Функциональная схема ИП метода декодирования на примере (8,4) кода Хэмминга -1 10 Результаты моделирования (рис. 5) показали, что энергетический выигрыш (ЭВ) от использования разработанного ИП метода на примере (7,4) кода Хэмминга составил [0,1 – 0,5] дБ (для 1 итерации) по без кодирования ИП-метод (1 итерация) только основные фазы Декодер Мегитта -2 10 -3 BER 10 -4 10 -5 10 -6 10 0 1 2 3 4 5 Eb/N0 (dB) 6 7 8 8 Рис. 5. Оценка помехоустойчивости ИП метода для (8,4) кода Хэмминга в канале АБГШ 9 отношению к методу использования только основных фаз итерации декодирования. Выигрыш заметен уже при вероятности ошибки 10 2 [13]. С целью уменьшения вычислительных затрат на операцию декодирования усовершенствованы рассмотренные в главе 2 модели НД. Разработана упрощенная модель РНД1 в виде РНД2 (рис. 6а) [12]. На данную модель получено положительное решение о выдаче патента РФ на полезную модель [14]. W (1) 1, 1 W (1) 1, 1 y11 W ( 2) 0, 1 x1 x1 y12 x2 y 12 x3 . . . . . . xN y 22 x2 y 32 x3 . . . y 31 y 1 M Выходной (слой коррекции) y . . . . . . 1 3 y K2 y 1 M Выходной (слой коррекции) (v) Слой 1 (слой образцов) v 1 0 v (v) (v) 1 1 1, v bk 0, иначе (v ) 0 y 32 Входной слой 1 0 y 22 y 12 xN (v) Слой 1 (слой образцов) y12 . . . y K2 Входной слой y11 W ( 2) 1, 1 bk Функции активации Функции активации v 0 v а) б) Рис.6. Модель РНД2 блокового кода а) «жесткое» декодирование (РНД2); б) «мягкое» декодирование (РНД2м) Идея заключается в удалении из состава РНД1 (рис. 1а) рекуррентного слоя нейронов (слоя распознавания), который вводит переменную задержку при декодировании. Для этого в качестве активационных функций (АФ) нейронов слоя образцов РНД1 доказано использование пороговых АФ единичного скачка (функций Хэвисайда) со смещениями (порогами) b N d min 1, которые получены автором самостоятельно. Кроме того, преобразована в биполярный вид матрица весов синаптических связей нейронов слоя образцов РНД1 W (1) 1, 1, что позволило исправлять стирания в принятой КК путем их замены нулевым элементом на входе декодера. Усовершенствована разработанная модель РНД2 (рис. 6а) в виде РНД2м (рис. 6б) с целью использования «мягких» решений в демодуляторе. Для этого в качестве нейронов слоя образцов РНД2 обоснована необходимость использования радиальных нейронов, активность которых определяется функцией Гаусса с нормальным законом распределения: y 1k exp[ ( wik1 xik ) / 2 2 ] , N 2 i 1 2 k 1, , M (M=2K), где 1 – дисперсия, характеризующая ширину радиально- 9 базисной функции, y 1k – значение выходного сигнала k-го нейрона слоя образцов РНД2м. Показано, что слой образцов РНД2м осуществляет выбор РКК с наибольшей плотностью распределения вероятности к входным данным. Кроме того, преобразована в биполярный вид матрица весов синаптических связей нейронов выходного слоя РНД2м W ( 2) 1, 1 , что позволило выделить нейрон слоя образцов с максимальным значением вероятности y 1k . Показано, что РНД2м и РНД2 являются декодерами максимального правдоподобия. Установлено, что РНД2 устраняет переменную задержку при декодировании, а также обеспечивает исправление стираний [6]. С целью уменьшения L РНД2 обоснована необходимость использования модели НДПР и соответствующей процедуры синтеза (рис. 3). В качестве ОМ использовалось множество отображений (3). Для минимизации размера ОМ при сохранении требуемого уровня помехоустойчивости и получения НДПР с меньшим числом нейронов использовано свойство обобщения НДПР. С этой целью Кодовое пространство Запрещенные КК усовершенствована Запрещенные КК методика формирования ОМ для построения НДПР Множество блоковых кодов, обучающих работающих в реданных жимах исправления t (p) ошибок и стираний. Суть заключаРазрешенные КК ется в том, что в Гиперплоскости качестве ОМ Разрешенные КК Рис. 7. Методика формирования ОМ для построения НДПР используется множество запрещенных кодовых комбинаций, отстоящих на расстоянии t (и/или p) от соответствующей РКК (рис. 7): T 2 K C Nt ( p ) , где t (p) – кратность исправляемых кодом ошибок (стираний), T – размер ОМ [9, 12]. Предложенные обучающие данные находятся на границах гиперплоскостей, формируемых нейронами скрытого слоя НДПР, что позволяет в среднем сократить размер ОМ на 13,5% для режима исправления ошибок и на 29,5% для режима исправления ошибок и стираний (рис. 8). 10 Размер ОМ 350000 70 на 48% на 29% на 12% предложенный набор ОМ полный набор ОМ 60 300000 50 250000 40 L 200000 30 150000 20 100000 50000 0 (15,5) (15,7) (15,11) 0 (7,4) код исправление ошибок исправление ошибок и стираний 10 (15,5) коды (15,7) Рис. 8. Изменение размера ОМ НДПР при Рис. 9. Изменение L НДПР некоторых кодов БЧХ при изменении состава ОМ исправлении ошибок и стираний − Все кодовое пространство как ОМ − Предлагаемый набор ОМ (рис. 7) Исследовано влияние размера ОМ на изменение L (рис. 9), где под полным набором понимается множество (3) [12]. Установлено, что при использовании предложенной методики L НДПР уменьшается в среднем на 9,8%. Необходимо отметить, что существует связь между размером ОМ и L: чем меньше размер ОМ, тем меньше L. Показано, что полученные результаты согласуются с результатами статистической теории восстановления зависимостей по эмпирическим данным В.Н. Вапника и А.Я. Червоненкиса. В научно-технической литературе введены эвристические формулы для оценки теоретических границ изменения L и необходимого числа синаптических весов Lw в зависимости от структуры ИНС и размера ОМ (в многослойной сети с сигмоидальными функциями активации): Lw K T T , Lw K 1N K 1 K , L N M 1 log 2 T K (7) где N − размерность входного вектора, K − размерность выходного вектора, T − размер ОМ. Установлено, что при непосредственном применении (7) оценка L НДПР становится сильно завышена (рис. 10 и 11). log L 10 L 10 10 10 log L 6 10 Теоретические границы 5 10 Теоретические границы 4 РНД1 3 3 РНК1 10 РНД2 РНК2 2 2 10 10 4 L 10 1 1 НКПР НДПР 0 10 (7,4) (15,5) коды 0 (15,7) Рис. 10. Изменение L НДПР некоторых кодов БЧХ при исправлении ошибок 10 (7,4) (15,5) (31,6) коды (15,7) (15,11) (31,11) Рис. 11. Изменение L НКПР некоторых кодов БЧХ В работе экспериментально получены практические аппроксимации L НДПР (рис. 10) и НКПР (рис. 11), где НКПР – нейронный кодер прямого распространения. Анализ рис. 10 показывает, что более точная привязка ОМ к параметрам кодового пространства обеспечивает значительное снижение L НДПР. 11 Покажем, что корректирующая способность предложенных модификаций РНД2(2м) и НДПР не хуже РНД1 и оптимального «жесткого» (HDD) и «мягкого» (SDD) декодеров. Для этого проведем моделирование работы разработанных декодеров в канале с аддитивным белым гауссовским шумом (АБГШ) с 2 1 и двоичной фазовой манипуляцией (BPSK) (рис. 12а,б,в), а также в дискретном однородном двоичном симметричном канале без памяти (ДСК) при варьировании вероятности ошибки Pош от 0 до 0.5 (рис. 12г). 0 10 -1 10 -1 10 -2 10 BER BER -2 10 нет кодирования HDD SDD РНД2 ИП-метод РНД2м -3 10 -4 10 0 1 2 3 -4 10 4 5 Eb/No (дБ) 6 7 8 9 а) Вероятность правильного приема, % -1 10 -2 BER 10 нет кодирования HDD SDD РНД2 РНД2м 10 -4 10 0 1 2 3 0 Pпп 0 10 -3 нет кодирования HDD SDD РНД2 РНД2м -3 10 4 5 Eb/No (дБ) 6 7 8 9 1 2 3 4 5 Eb/No (дБ) 6 7 8 б) 1 (15,5) РНД и НДПР БМА 0.8 0.6 0.4 (7,4) РНД, НДПР и БМА (15,7) РНД и НДПР БМА 0.2 0 0 0.05 0.1 0.15 0.2 0.25 0.3 Вероятность ошибки 0.35 0.4 0.45 г) в) Рис.12. Оценка помехоустойчивости РНД2 и РНД2м кодов БЧХ при работе в канале АБГШ а) код (7,4); б) код (15,5); в) код (15,7); г) Оценка Pпп при изменении Pош в ДСК. На основе графиков, отражающих результаты моделирования (рис..12), где БМА – классический синдромный метод декодирования (алгоритм БерлекэмпаМесси), могут быть сделаны следующие выводы: предложенные модели РНД2(2м) и НДПР не ухудшают качество СПК, при этом имеют меньшее значение L по сравнению с существующими моделями; предложенная методика формирования ОМ не ухудшает корректирующих возможностей разрабатываемых декодеров. Таким образом, исследования, проведенные в главе 3, позволили расширить применение итеративного метода декодирования, получить усовершенствованные модели НД, а также результаты оценки их корректирующей способности, что позволило решить научную задачу в рамках первого, второго и третьего научных результатов. В четвертой главе решались задачи оценки сложности функционирования НД блоковых кодов на основе разработанных моделей, а также сравнение полученных результатов с частными результатами других исследователей. 12 9 0.5 Pош При оценке сложности выделено два класса: сложность функционирования (вычисления) и сложность построения (разработки). Установлено, что построение НД значительно сложнее классических декодеров (КД), однако сложный процесс в данном случае реализуется априорно до приема кодовых слов (сложность построения). В то время как сложность КД переносится на интервал времени приема каждого кодового слова (сложность функционирования) [1, 2]. Иными словами, сложности НД и КД реализуются в разных классах (рис. 13). Обосновывается исследование сложности функционирования НД. Этап функционирования Этап разработки КК1 Классические декодеры КК2 КК3 КК4 ... Время Сложность разработки Сложность функционирования Этап разработки Этап функционирования КК1 КК2 КК3 КК4 КК5 КК6 КК7 КК8 КК9 Нейронные декодеры ... Сложность разработки Сложность функционирования Время Рис. 13. Реализация сложности методов декодирования Введена искусственная мера на основе функции полезности в виде комплексного показателя сложности последовательной и параллельной программной реализации алгоритмов кодирования и декодирования, позволяющая соизмерить отдельные показатели алгоритмической и программной сложности по неравномерной шкале для выявления порядка предпочтений. Такая мера определена через важность отдельных показателей в виде функции сложности метода декодирования. Для ее построения использована аддитивная свертка ее отдельных компонентов [3]: (8) декодер (n) или декодер (n) c1 f декодер (n) c 2 S d c3 C c 4 S r , где декодер (n) − последовательная сложность реализации, декодер (n) − сложность реализации алгоритма при наличии параллельных блоков выполнения, f декодер (n) , f декодер (n) – функция трудоемкости последовательной/параллельной реализации (число «элементарных» операций), ci [0, 1] − коэффициенты важности, S d − память, необходимая для реализации вычислительного процесса (число «элементарных» ячеек), S r − память, необходимая для хранения промежуточных результатов. Третий показатель “C” в выражении (8) является оценкой сложности ПО как совокупность метрик сложности ПО. Показано, что для задач СПК могут использоваться метрики Холстеда, отражающие размер ПО, или интегральная оценка сложности ПО, введенная в работах отечественных ученых, например, Бахтизиным В.В.: C 1 M M Ci C i 1 , где С i – рассчитанное значение i-й метрики i баз сложности ПО, Ci баз – базовое значение i-й метрики сложности ПО (в качестве Ci баз может быть использовано статистическое значение i-й метрики сложности 13 предприятия), M – количество метрик сложности ПО. Важно отметить, что функция сложности (8) характеризует относительную, а не абсолютную предпочтительность методов декодирования. Рассмотрим случай, когда показатели оперативности (трудоемкость) и ресурсоемкости (память) алгоритма имеют наибольшую важность. В этом случае вектор коэффициентов важности примет вид c (1100) . С учетом (8) в работе получены аналитические выражения для оценки сложности НД (табл. 1), где J – число слоев НД (за исключением входного), Li – число нейронов в i-м слое. Таблица 1 Аналитические выражения оценки сложности нейронных декодеров Последовательная реализация J f декодер (n) 2 Li Li 1 , S d ш 1 при Параллельная реализация деко дер J J ш 1 ш 1 f декодер (n) 2 Li 1 , S d деко дер Li ( Li 1 1) J Li ( Li 1 1) ш 1 c1 c2 1, c3 c 4 0 : J J i 1 i 1 декодер (n) 3 Li Li 1 Li J J i 1 i 1 декодер (n) 2 Li 1 Li ( Li 1 1) Для рассматриваемых моделей декодеров значения J и Li определяются в соответствии с табл. 2. Таблица 2 Размеры скрытых слоев нейронных декодеров Наименование декодера РНД2 (РНД2м) РНД1 J=3, L0 N , L1 L2 2 , L3 K K J=2, L0 N , L1 2 , K L2 K НДПР J=2, L0 N , L2 K , L1 - определяется экспериментально. Установлено, что трудоемкость НД в “лучшем”, “худшем” и “среднем” случаях совпадает, поэтому сложность может быть рассчитана аналитически (рис. 14) в соответствии с табл. 1 без проведения имитационного моделирования. log декодер ( N ) 5 4 6 Сложность, ед. 10 x 10 ——– декодер ( N ) — — декодер ( N ) РНД1 РНД1 Сложность, ед. 8 2(2м) РНД2(м) 4 4 2(2м) РНД2(м) НДПР (испр. ошибок и стираний) 10 3 10 2 НДПР (испр. ошибок) 2 0 (7,4) коды (127,120) 10 (7,4) (15,5) код (15,7) а) б) Рис. 14. Оценка сложности функционирования моделей НД некоторых кодов БЧХ а) РНД1 и РНД2(2м); б) НДПР На основе графиков, отражающих изменение сложности НД для рассматриваемых кодов БЧХ и кодов длины до 127 (рис. 14), а также табл. 3 сделаны следующие выводы: сложность РНД2(2м) меньше сложности РНД1 в среднем в 2 K раз в связи с 14 отсутствием рекуррентного слоя нейронов; сложность НДПР меньше сложности РНД1 в среднем на 67,6%; использование предложенной методики формирования ОМ сокращает сложность НДПР в среднем на 9,7%. В результате проведенных исследований, удалось получить оптимальные (в смысле минимального необходимого количества нейронов) характеристики НДПР для некоторых кодов БЧХ (табл. 3), позволяющие обеспечить результаты декодирования, аналогичные декодеру максимального правдоподобия [12]. Таблица 3 Разработанные типы и структуры НД для некоторых кодов БЧХ № п/п Код 1 2 3 4 5 6 7 (7,4) (15,5) 8 9 (15,7) Тип нейронного декодера РНД1 РНД2 (РНД2м) НДПР РНД1 РНД2 (РНД2м) НДПР РНД1 Структура нейронного декодера для различных режимов работы Исправление Исправление ошибок ошибок и стираний 7−16−16−4 7−16−4 7−7−4 7−9−4 15−32−32−5 15−32−5 15−38−5 15−58−5 15−127−127−7 РНД2 (РНД2м) НДПР 15−127−7 15−34−7 Порядок роста сложности O(2 2K ) O( N 2 K ) O( L N ) O(2 2K ) O( N 2 K ) O( L N ) O(2 2K ) O( N 2 K ) O( L N ) 15−39−7 Рассчитанные матрицы свободных параметров представлены в Приложении 2 диссертации. Для проверки адекватности полученных аналитических выражений, задача декодирования с использованием разработанных НД сведена к задаче умножения вектора на матрицу, для которой в теории сложности вычислений установлены границы роста сложности, величины ускорения и эффективности при параллельной реализации. Показано, что полученные результаты оценки порядка роста сложности разработанных НД (табл. 3) полностью согласуются с теоретическими. Таблица 4 Различные НД при исправлении ошибок log декодер ( N ) 5 № п/п Сложность, ед. 10 4 10 РНД1 СНД BPN НДПР РНД2, РНД2м 1 2 3 3 10 4 5 2 10 (7,4) (15,5) код (15,7) Рис. 15. Сложность реализации НД блоковых кодов в режиме исправления ошибок 15 Исследователь Zeng G., Hush D., Ahmed N. Htay M.M., Iyengar S.S. Ahmed S. Stefano A.D, Mirabella O., Cataldo G.D. Предлагаемые НД Наименование Структура Обучение РНД1 N - 2K 2K - K N – [N– K] - N 2N - N Nlog2(2T) - 2K-K N - 2K- K N - 2K- K N-L-K Нет СНД BPN РНД2 РНД2м НДПР Нет Да Нет Да Эффективность РНД2(2м) и НДПР сравнена с частными результатами других исследователей (табл. 4) (РНД1, СНД, BPN) с точки зрения сложности функционирования. Анализ графиков (рис. 15), полученных в результате использования разработанных аналитических выражений (табл. 1), показывает, что полученные результаты согласуются с известными данными и в случае рассматриваемых кодов сложность предлагаемых в работе НД меньше сложности известных НД в среднем на 56,4% при всех равных условиях. Таким образом, проведенные в главе 4 исследования сложности функционирования разработанных НД позволили показать их эффективность, а также применимость разработанных аналитических выражений оценки сложности и решить научную задачу в рамках четвертого научного результата. В заключении сформулированы основные научные и практические результаты работы, полученные автором. ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ 1. Разработан итеративно-перестановочный метод декодирования двоичных линейных блоковых кодов, обеспечивающий увеличение надежности приема информационных элементов путем мажоритарного построения дополнительных проверочных уравнений. Моделированием оценен энергетический выигрыш от его использования на примере (7,4) кода Хэмминга. Он составляет [0,1 – 0,5] дБ (для 1 итерации) по отношению к методу использования только основных фаз итерации декодирования. Выигрыш заметен уже при вероятности ошибки 10 2 . 2. Разработана структура и определены параметры модели нейронного кодера и декодера на основе нейронного классификатора Хэмминга для использования «жестких» и «мягких» решений в демодуляторе, а также исправления стираний. Более точная настройка параметров модели на характеристики кода позволила исключить из состава классификатора Хэмминга второй скрытый слой распознавания. Это позволило сократить в среднем в 2 раза общее число нейронов и уменьшить в среднем в 2 K раз сложность функционирования, а также устранить переменную задержку при декодировании. 3. Предложена методика формирования обучающего множества для построения обучаемого нейронного декодера блоковых кодов, работающего в режимах исправления ошибок и стираний. Использование предложенной методики позволило повысить обоснованность выбора обучающего множества путем его привязки к структуре кодового пространства и уменьшить сложность функционирования обучаемых нейронных декодеров в среднем на 9,7% при сокращении избыточности обучающего множества на 21,5%. 4. Предложена методика оценки сложности функционирования последовательной и параллельной программной реализации алгоритмов кодирования и декодирования на основе комплексного показателя, учитывающая алгоритмическую и программную сложность реализации. Ее использование позволяет 16 осуществить рациональный выбор реализации предложенных методов с учетом алгоритмической и программной составляющих. 5. Теоретическим результатом являются полученные аналитические выражения для оценки сложности функционирования нейронных декодеров блоковых кодов, которые напрямую зависят от параметров используемых кодов. Данные выражения позволяют до этапа эксплуатации оценить пригодность конкретных реализаций нейронных декодеров при заданных ограничениях на сложность функционирования. 17 6. Исследован порядок роста сложности, проведена оценка помехоустойчивости и сравнение полученных результатов с частными результатами других исследователей. Это дает основание утверждать, что полученные результаты согласуются с известными данными и в случае рассматриваемых кодов сложность предложенных в работе модификаций нейронных декодеров меньше сложности известных нейронных декодеров в среднем на 56,4% при всех равных условиях. СПИСОК ПУБЛИКАЦИЙ ПО ТЕМЕ ДИССЕРТАЦИИ 1. Берёзкин А.А. Оценка сложности реализации современных методов декодирования помехоустойчивых кодов // Труды учебных заведений связи / СПбГУТ. СПб, 2005. № 172. С.89 - 96. (Из перечня изданий, рекомендованного ВАК). 2. Берёзкин А.А., Охорзин В.М. Оценка сложности реализации декодирования кодов Рида-Соломона при исправлении стираний // 57-я НТК: материалы / СПбГУТ. СПб, 2005. С. 6. 3. Берёзкин А.А. Критерии оценки сложности программной реализации методов кодирования и декодирования // 59-я СНТК / СПбГУТ. СПб, 2005. С. 21. 4. Берёзкин А.А., Охорзин В.М. Оценка сложности реализации итеративных методов декодирования // Труды учебных заведений связи / СПбГУТ. СПб, 2006. № 174. С.39 - 44. 5. Берёзкин А.А. Альтернативное декодирование помехоустойчивых кодов с использованием нейронных сетей // Труды учебных заведений связи / СПбГУТ. СПб, 2006. № 175. С.8 - 15. 6. Берёзкин А.А. Рекуррентный нейронный декодер двоичных блоковых кодов и его модификации // Труды учебных заведений связи / СПбГУТ. СПб, 2007. № 176. С.135 - 146. 7. Берёзкин А.А. Нейросетевой подход к вопросам кодирования/декодирования помехоустойчивых кодов // 59-я НТК: материалы / СПбГУТ. СПб, 2007. С. 29. 8. Берёзкин А.А. Оптимальный нейронный кодер/декодер прямого распространения: характеристики и применение // 61-я СНТК / СПбГУТ. СПб, 2007. С. 20. 9. Берёзкин А.А. Выбор обучающего множества для построения нейронных декодеров помехоустойчивых кодов // 60-я НТК: материалы / СПбГУТ. СПб, 2008. С. 25. 10. Берёзкин А.А., Комашинский В.И. Введение в нейро-цифровые инфокоммуникационные технологии // XI Санкт-Петербургская международная конференция «Региональная информатика-2008» (РИ-2008): материалы / СПОАСУ. СПб, 2008. С. 76. 11. Берёзкин А.А. Перспективы развития современных методов помехоустойчивого кодирования в нейро-цифровом логическом базисе // Международная НПК «Перспективы развития телекоммуникационных систем и информационные технологии»: труды конференции / СПБГПУ. СПб, 2008. С. 10 - 16. 12. Берёзкин А.А. Построение оптимальных нейронных декодеров блоковых кодов // Научно-технические ведомости СПбГПУ / СПбПГУ. СПб, 2008. № 5. С.34 - 41. (Из перечня изданий, рекомендованного ВАК). 13. Берёзкин А.А. Итеративно-перестановочный метод декодирования двоичных линейных блоковых кодов // Научно-технические ведомости СПбГПУ / СПбПГУ. СПб, 2009. № 2. С.193 - 199. (Из перечня изданий, рекомендованного ВАК). 14. Берёзкин А.А. Нейронный декодер двоичных блочных кодов с исправлением ошибок и стираний, патент РФ на полезную модель по заявке №2009108326/22, решение о выдаче патента от 25.03.2009г. Подписано к печати 29.05.2009. Объем 1 печ. л. Тираж 80 экз. Зак. 19 Тип. СПбГУТ, 191186 СПб, наб. р. Мойки,61