Список литературы /References
1. Бень Е. Модели и любительские суда на воздушной подушке: Пер. с польск. Л.: Судостроение, 1983.
2. Демешко Г. Ф. «Устройство и оборудование судов на воздушной подушке». Учебное пособие. Л.: Изд. ЛКИ, 1980.
3. ЗлобинГ.П., СимоновЮ.А. Суда на воздушной подушке/ Л.: Судостроение, 1974.
4. Колызаев Б.А., Косорукое А.И., Литвиненко В.А. Справочник по проектированию судов с динамическими принципами поддержания. Л.: Судостроение, 1980.
ОСОБЕННОСТИ ПОСТРОЕНИЯ АЛГОРИТМОВ ЭНТРОПИЙНОГО
КОДИРОВАНИЯ Гарнышев И.Н.1, Казанцев С.В.2, Мальков Р.Ю.3, Семенов И.Д.4, Юдин С.В.5 Email: Garnyshev1160@scientifictext.ru
1 Гарнышев Игорь Николаевич - сетевой инженер, отдел администрирования сетей передачи данных,
Тинькофф Банк; 2Казанцев Сергей Владимирович - главный инженер, департамент сетей передачи данных, Сбербанк;
3Мальков Роман Юрьевич - эксперт, Центр компетенций по облачным решениям, Техносерв, г. Москва;
4Семенов Иван Дмитриевич - старший инженер, департамент сетей передачи данных, Servers.com Лимассол, Кипр; 5Юдин Степан Вячеславович - администратор сети, департамент технического обеспечения и развития инфраструктуры информационных систем,
Спортмастер, г. Москва
Аннотация: в статье проведен анализ принципов энтропийного кодирования. Разработаны основы методологии кодирования дискретного информационного источника. Предложены алгоритмы определения условной энтропии и общего количества информации после обработки данных дискретного источника. Разработана схема определения диапазона значений ожидаемой длины для символьного набора дискретного источника. Показано, что разработанную методологию можно использовать для построения алгоритмов кодирования Хаффмана, арифметического кодирования и универсального кодирования. Ключевые слова: дискретный информационный источник, функция вероятности, условная энтропия, общее количества информации, символьный блок, ожидаемая длина, неравенство Крафта-Макмиллана.
PECULIARITIES OF THE ENTROPY CODING ALGORITHMS'
DEVELOPMENT
Garnyshev I.N.1, Kazantsev S.V.2, Malkov R.Yu.3, Semenov I.D.4, Iudin S.V.5
1Garnyshev Igor Nikolaevich - Network Engineer, DATA NETWORK ADMINISTRATION DEPARTMENT, TINKOFF BANK;
2Kazantsev Sergei Vladimirovich - Senior Engineer, NETWORK DEPARTMENT, SBERBANK;
Malkov Roman Yurevich - Expert, CLOUD SOLUTIONS DEPARTMENT, TECHNOSERV CLOUD, MOSCOW;
4Semenov Ivan Dmitrievich - Senior Engineer, NETWORK DEPARTMENT, SERVERS.COMLIMASSOL, CYPRUS; 5Iudin Stepan Vyacheslavovich - Network Administrator, DEPARTMENT OF TECHNICAL SUPPORT AND INFORMATION SYSTEMS INFRASTRUCTURE
DEVELOPMENT, SPORTMASTER, MOSCOW
Abstract: the article includes analysis of the principles of entropy coding. The basics of the coding methodology for a discrete information source are developed. Algorithms for determining the conditional entropy and the mutual information of the discrete source processed data are proposed. The scheme of the expected length values range determining for a code string of a discrete source is developed. It is shown that the developed methodology can be used to develop Huffman coding, arithmetic coding and universal coding algorithms.
Keywords: discrete information source, probability function, conditional entropy, mutual information, code string, expected length, Kraft inequality.
УДК 004.627
Введение
На сегодняшний день математические модели кодирования данных широко используются в системах передачи и хранения информации. Информация при этом может быть представлена в цифровых форматах с использованием символов и алфавитов, которые при построении обобщенной методологии следует рассматривать в самом широком смысле. Таким образом, выбор способа представления информации соответствует процессу кодирования и является наиболее важным аспектом разрабатываемой теории, а также соответствующего математического аппарата.
При анализе современных исследований, проведенных в рамках данной темы, были рассмотрены основы кодирования дискретного информационного источника [1, 2] и, в частности, понятие энтропии и т.н. источники без памяти [1, 3-5]. Были рассмотрены методы построения математического аппарата на базе понятий условной вероятности и условной энтропии [6-10], а также общего количества информации источника [11].
Тем не менее, в качестве нерешенной части общей задачи рассмотрено задание по разработке комплексной методологии кодирования дискретного информационного источника, что было предложено в качестве цели данного исследования, для чего требуется построить алгоритмы определения условной энтропии и общего количества информации после обработки данных дискретного источника, а также схему определения диапазона значений ожидаемой длины для символьного набора дискретного источника.
1. Определение энтропии дискретного источника
Дискретным информационным источником (discrete information source) называется устройство или процесс, набор выходных значений которого представляет множество объектов, которые могут быть определены в рамках конечного алфавита А, состоящего из конечного множества {х ¡} элементов [1, 2]:
(А = {xj
lie [1;/Г
(1)
В том случае, когда множество элементов информационного источника достаточно велико, можно определить вероятность определения каждого из элементов X,принадлежащих множеству {х;} конечного алфавита А через соответствующую функцию распределения вероятности Р(х;) или вектор вероятности рр (рис. 1).
На основе множества {х;} и функции распределения вероятности Р (х;) может быть вычислена функция энтропии Н (X) (рис. 2), которая определяет количество информации, соответствующее переменой:
I
tf(;0 = -^/(X;)lOg2(P(X;)).
1 = 1
(2)
Рис. 1. Базовый алгоритм определения энтропии дискретного источника Из чего можно вывести область значений функции энтропии как:
Н(Х) £ [0; log2(/)].
(3)
0,6
CD
Рис. 2. График зависимости энтропии от функции вероятности по X
Таким образом, можно отметить, что значения, которые принимает функция энтропии как количества информации, что в случае использования двоичного логарифма представляется в битах, всегда неотрицательны, причем минимальное и максимальное значение Н (X) определяются в соответствии со следующими условиями:
" Н (X) = Hmin = 0 при Р (х0 = 1
1 (4)
Нтах = 1 0 g2(0 при РСО = у для V I
Для дальнейшего развития математической модели энтропии дискретного источника необходимо ограничить анализ источниками выходные значения, которых являются независимыми [1, 3-5], т.е. источниками без памяти (memoryless source), но при этом характеризуются одним распределением вероятности (IID: Independent Identically Distributed).
0 -I-1-1-1-1-t-1-1-1
0 25 50 75 100
Р, %
Рис. 3. График зависимости энтропии от функции вероятности для источников без памяти с
одинаково распределенными выходами
Функцию энтропии для источников без памяти с одинаково распределенными выходами, где пределы функции распределения определяются величиной р можно записать как (рис. 3):
[HUD (Р) = - (р log р + (1 - р) log(l - р)) I Р Е [р; 1 - р] 1 ;
Как можно видеть, данный график является симметричным с максимумом при р = 0, 5 (соответственно Р = 0 , 5 ), где Н, ,D(P) = 1 .
При кодировании информации зачастую бывает актуальным представлять код в виде серий (runs) идентичных элементов (например, при двоичном кодировании — в виде серий «0» или «1»). На основе данных серий можно сформировать конечный алфавит, элементы которого определяют длину серии, как .
Дальнейшее развитие математического аппарата подразумевает введение понятия условной энтропии (conditional entropy), которая определяется через условную вероятность [6-10]. Пусть у нас есть две случайные переменные X и Y, что принимают значения из наборов конечных алфавитов и соответственно.
В таком случае условная энтропия определяется как:
1 1
H(Y\X) = - £ ■ logP(y^) ■ (6)
¿ = 1 7 = 1
Расписав функцию Р(хi,y{) через Р(уi | х {) и используя неравенство Дженсена для произведения , которое представляет собой вогнутую функцию,
получим:
H(Y\X) = -£р(дгг)£р(уг |дгг)-1о8Р(уг|дгг)
¿=1 7=1 H(Y\X) > H(Y\X)
(7)
Данный подход, представленный системой уравнений и неравенств (7), может применяться для любого количества переменных (рис. 4):
(P&i. .....W = РС^жаджад,^) ...p(xN\x1,x2.....
I н(хъ х2.....xN) = ВД) + н(хм + ■■■ + H(XN\X1,X2.....
(8)
Рис. 4. Базовый алгоритм определения условной энтропии
Алгоритм, представленный на рис. 4, можно рассматривать как частный случай применения цепного правила (chain rule) для определения условной энтропии. Рассматриваемый подход позволяет выразить общий объем информации как сумму информационных вкладов от отдельной переменной в том случае, когда известны значения предыдущих переменных {Х-^Х . . . Хп _ х }. Данный алгоритм является эффективным инструментом математического анализа в том случае, когда переменные Хп не являются независимыми.
2. Схема определения общего количества информации источника
Выражения, полученные для расчета условной вероятности и условной энтропии, позволяют ввести понятие общего количества информации (mutual information). Так, для пары случайных переменных и , которые принимают значения из наборов конечных алфавитов и общее количество информации
определяется как [1, 11]:
X, У]
I(X;Y) = ^ ^ Р(х,у) logl
Р(у |х).
Р(у)
X=Xty=yj
I(X;Y) = H (Y) -H(Y\X) I(X; Y) = H(X) - H(X\Y)
(9)
Исходя из представлений об условной энтропии систему уравнений (8) можно также дополнить следующим набором условий:
I(X; Y) > О l(X; Y) = I (Y; X)
(10)
причем в том случае, когда и независимы, и, и, значит,
достигают максимально возможного значения ( и , соответственно).
Соответственно, используя цепное правило для определения условной энтропии, можно получить выражение для общего количества информации, которое позволяет оперировать произвольным количеством переменных:
НУ-.Xi.....Xn) = J(Y-X1) + J(Y-X2\X1) + -+J(Y-Xn\X1,X2.....Хп_г) (И)
На основе (8) и (10) можно вывести формулу для энтропии двух переменных, как функции от энтропии каждой из переменной и общего количества информации:
Н{Х, Y) = Н(Х) + H(Y) - l(X; Y)
(12)
Полученные уравнения позволяют доказать, что при обработке дискретного источника общее количество информации не увеличивается (рис. 5).
Рис. 5. Алгоритм определения общего количества информации после обработки данных дискретного
информационного источника
Пусть 2 — процесс обработки У и, таким образом, связана с X только через У. Тогда 1(Х;2\У) = 0, а /(X; У|2) > 0. Соответственно, при обработке У общее количество информации /(X, У) не увеличивается /(X; Т) < /(X; У).
3. Обобщенный алгоритм кодирования дискретного источника
Для практического применения разработанной математической модели на базе понятия энтропии дискретного источника необходимо рассматривать анализ символьных блоков. Если отдельный информационный элемент состоит из N бинарных символов, то представление о нем можно составить через N ■ Н. Процесс анализа символьных блоков дискретного информационного источника будет называться кодирование источника (source coding).
Рассмотрим символьный набор бинарных элементов X01, представленный множеством символов { х 0 1 } для ¿б[1;/] , каждый из которых определяется длиной 1(х01). Для символьного набора можно определить значение ожидаемой длины [1, 2, 12]:
N
Их01) = ^ р^Жх?1) (13)
¿=1
Далее в рамках развития модели предлагается использовать неравенство Крафта-Макмиллана, которое даёт необходимое условие существования разделимых и префиксных кодов, обладающих заданным набором длин кодовых слов:
/ / ^2~l(xi1) < 1 -> 'S^2lm~Kxi1) < 2lm , (14)
¿=1 ¿=1
где 1т — максимальная длина символьного набора. Полученное неравенство выводится на основе того если строка имеет длину I (х°1 ) , из условия префикса следует, что ни одно из 21т~1 (х1 ^ не содержится в коде, а два расширения разных строк кода никогда не равны, так как это также нарушило бы условие префикса.
Рассмотрим тот случай, когда значение 1 о щР (х° -1) представлено целыми числами и соответственно может быть принято как эквивалент длины I(х°-1). В таком случае неравенство Крафта-Макмиллана переходит в равенство и, таким образом, значение ожидаемой длины соответствует значению энтропии (рис. 6).
Рис. 6. Схема определения ожидаемой длины для целого Iод Р(х?^
Для расширения диапазона допустимых значений 1 ощР (х°1) необходимо ввести понятие [1 о щР(х°1)] как округление 1 о щР(х°1) до ближайшего целого числа (рис. 7), т.е. из системы уравнений и неравенств:
/(х?1) = [- 1од Р(х?1)] < - 1од Р(х?1) + 1
1од-
Р(х?1)
1 1 V ( 2 ~11
(15)
и системы неравенств:
Р(х101)
I I
1о,д^
(16)
2~Ч < О
можно получить:
Н(Х01) <Ъ< Н(Х01) + 1
(17)
/(xf1) = [-logP(^1)lS:-logP(XP1) + l
H(X01)-i
z^^U-j)
♦
1^1 ■ Неравенства Крафта-Макмнллана и Иенсена
log^T 2 h < 0 i
I +
HQC01) < L < Я(Х01) + 1
Рис. 7. Схема определения диапазона значений ожидаемой длины
Построенная обобщенная модель кодирования дискретного источника может быть использована при построении алгоритмов на основе методов кодирования Хаффмана и арифметического кодирования, в частности арифметического кодирования с конечной точностью и арифметического декодирования. Выводы
В результате проведенного анализа были разработаны основы методологии кодирования дискретного информационного источника. В частности были предложены:
• базовый алгоритм определения условной энтропии;
• алгоритм определения общего количества информации после обработки данных дискретного источника;
• обобщенная схема определения диапазона значений ожидаемой длины для символьного набора дискретного источника.
Данную методологию можно использовать для разработки алгоритмов кодирования Хаффмана, арифметического кодирования и универсального кодирования.
Список литературы /References
1. Csiszär I., & Körner J., 2015. Information theory: Coding theorems for discrete memoryless systems. Cambridge: Cambridge University Press.
2. McEliece R.J., 2004. The theory of information and coding. Cambridge: Cambridge University Press.
3. Zhong Y., Alajaji F. & Campbell L.L., 2007. Error Exponents for Asymmetric Two-User Discrete Memoryless Source-Channel Systems. 2007 IEEE International Symposium on Information Theory. doi:10.1109/ isit.2007.4557472.
4. Haghighat J., Hamouda W. & Soleymani M., 2006. Random Binning and Turbo Source Coding for Lossless Compression of Memoryless Sources. IEEE Vehicular Technology Conference. doi:10.1109/vtcf.2006.366.
5. Sungkar M. & Berger T., 2018. Discrete Reconstruction Alphabets in Discrete Memoryless Source Rate-Distortion Pblems., 2018 IEEE International Symposium on Information Theory (ISIT). doi:10.1109/isit.2018.8437835.
6. Bissiri P. & Walker S., 2018. A Definition of Conditional Probability with Non-Stochastic Information. Entropy, 20 (8), 572. doi:10.3390/e20080572.
7. Gu Y.H. & Wu W.M., 2011. DDoS Detection and Prevention Based on Joint Entropy and Conditional Entropy. Key Engineering Materials, 474-476, 2129-2133. doi:10.4028/www.scientific.net/kem.474-476.2129.
8. Yan K., 2015. Conditional entropy and fiber entropy for amenable group actions. Journal of Differential Equations, 259(7), 3004-3031. doi:10.1016/j.jde.2015.04.013.
9. Patil G., 2013. Conditional Entropy ProfilesBased in part on the article "Conditional entropy profiles" by G. P. Patil, which appeared in the Encyclopedia of Environmetrics. Encyclopedia of Environmetrics. doi:10.1002/9780470057339.val005m.pub2.
10. Zhou X., 2016. A formula of conditional entropy and some applications. Discrete and Continuous Dynamical Systems, 36(7), 4063-4075. doi:10.3934/dcds.2016.36.4063.
11. Zen, Q. & Wang J., 2017. Information Landscape and Flux, Mutual Information Rate Decomposition and Entropy Production. doi:10.20944/preprints201710.0067.v1.
12. Wiegand T. & Schwarz H., 2011. Source coding: Part I of fundamentals of source and video coding. Boston: Now.
13.Moffat A., 2016. Huffman Coding. Encyclopedia of Algorithms, 938-942. doi:10.1007/978-1-4939-2864-4_633.
14. Tamir D., 2018. Delta-Huffman Coding of Unbounded Integers. 2018 Data Compression Conference. doi:10.1109/dcc.2018.00081.
15. Salman N.H., 2016. New Image Compression/Decompression Technique Using Arithmetic Coding Algorithm. Journal of Zankoy Sulaimani - Part A, 19(1), 263-272. doi:10.17656/jzs.10604.
16.Al-Rababaa A., Laval C.U. & Dube D., 2015. A finite-precision adaptation of bit recycling to arithmetic coding. 2015 IEEE International Symposium on Signal Processing and Information Technology (ISSPIT). doi:10.1109/isspit.2015.7394382.