- •Министерство образования и науки рф
- •080801 Прикладная информатика (по областям применения)
- •Сочи, 2010 г.
- •1. Меры информации 20
- •2. Квантование сигналов 46
- •3.8. Помехоустойчивое кодирование 96
- •Введение Курс лекций
- •Определение понятия информация
- •Некоторые определения
- •Фазы обращения информации
- •1. Меры информации
- •1.1. Структурные меры количества информации
- •1.1.1. Геометрическая мера
- •1.1.2. Комбинаторная мера
- •1.1.3. Аддитивная мера (мера Хартли)
- •1.2. Статистические меры
- •1.2.1. Энтропия и ее свойства.
- •1.2.1.1. Энтропия и средняя энтропия простого события
- •Метод множителей Лагранжа
- •1.2.1.2. Энтропия сложного события, состоящего из нескольких независимых событий
- •1.2.1.3. Вывод формулы среднего значения энтропии на букву сообщения
- •1.2.1.4. Энтропия сложного события, состоящего из нескольких зависимых событий
- •1.2.2. Некоторые выводы, касающиеся статистической меры количества информации Шеннона
- •1.2.3. Литература
- •1.2.4. Избыточность сообщения
- •1.2.5. Пример оценки количества информации при помощи статистической меры Шеннона
- •1.3. Семантические меры информации
- •1.3.1. Содержательность информации
- •1.3.2. Целесообразность информации
- •1.3.3. Динамическая энтропия
- •1.4. Общие замечания об измерении информации
- •1.5. Энтропия непрерывных сообщений
- •1.5.1. Экстремальные свойства энтропии непрерывных сообщений
- •1.5.1.1. Первый случай (значения сл. Величины ограничены интервалом)
- •1.5.1.2. Второй случай (заданы дисперсия и математическое ожидание сл. Величины)
- •1.5.1.3. Третий случай (сл. Величина принимает только положительные значения)
- •2. Квантование сигналов
- •2.1. Виды дискретизации (квантования)
- •2.2. Критерии точности представления квантованного сигнала
- •2.3. Элементы обобщенной спектральной теории сигналов
- •2.4. Дискретизация по времени
- •2.4.1. Разложение в ряд Котельникова (Теорема Котельникова)
- •2.4.1.1. Свойства функции отсчетов
- •2.4.1.2. О практическом использовании теоремы Котельникова
- •2.4.2. Выбор периода дискретизации (квантования по времени) по критерию наибольшего отклонения
- •2.4.2.1. Интерполяция при помощи полиномов Лагранжа
- •2.4.2.2. Оценка максимального значения ошибки при получении воспроизводящей функции на основе полинома Лагранжа
- •2.4.2.3. Схема дискретизации-передачи-восстановления сигнала
- •2.4.2.4. Расчет периода дискретизации при использовании для получения воспроизводящей функции полинома Лагранжа нулевого порядка
- •2.4.2.5. Расчет периода дискретизации при использовании для получения воспроизводящей функции полинома Лагранжа первого порядка
- •2.4.2.6. Расчет периода дискретизации при использовании для получения воспроизводящей функции полинома Лагранжа второго порядка
- •2.4.2.7. Обобщение на случай использования полиномов Лагранжа произвольного порядка
- •2.4.3. Выбор интервала дискретизации по критерию среднеквадратического отклонения
- •2.5. Квантование по уровню
- •2.5.1. Оптимальное квантование по уровню
- •2.5.2. Дисперсия ошибки в случае использования равномерной шкалы квантования по уровню
- •2.5.3. Расчет неравномерной оптимальной в смысле минимума дисперсии ошибки шкалы квантования.
- •2.5.4. Расчет неравномерной оптимальной в смысле максимума количества информации в квантованном сигнале шкалы квантования
- •2.5.5. Закон компандирования при условии равномерного закона распределения квантуемого сигнала
- •3. Кодирование информации
- •3.1. Общие понятия и определения. Цели кодирования
- •3.2. Элементы теории кодирования
- •3.3. Неравенство Крафта
- •3.4. Теорема об обобщении некоторых результатов, полученных для префиксных кодов, на все однозначно декодируемые коды
- •3.5. Основная теорема кодирования для канала связи без шума (теорема 3)
- •3.6. Теорема о минимальной средней длине кодового слова при поблочном кодировании (теорема 4)
- •3.7. Оптимальные неравномерные коды
- •3.7.1. Лемма 1. О существовании оптимального кода с одинаковой длиной кодовых слов двух наименее вероятных кодируемых букв
- •3.7.2. Лемма 2. Об оптимальности префиксного кода нередуцированного ансамбля, если префиксный код редуцированного ансамбля оптимален
- •3.7.3. Коды Хаффмена12
- •3.7.4. Коды Шеннона−Фэно
- •3.7.5. Параметры эффективности оптимальных кодов
- •3.7.6. Особенности эффективных кодов.
- •3.8. Помехоустойчивое кодирование
- •3.8.1. Классификация кодов
- •3.8.2. Простейшие модели цифровых каналов связи с помехами
- •3.8.3. Расчет вероятности искажения кодового слова в дсмк
- •3.8.4. Общие принципы использования избыточности
- •3.8.5. Граница Хэмминга
- •3.8.6. Избыточность помехоустойчивых кодов
- •3.8.7. Математическое введение к алгебраическим кодам
- •3.8.8. Линейные коды
- •3.8.9. Упрощённый способ построения линейного кода
- •Определение числа добавочных разрядов m.
- •Построение образующей матрицы
- •Порядок кодирования
- •4. Порядок декодирования
- •3.8.10. Двоичные циклические коды
- •3.8.11. Некоторые свойства циклических кодов
- •3.8.12. Построение кода с заданной корректирующей способностью
- •3.8.13. Матричное описание циклических кодов
- •3.8.14. Выбор образующего полинома
- •4. Передача информации
- •4.1. Виды каналов передачи информации
- •4.2. Разделение каналов связи
- •4.2.1. Частотное разделение
- •4.2.2. Временное разделение
- •4.2.3. Кодовое разделение
- •4.2.4. Разделение по уровню
- •4.2.5. Корреляционное разделение
- •4.2.6. Комбинированные методы разделения
- •4.3. Пропускная способность каналов связи
- •4.4. Пропускная способность дискретного канала связи с шумом
- •4.4.1. Типичные последовательности и их свойства
- •4.4.2. Основная теорема Шеннона для дискретного канала с шумом
- •4.4.3. Обсуждение основной теоремы Шеннона для канала с шумом
- •4.5. Пропускная способность непрерывного канала при наличии аддитивного шума
- •Литература
- •Приложение 1. Таблица неприводимых полиномов
- •Учебно-лабораторный практикум л абораторная работа 1: Исследование информативности источников дискретных сообщений.
- •Теоретическое введение
- •Шаг 2. Ввод текстовых файлов в Excel-таблицу с разбиением каждой строки текста на отдельные символы.
- •Шаг 3. Используя инструмент «гистограмма» пакета анализа надстройки Анализ данных, находим частоты появления каждого символа в текстах и по ним находим вероятности их появления в данном языке.
- •Шаг 4. Находим среднюю энтропию, приходящуюся на 1 букву сообщения.
- •Шаг 6. Возьмем короткий отрезок текста на одном из заданных языков и найдем количество заключенной в нем информации
- •Шаг 7. Проделаем те же операции с учетом зависимости двух соседних букв того же текста.
- •Шаг 8. Напишем отчет о выполненной работе с описанием всех вычислений и о том, как они выполнялись. Прокомментируйте результаты.
- •Шаг 9. Сдайте или отослать по электронной почте (alexm5@fromru.Com) отчет на проверку преподавателю. Шаг 10. Защитите лабораторную работу у преподавателя. Варианты задания
- •Результаты работы
- •Сдача работы
- •Вопросы для самопроверки
- •Литература
- •Приложение 1: Пример оформления титульного листа
- •Приложение 2: Порядок создания нестандартных функций при использовании табличного процессора Excel Введение
- •Подключение возможности использования нестандартных функций.
- •Создание нестандартной функции
- •Приложение 3: Описание функции впр
- •Лабораторная работа 2. Исследование методов дискретизации непрерывных сообщений по времени
- •Теоретическое введение.
- •Последовательность выполнения практической части работы
- •1. Знакомство с программой Wavosaur для записи и обработки звука.
- •2. Подключите к компьютеру головную гарнитуру (головной телефон и микрофон, рис. 2, слева) и нажмите кнопку Monitor input with vu meter, указанную на рис. 2 справа синей стрелкой.
- •3. Запись голоса и подготовка сигнала.
- •4. Импорт текстовых данных в Excel
- •Результаты работы
- •Литература
- •Вопросы для самопроверки
- •Иллюстрация к порядку вычисления ряда Найквиста-Котельникова
- •Лабораторная работа 3. Исследование оптимального квантования непрерывных сообщений по уровню.
- •Теоретическое введение.
- •Возможный вариант выполнения работы
- •Результаты работы
- •Литература
- •Вопросы для самопроверки
- •Лабораторная работа 4. Исследование оптимальных (в смысле минимальной средней длины кодового слова) кодов на примере кодов Шеннона-Фэно и Хаффмена.
- •Теоретическое введение.
- •Коды Хаффмена
- •Коды Шеннона−Фэно
- •Параметры эффективности оптимальных кодов
- •Особенности эффективных кодов.
- •Выполнение работы
- •Результаты работы
- •Литература
- •Вопросы для самопроверки
- •Лабораторная работа 5. Исследование кодов, обнаруживающих и исправляющих ошибки на примере линейного кода, исправляющего однократные ошибки.
- •Теоретическое введение.
- •Определение числа добавочных разрядов m.
- •Построение образующей матрицы
- •Порядок кодирования
- •4. Порядок декодирования
- •Выполнение работы
- •Результаты работы
- •Литература
- •Вопросы для самопроверки
- •12 Дэвид Хаффман (р. 9 августа 1925, Альянс, Огайо — 7 октября 1999, Санта Круз, Калифорния) — первопроходец в сфере информатики.
3.7.4. Коды Шеннона−Фэно
Ранее, независимо друг от друга Шенноном и Фэно13 была предложена другая процедура построения эффективного кода. Получаемый при ее помощи код называют кодом Шеннона−Фэно.
Код Шеннона−Фэно строится следующим образом:
буквы алфавита сообщений выписываются в таблицу в порядке убывания вероятностей;
затем они разделяются на две группы так, чтобы суммы вероятностей в каждой из групп были по возможности одинаковы;
всем буквам верхней половины в качестве первого символа приписывается 1, а всем нижним 0;
каждая из полученных групп, в свою очередь, разбивается на две подгруппы с одинаковыми суммарными вероятностями и т. д. ;
процесс повторяется до тех пор, пока в каждой подгруппе останется по одной букве.
Рассмотрим алфавит из восьми букв. Ясно, что при обычном (не учитывающем статистических характеристик) кодировании для представления каждой буквы требуется три символа.
Наибольший
эффект сжатия
получается в случае, когда вероятности
букв представляют собой целочисленные
отрицательные степени двойки. Среднее
число символов на букву в этом случае
точно равно энтропии. Убедимся в этом,
вычислив энтропию:
и среднее число символов на букву
где n(Zi)
—число
символов в кодовой комбинации14,
соответствующей букве Zi.
Характеристики такого ансамбля и коды
букв представлены в таблице 3.4.
Таблица 3.4.
Буквы |
Вероятности |
Ступени разбиения |
Кодовые комбинации |
||||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
|||
Z1 |
1/2 |
1 |
|
|
|
|
|
|
1 |
Z2 |
1/4 |
0 |
1 |
|
|
|
|
|
01 |
Z3 |
1/8 |
0 |
0 |
1 |
|
|
|
|
001 |
Z4 |
1/16 |
0 |
0 |
0 |
1 |
|
|
|
0001 |
Z5 |
1/32 |
0 |
0 |
0 |
0 |
1 |
|
|
00001 |
Z6 |
1/64 |
0 |
0 |
0 |
0 |
0 |
1 |
|
000001 |
Z7 |
1/128 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0000001 |
Z8 |
1/128 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0000000 |
В более общем случае для алфавита из восьми букв среднее число символов на букву будет меньше трех, но больше энтропии алфавита H(Z). Для ансамбля букв, приведенного в таблице 3.5, энтропия равна 2,76, а среднее число символов на букву 2,84.
Таблица 3.5
Буквы |
Вероят-ности |
Ступени разбиения |
Кодовые комбинации |
||||||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
|
|
|||
Z1 |
0,22 |
1 |
1 |
|
|
|
|
|
11 |
||
Z2 |
0,20 |
1 |
0 |
1 |
|
|
|
|
101 |
||
Z3 |
0,16 |
1 |
0 |
0 |
|
|
|
|
100 |
||
Z4 |
0,16 |
0 |
1 |
|
|
|
|
|
01 |
||
Z5 |
0,10 |
0 |
0 |
1 |
|
|
|
|
001 |
||
Z6 |
0,10 |
0 |
0 |
0 |
1 |
|
|
|
0001 |
||
Z7 |
0,04 |
0 |
0 |
0 |
0 |
1 |
|
|
00001 |
||
Z8 |
0,02 |
0 |
0 |
0 |
0 |
0 |
|
|
00000 |
||
Следовательно, некоторая избыточность в последовательностях символов осталась. Из теоремы Шеннона следует, что эту избыточность также можно уменьшить, если перейти к кодированию достаточно большими блоками.
Рассмотрим сообщения, образованные с помощью алфавита, состоящего всего из двух букв Z1 и Z2, с вероятностями появления соответственно p(Zi)=0,9 и р(Z2) =0,1.
Поскольку вероятности не равны, то последовательность из таких букв будет обладать избыточностью. Однако при побуквенном кодировании никакого эффекта не получается.
Действительно, на передачу каждой буквы требуется символ либо 1, либо 0, в то время как энтропия равна 0,47.
При кодировании блоков, содержащих по две буквы, получим коды, показанные в табл. 3.6.
Таблица 3.6
Буквы |
Вероятности |
Ступени разбиения |
кодовые комбинации |
|||||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
|
|||
Z1 Z1 |
0,81 |
1 |
|
|
|
|
|
|
1 |
|
Z2 Z1 |
0,09 |
0 |
1 |
|
|
|
|
|
01 |
|
Z3 Z1 |
0,09 |
0 |
0 |
1 |
|
|
|
|
001 |
|
Z4 Z1 |
0,01 |
0 |
0 |
0 |
|
|
|
|
000 |
|
Так как буквы статистически не связаны, вероятности блоков определяются как произведение вероятностей составляющих букв.
Среднее число символов на блок получается равным 1,29; а на букву − 0,645.
Кодирование блоков, содержащих по три буквы, дает еще больший эффект. Соответствующий ансамбль и коды приведены в табл. 3.7.
Таблица 3.7.
Буквы |
Вероят ности |
Ступени разбиения |
кодовые комбинации |
||||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
|||
Z1 Z1 Z1 |
0,729 |
1 |
|
|
|
|
|
|
1 |
Z2 Z1 Z1 |
0,081 |
0 |
1 |
1 |
|
|
|
|
01 |
Z1 Z2 Z1 |
0,081 |
0 |
1 |
0 |
|
|
|
|
010 |
Z2 Z2 Z1 |
0,081 |
0 |
0 |
1 |
|
|
|
|
001 |
Z1 Z1 Z2 |
0,009 |
0 |
0 |
0 |
1 |
1 |
|
|
00011 |
Z2 Z1 Z2 |
0,009 |
0 |
0 |
0 |
1 |
0 |
|
|
00010 |
Z1 Z2 Z2 |
0,009 |
0 |
0 |
0 |
0 |
1 |
|
|
00001 |
Среднее
число символов на блок равно 1,59; а на
букву − 0,53; что всего на 12% больше
энтропии. Теоретический минимум Н(Z)
= 0,47 может быть достигнут при кодировании
блоков, включающих бесконечное число
букв:
.
Следует подчеркнуть, что увеличение эффективности кодирования при укрупнении блоков, не связано с учетом все более далеких статистических связей, так как нами рассматривались алфавиты с некоррелированными буквами. Повышение эффективности определяется лишь тем, что набор вероятностей, получающийся при укрупнении блоков, можно делить на более близкие по суммарным вероятностям подгруппы.
Рассмотренная нами методика Шеннона—Фэно не всегда приводит к однозначному построению кода. Ведь при разбиении на подгруппы можно сделать большей по вероятности как верхнюю, так и нижнюю подгруппу.
Множество вероятностей, приведенных в таблице 3.5, можно было бы разбить иначе, например, так, как это показано в табл. 3.8.
Таблица 3.8.
Буквы |
Вероятности |
Ступени разбиения |
кодовые комбинации |
|||||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
||||
Z1 |
0,22 |
1 |
1 |
|
|
|
|
|
11 |
|
Z2 |
0,20 |
1 |
0 |
|
|
|
|
|
10 |
|
Z3 |
0,16 |
0 |
0 |
1 |
|
|
|
|
001 |
|
Z4 |
0,16 |
0 |
1 |
0 |
|
|
|
|
010 |
|
Z5 |
0,10 |
0 |
0 |
1 |
|
|
|
|
001 |
|
Z6 |
0,10 |
0 |
0 |
0 |
1 |
|
|
|
0001 |
|
Z7 |
0,04 |
0 |
0 |
0 |
0 |
1 |
|
|
00001 |
|
Z8 |
0,02 |
0 |
0 |
0 |
0 |
0 |
|
|
00000 |
|
При этом среднее число символов на букву оказывается равным 2,80. Таким образом, построенный код может оказаться не самым лучшим. При построении эффективных кодов с основанием m>2 неопределенность становится еще большей.
От указанного недостатка свободна методика Хаффмена. Она гарантирует однозначное построение кода с наименьшим для данного распределения вероятностей средним числом символов на букву.
