Теория информации — это математическая теория, изучающая передачу, обработку и хранение информации. Она была основана Клодом Шенноном в 1948 году и стала фундаментом для развития цифровых технологий.
Информация — это мера неопределенности или "сюрприза" в сообщении. Чем менее вероятно событие, тем больше информации оно несет.
Представьте ситуацию: вы хотите передать сообщение через телеграф. Каждый символ стоит денег. Как минимизировать стоимость, не теряя информацию? Этот практический вопрос привел к рождению теории информации.
Рассмотрим два сообщения:
Какое сообщение несет больше информации? Очевидно, сообщение B, поскольку оно менее ожидаемо.
Количество информации в событии с вероятностью $p$ определяется как:
Энтропия — это мера неопределенности случайной величины, среднее количество информации, которое мы получаем при наблюдении исхода.
где $p_i$ — вероятность $i$-го исхода.
Кодирование — это процесс преобразования информации в последовательность символов для эффективной передачи или хранения.
Код — это правило соответствия между символами источника и кодовыми словами.
Длина кода — среднее количество символов, необходимых для кодирования сообщения.
Тип кода | Описание | Пример | Применение |
---|---|---|---|
Фиксированной длины | Все символы кодируются словами одинаковой длины | ASCII (8 бит на символ) | Простота реализации |
Переменной длины | Частые символы — короткие коды, редкие — длинные | Код Хаффмана | Сжатие данных |
Префиксный | Ни одно кодовое слово не является префиксом другого | Код Хаффмана | Однозначное декодирование |
Для любого источника с энтропией $H$ существует код со средней длиной $L$, такой что:
Это означает, что энтропия — это теоретический минимум средней длины кода.
Пусть у нас есть алфавит {A, B, C, D} с вероятностями:
Для префиксного кода с длинами кодовых слов $l_1, l_2, \ldots, l_n$ выполняется:
Взаимная информация между случайными величинами X и Y показывает, насколько знание одной переменной уменьшает неопределенность другой:
Условная энтропия $H(X|Y)$ — это средняя энтропия X при известном Y:
Алгоритм | Принцип | Сжатие | Применение |
---|---|---|---|
Хаффман | Переменная длина кода | Без потерь | Текстовые файлы |
LZ77 | Словарное сжатие | Без потерь | ZIP, GZIP |
JPEG | Дискретное косинусное преобразование | С потерями | Изображения |
MP3 | Психоакустическая модель | С потерями | Аудио |
Канал связи — это среда для передачи информации от источника к получателю. Характеризуется пропускной способностью и уровнем шума.
Простейшая модель канала с шумом, где каждый бит передается с вероятностью ошибки $p$.
Пропускная способность двоичного симметричного канала с вероятностью ошибки $p$:
где $H(p)$ — двоичная энтропийная функция.
Для любого канала с пропускной способностью $C$ и любой скорости передачи $R < C$ существуют коды, позволяющие передавать информацию с произвольно малой вероятностью ошибки.
Если $R > C$, то надежная передача невозможна.
Код, исправляющий ошибки — это способ кодирования, который позволяет обнаруживать и исправлять ошибки, возникающие при передаче или хранении данных.
Расстояние Хэмминга между двумя строками одинаковой длины — это количество позиций, в которых соответствующие символы различны.
Коды Хэмминга — это линейные коды, исправляющие одиночные ошибки.
Для исправления $t$ ошибок необходимо $d_{min} \geq 2t + 1$
Для честной монеты ($p = 0.5$) и $n = 100$ подбрасываний:
$I_{среднее} = 100 \cdot H(0.5) = 100 \cdot 1 = 100$ бит
Это означает, что результат содержит в среднем 100 бит информации.
Теория информации — это фундаментальная область математики, которая: