СЖАТИЕ ИНФОРМАЦИИ РАВНОМЕРНЫМ КОДОМ В СИСТЕМАХ ХРАНЕНИЯ И ОБРАБОТКИ ДАННЫХ
В. К. Трофимов
Сибирский государственный университет телекоммуникаций и информатики, 630102, Новосибирск, Россия УДК 621.391.1
Предложен алгоритм построения равномерного кода, доказана эффективность его применения в системах хранения и обработки данных. Проведено сравнение с неравномерным кодом.
Ключевые слова: кодирование, стоимость кодирования, энтропия, хранение и обработка информации, источник сообщений.
The algorithm of VB code performance is proposed. Efficiency of using it in data storage and data processing systems is proved. The comparison with BV code is performed.
Key words: source coding, channel capacity, data processing, data compression.
Введение. Данная работа посвящена исследованию вопросов сжатия информации равномерным кодом в системах хранения и обработки данных [1]. Сжатие информации используется при выявлении скрытой информации [2], в теории управления [3], а также при создании большемасштабных распределенных вычислительных систем [4]. В работе К. Шеннона [5] заложены основы теории сжатия информации, с помощью которой в дальнейшем получены различные алгоритмы устранения избыточности как при известной, так и при неизвестной статистике сообщений. Достаточно подробную библиографию по этому вопросу можно найти в [6].
В настоящей работе изучается вопрос о пословном сжатии информации блоками (словами одинаковой длины). Такое кодирование, называемое равномерным по выходу, является обобщением кодирования длин серий [7], характеризуется отсутствием бегущей ошибки синхронизации и удобно для последующего применения корректирующих кодов. Равномерное по выходу кодирование при известной статистике сообщений изучалось в работах [8-11], а при неизвестной статистике сообщений - в [12-14]. В частности, в [11] доказано, что при увеличении объема памяти равномерное по выходу кодирование известных марковских источников является более эффективным, чем равномерное по входу кодирование.
Цель настоящей работы - построить равномерный код, доказать его эффективность и сравнить с неравномерным кодом.
1. Основные определения и обозначения. Пусть буквы конечного входного алфавита A = {a1,...,ak}, 2 < к <<х> порождаются источником 9 независимо с вероятностями P9(ai ) = 0,- (i = 1, к), 91 + 92 +... + 9к = 1. В этом случае будем говорить, что 9 - бернуллиевский источник. Таким образом, каждый бернуллиевский источник 9 однозначно определяется неотрицательными числами 9,- > 0 (i = 1,к), сумма которых равна единице. Верно и обратное утверждение: любой набор чисел 9,
(i = 1, к), удовлетворяющий перечисленным выше условиям, однозначно определяет бернуллиевский источник. Множество слов, взятых в произвольном алфавите, называется префиксным, если никакое слово не является началом другого. Множество слов T , взятых в алфавите A, будем называть кодо-
Работа выполнена при финансовой поддержке Российского фонда фундаментальных исследований (код проекта 09-07-00095а) и Совета по грантам Президента РФ (грант № НШ-2121.2008.9).
вым, если оно является полным, конечным, префиксным. В этом случае произвольная полубесконечная последовательность букв входного алфавита, порождаемая источником, однозначно разбивается на последовательность слов из множества T . Согласно неравенству Мак-Милана - Крафта [15] наиболее общее из всех возможных дешифрируемых кодирований ф состоит в том, что полубесконечная последовательность букв, порождаемая источником, в соответствии с кодовым множеством T разбивается на слова, которые с помощью отображения ф переводятся в слова выходного алфавита B . Не уменьшая общности, алфавит B можно считать двоичным. При этом множество слов в выходном алфавите ф (T) = {ф(и),u е T} является префиксным.
Если длины всех слов некоторого множества C равны между собой, то говорят, что C состоит из блоков; в противном случае говорят, что С состоит из слов переменной длины. В зависимости от вида множеств T и ф (T) возможны следующие виды кодирований: кодирование, отображающее блоки в
слова переменной длины (обозначается bV); кодирование, отображающее слова переменной длины в блоки (обозначается Vb); кодирование, отображающее слова переменной длины в переменной длины (обозначается VV ); кодирование, отображающее блоки в слова одинаковой длины (обозначается bb ).
Ниже рассматриваются первые два типа кодирований. Если u - слово во входном алфавите, то число букв в слове u, обозначаемое через |u|, будем называть длиной слова u . Если T - множество слов в некотором алфавите, то ||T|| - число слов в T . Итак, любое кодирование ф полностью определяется тройкой (T , ф, ф (T)) . Пусть задано кодирование ф, которое является кодированием типа
с= bV, Vb . Среднее число букв выходного алфавита, приходящихся на одну букву входного алфавита при кодировании ф, будем называть стоимостью кодирования ф и обозначать Cc (T, 9, ф). Величина Cc (T, 9, ф) определяется равенством [8,15]
c (T, 9 ф)=§ p9(u )Wu), (1)
здесь и в дальнейшем P9 (u) - вероятность порождения слова u источником 9; d (T, 9) = §P9 (u)|u| -
ueT
средняя длина кодовых слов из T (если T = А , то d (T,9) = n). Через H (9) обозначим энтропию источника 9 . Для бернуллиевского источника 9 величина H (9) определяется равенством [5]
H (9) = -§9, log 9, ,
i=1
где logx = log2 x; 0log0 = 0 .
Эффективность кодирования ф оценивается разностью между стоимостью кодирования Co (T,9, ф), определяемой равенством (1), и энтропией источника H(9). Далее эта разность называется избыточностью кодирования ф и обозначается rc (T, 9, ф). Таким образом, по определению
r0 (T, 9, ф) = Cn (T, 9, ф)-H (9). Избыточностью универсального кодирования типа с для заданного множества источников QcQ0 и заданной сложности n будем называть величину Rc (n,Q) :
Rc(n, Q) = infsup Гс (T, 9, ф)
ф 9eQ
(нижняя грань берется по всем кодированиям ф, для которых ||T|| < к").
При известной статистике сообщений величина RbV (n,9) была изучена в [5], а величина Rn (n,9) изучалась в работах [8-11]. В [11] показано, что кодирование типа Vb для марковских источников с
памятью 5 при растущем 5 эффективнее кодирования bV, т. е. избыточность кодирования RVb (n,9) меньше избыточности кодирования RbV (n, 9). В [16] доказано, что для избыточности RbV (n, Q0) универсального равномерного по входу кодирования бернуллиевских источников Q0 имеет место асимптотическое равенство
ч к -1 log log II An II Rbv (n, Q0) ~ — log к ,f11 i. 11 . (2)
bvK 0) 2 ё log|| An ||
Отметим, что равенство (4) верно и в том случае, если множество Q0 заменить на любое множество QcQ0, которое имеет ненулевую меру Лебега. Универсальное кодирование типа Vb изучалось в [12-14].
В настоящей работе доказано существование последовательности кодирований фп типа Vb с областью определения Tn, таких что ||Tn|| < к", для которых избыточность rVb (Tn, 9, фп) при любом источнике 9 из Q0 стремится к нулю. Получена верхняя оценка избыточности в зависимости от мощности множества Tn .
Введем также следующие обозначения. Если u - произвольное слово во входном алфавите, то ti (u) (i = 1, к) - число вхождений буквы ai в слово u . Очевидно, что сумма всех чисел ti (u), i = 1, к равна длине слова u, т. е. t1 (u) +12 (u) +... + tk (u) = |и|. Вероятность слова u, порожденного источником 9 , находится по формуле
P) (u ) = И9^>. i=1
На множестве источников Q0 определим вероятностную меру [6] с плотностью
Г(к/2) к '
пк/ 2 Г^л/ёТ
1=1
Среднюю вероятность слова u по множеству источников Q0 с плотностью ю(9) обозначим Р (u) . Величина Р (u) определяется равенством
г Ггк/2) IT( (") + V2)
Р<"»= И9™")rf9 = Mrfl„| + Ч2) ' <3)
где Г( z) - гамма-функция числа z .
Квазиэнтропию слова u обозначим через F0 (u). По определению
. . t■ (u ) t. (u )
Fo(u) = -£-TTlo^~ni . (4)
1=1 \u\ u
Используя формулу Стирлинга в виде
logГ(z) =logV2n +1 z -1 |log| z -11 -zlogl + c(z) loge , (5)
®(9) = ' к
2 J ^ 2,
где (loge -1) / 2 < c(z)loge < (loge) / 2 , из (3)-(5) получаем
- log P (u ) = |u|F0 (u ) + к - 1 log\u\ + c (u ) . (6)
В (6) для постоянной c (u ) выполняются неравенства -1/2 < (с (u ) -1/2) log e < 0 .
2. Построение универсального равномерного по выходу кодирования и оценка его эффективности. Построим последовательность универсальных равномерных по выходу кодирований фп, таких что
lim sup гп (Тп, 9, фи ) = 0.
9еП0
Оценим скорость сходимости избыточности предложенного кодирования при заданном 9 еП0. Справедлива
Теорема 1. Существует последовательность универсальных Vb-кодов фп с областью определения Tn, ITH < k", такая что для любого источника 9 еП0 выполняется неравенство
V (T 9 ф ) <k±l 1о§d(T",9) +
vb T, 9, ф" )< 2 d (T", 9) + d (T", 9)
где ё (Тп,9) = ^ Р9(и)|и| - средняя задержка кодового множества Тп; с - постоянная, не завися-
иеТп
щая ни от 9, ни от Тп.
Доказательство. Сложность построения равномерного по выходу кодирования фп заключается в необходимости построения последовательности кодовых множеств Тп, являющихся областью опре-
B"
>
деления фп. Область значений ф(Тп) - наименьшее из множеств Вт, для которого
Опишем алгоритм построения Тп (п - произвольное натуральное число). В множество Тп будем включать все слова и в алфавите А, для которых выполнены следующие условия:
1) если и е Тп, то справедливо неравенство 1/Р (и) < кп;
2) если и е Тп, то существует значение а, е А , такое что имеет место соотношение Р (uaj ) > кп. В силу полноты Тп справедливо равенство ^ Р (и) = 1, поэтому, умножив обе части соотноше-
иеТп
ния в условии 1 на Р(и) / кп и просуммировав по всем и из Тп, получаем
кп >||Тп||. (7)
При оптимальном УЬ -кодировании фп для любого слова и из Тп имеем
|фп (и)| = ] 1С8|ТЛ[ .
Следовательно, избыточность г (Тп, 9, фп) кодирования фп для источника 9 вычисляется по формуле
г (Тп, 9, фп ) = ^ТТТ0) - Н (9). (8)
С учетом (7) из (8) следует
г(тп!в,фп)=м-я(9)<ёТ9)-Н(в)+ё(тЬ). ®
Заметим, что в силу определения Р (и) (см. (3)) и условия 2 для любого слова и из Тп существует значение а, е А , такое что выполняется неравенство
( 1 ^ Г, (и)
~ТТ II -> кп.
уР(и)) \и\ +1 + к/2
С учетом того, что tj (и) > 1, из этого неравенства и (9) следует
X Ре(")(n log к)
Т eV ^ — 1 ыеТ„ -ж--»- /лч 1
'(т-,еф><"nd(т.,en) -н(е)+dcmie)s
-X ре (u ) log P (u ) X ре(u ) log (IU + к/2 + l) + 1
<—-—---н (еи^--—--. (10)
d (т.,e) w d(т.,e) v 7
В силу (6) из (10) получаем
- (т., е, ф. )<X Ре(и )| UF0 (u ) - Н (е)+—С—+ ^ ä d(т.,е.) ^ ; d(т.,е)
(11)
имеем
+к-1 X р°(")log| |u|+р»(" )iog он+к, 2+1)
+ 2 d (т., е) + d (т. , е) •
Согласно тождеству Вальда [17] для любого j = 1, к справедливо равенство
X Ре(") (" ) = d (т., е)е j.
Используя неравенство Иенсена для функции -x log x и определение квазиэнтропии F0 (u) ,
X Ре (u ) |u|F0 (u )< H (е) .
Кроме того, применяя неравенство Иенсена для функции log x , заключаем, что
X Ре( u ) log |u| < log d (T., е) .
"eТn
С учетом двух последних неравенств из (11) следует
- (т е ф ) <—log d T,е) + C U, 2 d(т.,е) d(т.,ф.,е).
Теорема доказана.
Замечание. При любом значении ееО0 величина d (T., е) стремится к бесконечности при
. ^да, поэтому из теоремы 1 следует, что для произвольного источника е избыточность кодирования стремится к нулю, т. е. предложенное кодирование является оптимальным для любого источника е из Q0.
3. Формулировка и доказательство основного утверждения. Докажем вспомогательное утверждение.
Лемма. Для последовательности кодовых множеств Т., . = 1,2,..., построенных при доказательстве теоремы 1, и произвольного источника ееО0, такого что H (е)>5>0, справедливо равенство d (T.,е) = log |lT.ll /[H (е) + а. (е)], где а. (е) ^ 0 при .^да. Доказательство. Очевидно, что
d (T.,е)> min\u\,
V . ' ueT. 1 1
где величина minu стремится к бесконечности при . ^да. Поскольку при x ^да функция
ueT.
(log x) / x является убывающей, из теоремы 1 следует неравенство
к +1
- (т., е, ф.) <-log min u /min u + C / min u .
2 ueTn ueT. ueT.
Правая часть последнего неравенства не зависит от 9, а это означает, что при n ^<х> r (Tn, 9, фп ) стремится к нулю равномерно по 9 .
Используя определение r (Tn, 9, фп ) и теорему о связи предела и бесконечно малых величин, имеем
S - H (9) = a(n ).
где а(n) - бесконечно малая величина при n ^<х>. Отсюда получаем
d(T 9) logT^ d (n,9) = H (9) + a(n) .
Лемма доказана.
Перейдем к формулировке и доказательству основного результата работы.
Теорема 2. Cуществует последовательность кодирований фп с областью определения Tn, ||Tn||< kn, n = 1,2,..., такая что избыточность rVB(Tn,9,фп) кодирования фп для произвольного источника 9eQ0 удовлетворяет неравенству
V n 9) < k21 H И1^ (' + 0®)
0 (1) ^ 0 равномерно по 9 при n ^<х>.
Доказательство. Из теоремы 1 и доказанной выше леммы следует
[(k +1) / 2]log (log {II Г„||/(H (0) + a(n))}) + C
r( '' 4M/[H(^(n)] •
После преобразований получаем
rф,9)к+1 [H(9) + a(n)]logloglМ-(H(9) + a<n)) + (Н(9) + a(n»C . (12)
1 -Vn- ' 2 L w 1 '] log||t,| logЦгn|| ' '
Так как H(9) < logk , то функция [H(9) + a(n)]log[H(9) + a(n)] по абсолютной величине не
превышает (1 + log k)log (1 + log k) , поэтому из соотношения (12) следует неравенство
rVB ((, ф, , 9) if1 H (1+0 (,)),
где 0 (1) ^ 0 равномерно по 9. Теорема доказана.
Следствие. При выполнении неравенства Н (9) /к^к < (к - 1)/(к +1) равномерное по выходу кодирование эффективнее равномерного по входу кодирования.
Доказательство. При фиксированном источнике 9 еП0 избыточность равномерного по входу кодирования, как доказано в теореме 2, стремится к нулю со скоростью
—н(9)^а, (13)
2 К ' ИМ ' ' '
а равномерное по входу кодирование стремится к нулю со скоростью, которая согласно (2) равна
к -1, 10£НГ!
—^"нтГ (14)
При фиксированном ., если H (е) ^ 0 , то величина (13) также стремится к нулю, при этом величина (14) является постоянной. Следовательно, для источников, энтропия которых мала, равномерное по выходу кодирование всегда эффективнее равномерного по входу. Сравнение (13) и (14) показывает, что при выполнении неравенства H(е)/logк < (к- 1)/(к +1) предложенное кодирование эффективнее BV -кодирования. Следствие доказано.
Список литературы
1. Бабкин В. Ф. и др. Опыт применения бортовой информационно-вычислительной системы для обработки данных и управления экспериментом "Интернок" // Космич. исслед. 1986. Т. 24, № 2. С. 210-216.
2. Жилкин М. Ю., Меленцова Н. А., Рябко Б. Я. Методы выявления скрытой информации, базирующейся на сжатии данных // Вычисл. технологии. 2007. Т. 12. С. 26-31.
3. Петров Б. Н., Добрушин Р. Л., Пинскер М. С. и др. О некоторых взаимосвязях теории информации и теории управления // Пробл. управления и теории информации. 1976. Т. 5, № 1. С. 31-38.
4. Хорошевский В. Г. Архитектура вычислительных систем. М.: МГТУ им. Н. Э. Баумана, 2005.
5. Шеннон К. Математическая теория связи: Работы по теории информации и кибернетике. М.: ИИЛ, 1963. С. 243-332.
6. Krichevsky R. E., Trofimov V. K. The performance of universal encoding // IEEE Trans. Inform. Theory. 1981. V. 27, N 2. P. 199-207.
7. Блох Э. Л. О передаче бинарной последовательности равномерным кодом // Пробл. передачи информ. 1960. Вып. 5. С. 12-22.
8. Jelinek F., Shneider К. On variable - length to block coding // IEEE Trans. Inform. Theory. 1972. V. 18, N 6. P. 756-774.
9. Трофимов В. К. Эффективное кодирование блоками слов различной длины, порожденных известным марковским источником // Обработка информации в системах связи. Л.: ЛЭИС, 1985. С. 9-15.
10. Ziv J. Variable-to-fixed length codes are better than fixed-to-variable length codes for Marcov sources // IEEE Trans. Inform. Theory. 1990. V. 36, N 4. P. 861-863.
11. Трофимов В. К. Универсальное равномерное по выходу кодирование бернуллиевских источников // Методы дискретного анализа в теории кодов и схем. Новосибирск: Институт математики СО АН СССР, 1976. Вып. 29. С. 87-99.
12. Lawrence Т. С. А new universal coding scheme for codig binary memoryless source // IEEE Trans. Inform. Theory. 1977. V. 23, N 4. P. 446-472.
13. Штарьков Ю. М. Равномерное по выходу универсальное кодирование дискретных источников без памяти // Пробл. передачи информ. 1991. Т. 27, № 1. С. 3-13.
14. Галлагер Р. Теория информации и надежная связь. М.: Сов. радио, 1974.
15. Ходак Г. Л. Оценки избыточности при пословном кодировании сообщений, порождаемых бернуллиев-ским источником // Пробл. передачи информ. 1972. Т. 8, № 2. С. 21-32.
16. Кричевский Р. Е. Связь между избыточностью кодирования и достоверностью сведений об источнике // Пробл. передачи информ. 1968. Т. 4, № 3. С. 48-57.
17. Боровков А. А. Курс теории вероятностей. М.: Наука, 1972.
Трофимов Виктор Куприянович - проф., д-р техн. наук, декан факультета информатики и вычислительной техники, зав. кафедрой высшей математики Сибирского государственного университета телекоммуникаций и информатики; тел.: (383) 269-82-70; e-mail: [email protected]
Дата поступления - 05.10.09