Дан алфавит {A,B,C} с распределением вероятностей p(A)=0.7, p(B)=0.2, p(C)=0.1. Вычислите энтропию источника в битах, постройте оптимальный префиксный код (например, Хаффманом), оцените среднюю длину кода и избыточность по сравнению с энтропией; обсудите, когда арифметическое кодирование предпочтительнее и почему

5 Ноя в 13:53
4 +4
0
Ответы
1
- Энтропия источника:
H=−∑pilog⁡2pi=−(0.7log⁡20.7+0.2log⁡20.2+0.1log⁡20.1)≈1.1568 бит/символ. H=-\sum p_i\log_2 p_i=-\big(0.7\log_2 0.7+0.2\log_2 0.2+0.1\log_2 0.1\big)\approx 1.1568\ \text{бит/символ}.
H=pi log2 pi =(0.7log2 0.7+0.2log2 0.2+0.1log2 0.1)1.1568 бит/символ.

- Оптимальный префиксный (Хаффманов) код: объединяем B(0.2)B(0.2)B(0.2) и C(0.1)C(0.1)C(0.1) в узел 0.30.30.3, получаем код
A: 0,B: 10,C: 11. A:\;0,\qquad B:\;10,\qquad C:\;11.
A:0,B:10,C:11.

- Средняя длина кода:
L=0.7⋅1+0.2⋅2+0.1⋅2=1.3 бит/символ. L=0.7\cdot1+0.2\cdot2+0.1\cdot2=1.3\ \text{бит/символ}.
L=0.71+0.22+0.12=1.3 бит/символ.

- Избыточность по сравнению с энтропией:
R=L−H≈1.3−1.1568=0.1432 бит/символ, R=L-H\approx 1.3-1.1568=0.1432\ \text{бит/символ},
R=LH1.31.1568=0.1432 бит/символ,
эффективность H/L≈0.889H/L\approx 0.889H/L0.889 (≈88.9%). Утверждение для префиксных кодов: H≤L<H+1H\le L< H+1HL<H+1 — здесь выполняется.
- Когда арифметическое кодирование предпочтительнее и почему (кратко):
- Когда нужно приблизиться как можно ближе к энтропии, особенно для коротких блоков или при дробных средних длинах: арифметическое даёт «дробные» биты в среднем и может быть значительно лучше Хаффмана.
- При больших алфавитах или сильных неравномерностях распределения; при моделировании контекстов/адаптации (P меняется) арифметика эффективнее.
- Для блочного/потокового кодирования с точным учетом вероятностей и при желании минимизировать избыточность.
- Минусы: более сложная реализация, требования к точности (или использование range coding), потенциально медленнее, чувствительна к ошибкам; в простых случаях или где важна очень быстрая/простая реализация, Хаффман может быть предпочтительнее.
5 Ноя в 14:16
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир