私はデータ圧縮アルゴリズムとデータ圧縮の理論的限界について読んでいました。最近、私は「コンビナトリアルエントロピーエンコーディング」と呼ばれる圧縮方法に出会いました。この方法の主なアイデアは、ファイルで表現される文字、その頻度、およびこれらの文字順列のインデックスとしてファイルをエンコードすることです。
これらのドキュメントは、この方法の説明に役立つ場合があります。
https://arxiv.org/pdf/1703.08127
http://www-video.eecs.berkeley.edu/papers/vdai/dcc2003.pdf
https://www.thinkmind.org/download.php?articleid=ctrq_2014_2_10_70019
ただし、最初のドキュメントでは、この方法を使用して、シャノンの制限未満にテキストを圧縮できることを読みました(文字の頻度を保存するために必要なスペースとメタを保存するために必要なスペースを考慮しませんでした)ファイルのデータ)。私はそれについて考えましたが、この方法は非常に小さなファイルにはあまり効率的ではないことがわかりましたが、一方で、大きなファイルではうまく機能する可能性があります。実際、私はこのアルゴリズムやシャノンの限界を十分に理解していません。各文字の確率の合計に確率の逆数のを掛けたものだと知っています。
だから私はいくつか質問があります:
この圧縮方法は、実際にファイルをシャノンの制限よりも小さく圧縮しますか?
ファイルをシャノンの制限未満に圧縮する圧縮アルゴリズムはありますか(私が知る限り、この質問に対する答えはノーです)。
ファイルをシャノンの制限よりも小さく圧縮する圧縮方法はありますか?
コンビナトリアルエンコーディングが実際にシャノンの制限を超えてファイルを圧縮する場合、目的のファイルサイズに達するまで何度もファイルを圧縮することはできませんか?