Skip to main content
QUICK REVIEW

[論文レビュー] Asymmetric numeral systems: entropy coding combining speed of Huffman coding with compression rate of arithmetic coding

Jarek Duda|arXiv (Cornell University)|Nov 11, 2013
Algorithms and Data Compression参考文献 6被引用数 131
ひとこと要約

本稿では、ハフマン符号化の高速性と算術符号化の圧縮効率を両立する新しいエントロピー符号化手法として、非対称数字システム(ANS)を導入する。状態に1つの自然数を使用し、記号の確率に基づいて桁の配置を再定義することで、ANSは理論的圧縮限界に非常に近い性能を達成する。同時に、デコード速度がハフマン符号化の約50%速くなるなど、著しく高速化されている。さらに、擬似乱数テーブル生成によって組み込み型のデータ暗号化が可能となる。

ABSTRACT

The modern data compression is mainly based on two approaches to entropy coding: Huffman (HC) and arithmetic/range coding (AC). The former is much faster, but approximates probabilities with powers of 2, usually leading to relatively low compression rates. The latter uses nearly exact probabilities - easily approaching theoretical compression rate limit (Shannon entropy), but at cost of much larger computational cost. Asymmetric numeral systems (ANS) is a new approach to accurate entropy coding, which allows to end this trade-off between speed and rate: the recent implementation [1] provides about $50\%$ faster decoding than HC for 256 size alphabet, with compression rate similar to provided by AC. This advantage is due to being simpler than AC: using single natural number as the state, instead of two to represent a range. Beside simplifying renormalization, it allows to put the entire behavior for given probability distribution into a relatively small table: defining entropy coding automaton. The memory cost of such table for 256 size alphabet is a few kilobytes. There is a large freedom while choosing a specific table - using pseudorandom number generator initialized with cryptographic key for this purpose allows to simultaneously encrypt the data. This article also introduces and discusses many other variants of this new entropy coding approach, which can provide direct alternatives for standard AC, for large alphabet range coding, or for approximated quasi arithmetic coding.

研究の動機と目的

  • エントロピー符号化における長年の速度と圧縮効率のトレードオフを解消すること。
  • 複雑な正規化と状態管理を回避する算術符号化の実用的代替案を開発すること。
  • 確率的状態遷移に基づく単一のフレームワークを用いて、同時にデータ圧縮と暗号化を実現すること。
  • ANSを暗号システムにおける軽量で非線形な構成要素として使用可能かどうかを検討すること。
  • ANSを一般用途のエントロピー符号化手法として、性能とセキュリティを調整可能な理論的・実用的基盤を提供すること。

提案手法

  • 算術符号化の2つの数値による範囲表現を置き換えるために、1つの自然数を状態として使用する。
  • 記号 s が状態 x を x′ ≈ x/p_s に遷移させる遷移ルールを定義し、情報量の増加が log(1/p_s) ビットに一致することを保証する。
  • 偶数と奇数の集合を記号の確率に応じて再定義し、密度が異なる均一な分布を構築する。
  • 事前に計算されたルックアップテーブルを用いて、状態から記号および次状態へのマッピングを定義することで、有限状態オートマトン(tANS)を構築する。
  • 暗号鍵で初期化された擬似乱数生成器を用いて、セキュアで鍵依存の符号化テーブルを生成する。
  • 範囲算術演算の代わりに、再正規化時にビットブロック転送を採用することで、実装を簡略化し、処理速度を向上させる。

実験結果

リサーチクエスチョン

  • RQ11つの状態を用いたエントロピー符号化方式は、シャノンエントロピーの理論限界に非常に近い圧縮率を達成しつつ、ハフマン符号化と同等のデコード速度を維持できるか?
  • RQ2情報理論的に最適な状態遷移ルールを設計するにはどうすればよいか? また、その実装を効率的に行うには?
  • RQ3鍵依存のテーブル生成によって、ANSがどれほど組み込み型のデータ暗号化を実現できるか?
  • RQ4符号化テーブルの初期化に擬似乱数生成器を用いる場合の、性能とセキュリティのトレードオフはどのようなものか?
  • RQ5適応的・文脈依存的・マルチアルファベット符号化システムへのANSの適用には、どのような変更が必要か?

主な発見

  • ANSは、算術符号化とほぼ同一の圧縮率を達成し、理論的シャノンエントロピー限界に非常に近い性能を示す。
  • 256記号アルファベットの場合、tANSのデコードはハフマン符号化よりも最大50%速く、単純な状態遷移とビットブロック処理のおかげである。
  • 2つの数値による範囲表現を1つの自然数状態に置き換えることで、計算複雑度が低減され、再正規化が簡素化される。
  • 符号化テーブルの初期化に擬似乱数生成器を用いることで、鍵依存の動作を有する同時圧縮・暗号化が可能になる。
  • ブロックインデックスをPRNGのシードとして用いることで、1つの鍵に対して複数の独立した符号化が可能となり、ブルートフォース攻撃に対する耐性が向上する。
  • 256記号アルファベット用のtANSテーブルは数キロバイトのメモリしか必要とせず、実世界への実装に実用的である。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。